Skip to content

Commit bbbc038

Browse files
committed
Update tests for the new MD renderer
Empty __init__.py and unused fixtures/files are removed. The new test only verifies the download url. The acutual render process is done in the browser.
1 parent 0a8a8b0 commit bbbc038

File tree

3 files changed

+12
-48
lines changed

3 files changed

+12
-48
lines changed

tests/extensions/md/__init__.py

Whitespace-only changes.

tests/extensions/md/files/invalid.md

-76.6 KB
Binary file not shown.

tests/extensions/md/test_renderer.py

Lines changed: 12 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
import os
2+
23
import pytest
34

45
from mfr.core.provider import ProviderMetadata
56
from mfr.extensions.md import MdRenderer
67

78

89
@pytest.fixture
9-
def metadata():
10+
def provider_metadata():
1011
return ProviderMetadata('test', '.md', 'text/plain', '1234', 'http://wb.osf.io/file/test.md?token=1234')
1112

1213

@@ -15,10 +16,6 @@ def test_md_file_path():
1516
return os.path.join(os.path.dirname(os.path.abspath(__file__)), 'files', 'test.md')
1617

1718

18-
@pytest.fixture
19-
def invalid_md_file_path():
20-
return os.path.join(os.path.dirname(os.path.abspath(__file__)), 'files', 'invalid.md')
21-
2219
@pytest.fixture
2320
def url():
2421
return 'http://osf.io/file/test.md'
@@ -35,51 +32,18 @@ def export_url():
3532

3633

3734
@pytest.fixture
38-
def renderer(metadata, test_md_file_path, url, assets_url, export_url):
39-
return MdRenderer(metadata, test_md_file_path, url, assets_url, export_url)
35+
def mock_renderer(provider_metadata, test_md_file_path, url, assets_url, export_url):
36+
return MdRenderer(provider_metadata, test_md_file_path, url, assets_url, export_url)
4037

4138

4239
class TestMdRenderer:
4340

44-
def test_render_md_file_required(self, renderer):
45-
assert renderer.file_required is True
46-
47-
def test_render_md_cache_result(self, renderer):
48-
assert renderer.cache_result is True
49-
50-
def test_render_md(self, test_md_file_path, assets_url, export_url):
51-
metadata = ProviderMetadata('test', '.md', 'text/plain', '1234', 'http://wb.osf.io/file/test.md?token=1234')
52-
renderer = MdRenderer(metadata, test_md_file_path, url, assets_url, export_url)
53-
body = renderer.render()
54-
inbody = """
55-
<h1>Heading</h1>
56-
<h2>Sub-heading</h2>
57-
<h3>Another deeper heading</h3>
58-
<p>Paragraphs are separated
59-
by a blank line.</p>
60-
<p>Leave 2 spaces at the end of a line to do a<br />
61-
line break</p>
62-
<p>Text attributes <em>italic</em>, <strong>bold</strong>,
63-
<code>monospace</code>.</p>
64-
<p>A <a href="http://example.com">link</a>.
65-
[28]</p>
66-
<p>Shopping list:</p>
67-
<ul>
68-
<li>apples</li>
69-
<li>oranges</li>
70-
<li>pears</li>
71-
</ul>
72-
<p>Numbered list:</p>
73-
<ol>
74-
<li>apples</li>
75-
<li>oranges</li>
76-
<li>pears</li>
77-
</ol>
78-
<p>The rain---not the reign---in
79-
Spain.</p>
80-
<p>&lt;script&gt;
81-
alert("Hello world");
82-
&lt;/script&gt;</p>
83-
"""
84-
assert inbody in body
41+
def test_render_md_file_required(self, mock_renderer):
42+
assert mock_renderer.file_required is True
43+
44+
def test_render_md_cache_result(self, mock_renderer):
45+
assert mock_renderer.cache_result is True
8546

47+
def test_render_md(self, mock_renderer):
48+
body = mock_renderer.render()
49+
assert mock_renderer.metadata.download_url in body

0 commit comments

Comments
 (0)