summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJeppe Pihl <jpihl08@gmail.com>2014-10-06 10:35:33 +0200
committerJeppe Pihl <jpihl08@gmail.com>2014-10-06 10:35:33 +0200
commitbd0b5f19426148f0ead0c70e564d1b301da7fc53 (patch)
tree2ce09422e261f3e9b2e466cd0df97b298bca3a34 /tests
parenta05d4b0f6f9928c5760130dfdf52b3e59cc50e76 (diff)
parent376f62970ff7b9276c77ef74e915bced88f5a212 (diff)
downloadsphinx-bd0b5f19426148f0ead0c70e564d1b301da7fc53.tar.gz
merge
Diffstat (limited to 'tests')
-rw-r--r--tests/root/includes.txt16
-rw-r--r--tests/roots/test-directive-code/lineno_match.rst17
-rw-r--r--tests/roots/test-directive-code/lineno_start.rst6
-rw-r--r--tests/roots/test-directive-code/linenos.rst6
-rw-r--r--tests/test_directive_code.py78
5 files changed, 122 insertions, 1 deletions
diff --git a/tests/root/includes.txt b/tests/root/includes.txt
index e84cec06..907b81e9 100644
--- a/tests/root/includes.txt
+++ b/tests/root/includes.txt
@@ -71,6 +71,22 @@ Literalinclude options
:tab-width: 8
:language: python
+.. cssclass:: inc-pyobj-lines-match
+.. literalinclude:: literal.inc
+ :pyobject: Foo
+ :lineno-match:
+
+.. cssclass:: inc-lines-match
+.. literalinclude:: literal.inc
+ :lines: 6-7,8
+ :lineno-match:
+
+.. cssclass:: inc-startend-match
+.. literalinclude:: literal.inc
+ :start-after: coding: utf-8
+ :end-before: class Foo
+ :lineno-match:
+
Test if dedenting before parsing works.
.. highlight:: python
diff --git a/tests/roots/test-directive-code/lineno_match.rst b/tests/roots/test-directive-code/lineno_match.rst
new file mode 100644
index 00000000..f1e9cf15
--- /dev/null
+++ b/tests/roots/test-directive-code/lineno_match.rst
@@ -0,0 +1,17 @@
+Literal Includes with Line Numbers Matching
+===========================================
+
+.. literalinclude:: literal.inc
+ :language: python
+ :pyobject: Bar
+ :lineno-match:
+
+.. literalinclude:: literal.inc
+ :language: python
+ :lines: 6,7,8-9
+ :lineno-match:
+
+.. literalinclude:: literal.inc
+ :language: python
+ :start-after: pass
+ :lineno-match:
diff --git a/tests/roots/test-directive-code/lineno_start.rst b/tests/roots/test-directive-code/lineno_start.rst
new file mode 100644
index 00000000..1beaabbf
--- /dev/null
+++ b/tests/roots/test-directive-code/lineno_start.rst
@@ -0,0 +1,6 @@
+Literal Includes with Line Numbers Starting from 200
+====================================================
+
+.. literalinclude:: literal.inc
+ :language: python
+ :lineno-start: 200
diff --git a/tests/roots/test-directive-code/linenos.rst b/tests/roots/test-directive-code/linenos.rst
new file mode 100644
index 00000000..2f64498d
--- /dev/null
+++ b/tests/roots/test-directive-code/linenos.rst
@@ -0,0 +1,6 @@
+Literal Includes with Line Numbers
+==================================
+
+.. literalinclude:: literal.inc
+ :language: python
+ :linenos:
diff --git a/tests/test_directive_code.py b/tests/test_directive_code.py
index 3f0a6d3f..c4fb829d 100644
--- a/tests/test_directive_code.py
+++ b/tests/test_directive_code.py
@@ -96,10 +96,86 @@ def test_literal_include_dedent(app, status, warning):
@with_app('html', testroot='directive-code')
+def test_literal_include_linenos(app, status, warning):
+ app.builder.build(['linenos'])
+ html = (app.outdir / 'linenos.html').text()
+ linenos = (
+ '<td class="linenos"><div class="linenodiv"><pre>'
+ ' 1\n'
+ ' 2\n'
+ ' 3\n'
+ ' 4\n'
+ ' 5\n'
+ ' 6\n'
+ ' 7\n'
+ ' 8\n'
+ ' 9\n'
+ '10\n'
+ '11\n'
+ '12\n'
+ '13</pre></div></td>')
+ assert linenos in html
+
+
+@with_app('html', testroot='directive-code')
+def test_literal_include_lineno_start(app, status, warning):
+ app.builder.build(['lineno_start'])
+ html = (app.outdir / 'lineno_start.html').text()
+ linenos = (
+ '<td class="linenos"><div class="linenodiv"><pre>'
+ '200\n'
+ '201\n'
+ '202\n'
+ '203\n'
+ '204\n'
+ '205\n'
+ '206\n'
+ '207\n'
+ '208\n'
+ '209\n'
+ '210\n'
+ '211\n'
+ '212</pre></div></td>')
+ assert linenos in html
+
+
+@with_app('html', testroot='directive-code')
+def test_literal_include_lineno_match(app, status, warning):
+ app.builder.build(['lineno_match'])
+ html = (app.outdir / 'lineno_match.html').text()
+ pyobject = (
+ '<td class="linenos"><div class="linenodiv"><pre>'
+ ' 9\n'
+ '10\n'
+ '11</pre></div></td>')
+
+ assert pyobject in html
+
+ lines = (
+ '<td class="linenos"><div class="linenodiv"><pre>'
+ '6\n'
+ '7\n'
+ '8\n'
+ '9</pre></div></td>')
+ assert lines in html
+
+ start_after = (
+ '<td class="linenos"><div class="linenodiv"><pre>'
+ ' 9\n'
+ '10\n'
+ '11\n'
+ '12\n'
+ '13</pre></div></td>')
+ assert start_after in html
+
+
+@with_app('html', testroot='directive-code')
def test_literalinclude_caption_html(app, status, warning):
app.builder.build('index')
html = (app.outdir / 'caption.html').text()
- caption = '<div class="code-block-caption">caption <strong>test</strong> py</div>'
+ caption = ('<div class="code-block-caption">'
+ 'caption <strong>test</strong> py'
+ '</div>')
assert caption in html