##// END OF EJS Templates
Fixes small things pointed out by @minrk
Jonathan Frederic -
Show More
@@ -1,35 +1,36 b''
1 1 """
2 2 Module with tests for the coalescestreams transformer
3 3 """
4 4
5 5 #-----------------------------------------------------------------------------
6 6 # Copyright (c) 2013, the IPython Development Team.
7 7 #
8 8 # Distributed under the terms of the Modified BSD License.
9 9 #
10 10 # The full license is in the file COPYING.txt, distributed with this software.
11 11 #-----------------------------------------------------------------------------
12 12
13 13 #-----------------------------------------------------------------------------
14 14 # Imports
15 15 #-----------------------------------------------------------------------------
16 16
17 17 from .base import TransformerTestsBase
18 18 from ..coalescestreams import coalesce_streams
19 19
20 20
21 21 #-----------------------------------------------------------------------------
22 22 # Class
23 23 #-----------------------------------------------------------------------------
24 24
25 25 class TestCoalesceStreams(TransformerTestsBase):
26 26 """Contains test functions for coalescestreams.py"""
27 27
28 28 def test_coalesce_streams(self):
29 29 """coalesce_streams transformer output test"""
30 30 nb, res = coalesce_streams(self.build_notebook(), self.build_resources())
31 self.assertEqual(nb.worksheets[0].cells[0].outputs[0].text, "a")
32 self.assertEqual(nb.worksheets[0].cells[0].outputs[1].output_type, "text")
33 self.assertEqual(nb.worksheets[0].cells[0].outputs[2].text, "cd")
34 self.assertEqual(nb.worksheets[0].cells[0].outputs[3].text, "ef")
31 outputs = nb.worksheets[0].cells[0].outputs
32 self.assertEqual(outputs[0].text, "a")
33 self.assertEqual(outputs[1].output_type, "text")
34 self.assertEqual(outputs[2].text, "cd")
35 self.assertEqual(outputs[3].text, "ef")
35 36 No newline at end of file
@@ -1,39 +1,45 b''
1 1 """
2 2 Module with tests for the csshtmlheader transformer
3 3 """
4 4
5 5 #-----------------------------------------------------------------------------
6 6 # Copyright (c) 2013, the IPython Development Team.
7 7 #
8 8 # Distributed under the terms of the Modified BSD License.
9 9 #
10 10 # The full license is in the file COPYING.txt, distributed with this software.
11 11 #-----------------------------------------------------------------------------
12 12
13 13 #-----------------------------------------------------------------------------
14 14 # Imports
15 15 #-----------------------------------------------------------------------------
16 16
17 17 from .base import TransformerTestsBase
18 18 from ..csshtmlheader import CSSHTMLHeaderTransformer
19 19
20 20
21 21 #-----------------------------------------------------------------------------
22 22 # Class
23 23 #-----------------------------------------------------------------------------
24 24
25 25 class TestCSSHTMLHeader(TransformerTestsBase):
26 26 """Contains test functions for csshtmlheader.py"""
27 27
28 def test_constructor(self):
29 """Can a CSSHTMLHeaderTransformer be constructed?"""
28
29 def build_transformer(self):
30 """Make an instance of a transformer"""
30 31 transformer = CSSHTMLHeaderTransformer()
31 32 transformer.enabled = True
32 33 return transformer
34
35
36 def test_constructor(self):
37 """Can a CSSHTMLHeaderTransformer be constructed?"""
38 self.build_transformer()
33 39
34 40
35 41 def test_output(self):
36 42 """Test the output of the CSSHTMLHeaderTransformer"""
37 nb, res = self.test_constructor()(self.build_notebook(), self.build_resources())
43 nb, res = self.build_transformer()(self.build_notebook(), self.build_resources())
38 44 assert 'inlining' in res
39 45 assert 'css' in res['inlining'] No newline at end of file
@@ -1,56 +1,62 b''
1 1 """
2 2 Module with tests for the extractoutput transformer
3 3 """
4 4
5 5 #-----------------------------------------------------------------------------
6 6 # Copyright (c) 2013, the IPython Development Team.
7 7 #
8 8 # Distributed under the terms of the Modified BSD License.
9 9 #
10 10 # The full license is in the file COPYING.txt, distributed with this software.
11 11 #-----------------------------------------------------------------------------
12 12
13 13 #-----------------------------------------------------------------------------
14 14 # Imports
15 15 #-----------------------------------------------------------------------------
16 16
17 17 from .base import TransformerTestsBase
18 18 from ..extractoutput import ExtractOutputTransformer
19 19
20 20
21 21 #-----------------------------------------------------------------------------
22 22 # Class
23 23 #-----------------------------------------------------------------------------
24 24
25 25 class TestExtractOutput(TransformerTestsBase):
26 26 """Contains test functions for extractoutput.py"""
27 27
28 def test_constructor(self):
29 """Can a ExtractOutputTransformer be constructed?"""
28
29 def build_transformer(self):
30 """Make an instance of a transformer"""
30 31 transformer = ExtractOutputTransformer()
31 32 transformer.enabled = True
32 33 return transformer
34
35
36 def test_constructor(self):
37 """Can a ExtractOutputTransformer be constructed?"""
38 self.build_transformer()
33 39
34 40
35 41 def test_output(self):
36 42 """Test the output of the ExtractOutputTransformer"""
37 nb, res = self.test_constructor()(self.build_notebook(), self.build_resources())
43 nb, res = self.build_transformer()(self.build_notebook(), self.build_resources())
38 44
39 45 # Check if text was extracted.
40 46 assert 'text_filename' in nb.worksheets[0].cells[0].outputs[1]
41 47 text_filename = nb.worksheets[0].cells[0].outputs[1]['text_filename']
42 48
43 49 # Check if png was extracted.
44 50 assert 'png_filename' in nb.worksheets[0].cells[0].outputs[6]
45 51 png_filename = nb.worksheets[0].cells[0].outputs[6]['png_filename']
46 52
47 53 # Make sure an entry to the resources was added.
48 54 assert 'outputs' in res
49 55
50 56 # Verify text output
51 57 assert text_filename in res['outputs']
52 58 self.assertEqual(res['outputs'][text_filename], 'b')
53 59
54 60 # Verify png output
55 61 assert png_filename in res['outputs']
56 62 self.assertEqual(res['outputs'][png_filename], 'g')
@@ -1,43 +1,48 b''
1 1 """
2 2 Module with tests for the latex transformer
3 3 """
4 4
5 5 #-----------------------------------------------------------------------------
6 6 # Copyright (c) 2013, the IPython Development Team.
7 7 #
8 8 # Distributed under the terms of the Modified BSD License.
9 9 #
10 10 # The full license is in the file COPYING.txt, distributed with this software.
11 11 #-----------------------------------------------------------------------------
12 12
13 13 #-----------------------------------------------------------------------------
14 14 # Imports
15 15 #-----------------------------------------------------------------------------
16 16
17 17 from .base import TransformerTestsBase
18 18 from ..latex import LatexTransformer
19 19
20 20
21 21 #-----------------------------------------------------------------------------
22 22 # Class
23 23 #-----------------------------------------------------------------------------
24 24
25 25 class TestLatex(TransformerTestsBase):
26 26 """Contains test functions for latex.py"""
27 27
28 def test_constructor(self):
29 """Can a LatexTransformer be constructed?"""
28
29 def build_transformer(self):
30 """Make an instance of a transformer"""
30 31 transformer = LatexTransformer()
31 32 transformer.enabled = True
32 33 return transformer
33
34
35 def test_constructor(self):
36 """Can a LatexTransformer be constructed?"""
37 self.build_transformer()
38
34 39
35 40 def test_output(self):
36 41 """Test the output of the LatexTransformer"""
37 nb, res = self.test_constructor()(self.build_notebook(), self.build_resources())
42 nb, res = self.build_transformer()(self.build_notebook(), self.build_resources())
38 43
39 44 # Make sure the code cell wasn't modified.
40 45 self.assertEqual(nb.worksheets[0].cells[0].input, '$ e $')
41 46
42 47 # Verify that the markdown cell was processed.
43 48 self.assertEqual(nb.worksheets[0].cells[1].source, '$e$')
@@ -1,93 +1,88 b''
1 1 """
2 2 Module with tests for the revealhelp transformer
3 3 """
4 4
5 5 #-----------------------------------------------------------------------------
6 6 # Copyright (c) 2013, the IPython Development Team.
7 7 #
8 8 # Distributed under the terms of the Modified BSD License.
9 9 #
10 10 # The full license is in the file COPYING.txt, distributed with this software.
11 11 #-----------------------------------------------------------------------------
12 12
13 13 #-----------------------------------------------------------------------------
14 14 # Imports
15 15 #-----------------------------------------------------------------------------
16 16
17 17 from IPython.nbformat import current as nbformat
18 18
19 19 from .base import TransformerTestsBase
20 20 from ..revealhelp import RevealHelpTransformer
21 21
22 22
23 23 #-----------------------------------------------------------------------------
24 24 # Class
25 25 #-----------------------------------------------------------------------------
26 26
27 27 class Testrevealhelp(TransformerTestsBase):
28 28 """Contains test functions for revealhelp.py"""
29 29
30 30 def build_notebook(self):
31 31 """Build a reveal slides notebook in memory for use with tests.
32 32 Overrides base in TransformerTestsBase"""
33 33
34 34 outputs = [nbformat.new_output(output_type="stream", stream="stdout", output_text="a")]
35 35
36 36 slide_metadata = {'slideshow' : {'slide_type': 'slide'}}
37 37 subslide_metadata = {'slideshow' : {'slide_type': 'subslide'}}
38 38
39 39 cells=[nbformat.new_code_cell(input="", prompt_number=1, outputs=outputs),
40 40 nbformat.new_text_cell('markdown', source="", metadata=slide_metadata),
41 41 nbformat.new_code_cell(input="", prompt_number=2, outputs=outputs),
42 42 nbformat.new_text_cell('markdown', source="", metadata=slide_metadata),
43 43 nbformat.new_text_cell('markdown', source="", metadata=subslide_metadata)]
44 44 worksheets = [nbformat.new_worksheet(name="worksheet1", cells=cells)]
45 45
46 46 return nbformat.new_notebook(name="notebook1", worksheets=worksheets)
47 47
48 def test_constructor(self):
49 """Can a RevealHelpTransformer be constructed?"""
48
49 def build_transformer(self):
50 """Make an instance of a transformer"""
50 51 transformer = RevealHelpTransformer()
51 52 transformer.enabled = True
52 53 return transformer
54
55
56 def test_constructor(self):
57 """Can a RevealHelpTransformer be constructed?"""
58 self.build_transformer()
53 59
54 60
55 61 def test_reveal_attribute(self):
56 62 """Make sure the reveal url_prefix resources is set"""
57 nb, res = self.test_constructor()(self.build_notebook(), self.build_resources())
63 nb, res = self.build_transformer()(self.build_notebook(), self.build_resources())
58 64 assert 'reveal' in res
59 65 assert 'url_prefix' in res['reveal']
60 66
61 67
62 68 def test_reveal_output(self):
63 69 """Make sure that the reveal transformer """
64 nb, res = self.test_constructor()(self.build_notebook(), self.build_resources())
70 nb, res = self.build_transformer()(self.build_notebook(), self.build_resources())
65 71 cells = nb.worksheets[0].cells
66 72
67 73 # Make sure correct metadata tags are available on every cell.
68 assert 'slide_type' in cells[0].metadata
69 assert 'align_type' in cells[0].metadata
70
71 assert 'slide_type' in cells[1].metadata
72 assert 'align_type' in cells[1].metadata
73
74 assert 'slide_type' in cells[2].metadata
75 assert 'align_type' in cells[2].metadata
76
77 assert 'slide_type' in cells[3].metadata
78 assert 'align_type' in cells[3].metadata
79
80 assert 'slide_type' in cells[4].metadata
81 assert 'align_type' in cells[4].metadata
74 for cell in cells:
75 assert 'slide_type' in cell.metadata
76 assert 'align_type' in cell.metadata
82 77
83 78 # Make sure slide end is only applied to the cells preceeding slide
84 79 # cells.
85 80 assert 'slide_helper' not in cells[1].metadata
86 81
87 82 # Verify 'slide-end'
88 83 assert 'slide_helper' in cells[0].metadata
89 84 self.assertEqual(cells[0].metadata['slide_helper'], 'slide_end')
90 85 assert 'slide_helper' in cells[2].metadata
91 86 self.assertEqual(cells[2].metadata['slide_helper'], 'slide_end')
92 87 assert 'slide_helper' in cells[3].metadata
93 88 self.assertEqual(cells[3].metadata['slide_helper'], 'subslide_end')
@@ -1,49 +1,55 b''
1 1 """
2 2 Module with tests for the sphinx transformer
3 3 """
4 4
5 5 #-----------------------------------------------------------------------------
6 6 # Copyright (c) 2013, the IPython Development Team.
7 7 #
8 8 # Distributed under the terms of the Modified BSD License.
9 9 #
10 10 # The full license is in the file COPYING.txt, distributed with this software.
11 11 #-----------------------------------------------------------------------------
12 12
13 13 #-----------------------------------------------------------------------------
14 14 # Imports
15 15 #-----------------------------------------------------------------------------
16 16
17 17 from .base import TransformerTestsBase
18 18 from ..sphinx import SphinxTransformer
19 19
20 20
21 21 #-----------------------------------------------------------------------------
22 22 # Class
23 23 #-----------------------------------------------------------------------------
24 24
25 25 class TestSphinx(TransformerTestsBase):
26 26 """Contains test functions for sphinx.py"""
27 27
28 def test_constructor(self):
29 """Can a SphinxTransformer be constructed?"""
28
29 def build_transformer(self):
30 """Make an instance of a transformer"""
30 31 transformer = SphinxTransformer()
31 32 transformer.enabled = True
32 33 return transformer
34
35
36 def test_constructor(self):
37 """Can a SphinxTransformer be constructed?"""
38 self.build_transformer()
33 39
34 40
35 41 def test_resources(self):
36 42 """Make sure the SphinxTransformer adds the appropriate resources to the
37 43 resources dict."""
38 nb, res = self.test_constructor()(self.build_notebook(), self.build_resources())
44 nb, res = self.build_transformer()(self.build_notebook(), self.build_resources())
39 45 assert 'sphinx' in res
40 46 assert "author" in res['sphinx']
41 47 assert "version" in res['sphinx']
42 48 assert "release" in res['sphinx']
43 49 assert "date" in res['sphinx']
44 50 assert "chapterstyle" in res['sphinx']
45 51 assert "outputstyle" in res['sphinx']
46 52 assert "centeroutput" in res['sphinx']
47 53 assert "header" in res['sphinx']
48 54 assert "texinputs" in res['sphinx']
49 55 assert "pygment_definitions" in res['sphinx']
@@ -1,82 +1,87 b''
1 1 """
2 2 Module with tests for the svg2pdf transformer
3 3 """
4 4
5 5 #-----------------------------------------------------------------------------
6 6 # Copyright (c) 2013, the IPython Development Team.
7 7 #
8 8 # Distributed under the terms of the Modified BSD License.
9 9 #
10 10 # The full license is in the file COPYING.txt, distributed with this software.
11 11 #-----------------------------------------------------------------------------
12 12
13 13 #-----------------------------------------------------------------------------
14 14 # Imports
15 15 #-----------------------------------------------------------------------------
16 16
17 17 from IPython.testing import decorators as dec
18 18 from IPython.nbformat import current as nbformat
19 19
20 20 from .base import TransformerTestsBase
21 21 from ..svg2pdf import SVG2PDFTransformer
22 22
23 23
24 24 #-----------------------------------------------------------------------------
25 25 # Class
26 26 #-----------------------------------------------------------------------------
27 27
28 28 class Testsvg2pdf(TransformerTestsBase):
29 29 """Contains test functions for svg2pdf.py"""
30 30
31 31 simple_svg = """<?xml version="1.0" encoding="UTF-8" standalone="no"?>
32 32 <!-- Created with Inkscape (http://www.inkscape.org/) -->
33 33 <svg
34 34 xmlns:svg="http://www.w3.org/2000/svg"
35 35 xmlns="http://www.w3.org/2000/svg"
36 36 version="1.0"
37 37 x="0.00000000"
38 38 y="0.00000000"
39 39 width="500.00000"
40 40 height="500.00000"
41 41 id="svg2">
42 42 <defs
43 43 id="defs4" />
44 44 <g
45 45 id="layer1">
46 46 <rect
47 47 width="300.00000"
48 48 height="300.00000"
49 49 x="100.00000"
50 50 y="100.00000"
51 51 style="opacity:1.0000000;fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:8.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-dashoffset:0.00000000;stroke-opacity:1.0000000"
52 52 id="rect5719" />
53 53 </g>
54 54 </svg>"""
55 55
56 56 def build_notebook(self):
57 57 """Build a reveal slides notebook in memory for use with tests.
58 58 Overrides base in TransformerTestsBase"""
59 59
60 60 outputs = [nbformat.new_output(output_type="svg", output_svg=self.simple_svg)]
61 61
62 62 slide_metadata = {'slideshow' : {'slide_type': 'slide'}}
63 63 subslide_metadata = {'slideshow' : {'slide_type': 'subslide'}}
64 64
65 65 cells=[nbformat.new_code_cell(input="", prompt_number=1, outputs=outputs)]
66 66 worksheets = [nbformat.new_worksheet(name="worksheet1", cells=cells)]
67 67
68 68 return nbformat.new_notebook(name="notebook1", worksheets=worksheets)
69 69
70 70
71 def test_constructor(self):
72 """Can a SVG2PDFTransformer be constructed?"""
71 def build_transformer(self):
72 """Make an instance of a transformer"""
73 73 transformer = SVG2PDFTransformer()
74 74 transformer.enabled = True
75 75 return transformer
76
76
77
78 def test_constructor(self):
79 """Can a SVG2PDFTransformer be constructed?"""
80 self.build_transformer()
81
77 82
78 83 @dec.onlyif_cmds_exist('inkscape')
79 84 def test_output(self):
80 85 """Test the output of the SVG2PDFTransformer"""
81 nb, res = self.test_constructor()(self.build_notebook(), self.build_resources())
86 nb, res = self.build_transformer()(self.build_notebook(), self.build_resources())
82 87 assert 'svg' in nb.worksheets[0].cells[0].outputs[0]
General Comments 0
You need to be logged in to leave comments. Login now