Skip to content

Commit b936ef9

Browse files
authored
Merge pull request #349 from NLeSC/fix-coverage-api-docs
update test to expect the output of a new version of sphinx
2 parents 2772376 + ab72989 commit b936ef9

File tree

1 file changed

+25
-3
lines changed

1 file changed

+25
-3
lines changed

tests/test_project.py

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import os
22
import subprocess
3+
import sys
34
from sys import platform
45
from typing import Sequence
56

@@ -107,6 +108,8 @@ def test_generate_api_docs(baked_with_development_dependencies, project_env_bin_
107108
assert (project_dir / 'docs' / '_build' / 'html' / 'index.html').exists()
108109

109110

111+
@pytest.mark.skipif(sys.version_info < (3, 9), reason=
112+
"requires python 3.9 or higher, see https://github.com/NLeSC/python-template/pull/347#issuecomment-1710684574")
110113
def test_coverage_api_docs(baked_with_development_dependencies, project_env_bin_dir):
111114
project_dir = baked_with_development_dependencies
112115
bin_dir = project_env_bin_dir
@@ -116,9 +119,28 @@ def test_coverage_api_docs(baked_with_development_dependencies, project_env_bin_
116119
assert 'build succeeded' in result.stdout
117120
coverage_file = project_dir / 'docs' / '_build' / 'coverage' / 'python.txt'
118121
coverage_file_lines = coverage_file.read_text('utf8').splitlines()
119-
expected = ['Undocumented Python objects',
120-
'===========================']
121-
assert coverage_file_lines == expected
122+
# Coverage file lines should look globally like:
123+
# ['Undocumented Python objects',
124+
# '===========================',
125+
# '',
126+
# 'Statistics',
127+
# '----------',
128+
# '',
129+
# '+-----------------------------+----------+--------------+',
130+
# '| Module | Coverage | Undocumented |',
131+
# '+=============================+==========+==============+',
132+
# '| my_python_package | 100.00% | 0 |',
133+
# '+-----------------------------+----------+--------------+',
134+
# '| my_python_package.my_module | 100.00% | 0 |',
135+
# '+-----------------------------+----------+--------------+',
136+
# '| TOTAL | 100.00% | 0 |',
137+
# '+-----------------------------+----------+--------------+',
138+
# ''
139+
# ]
140+
# The package coverage lines change order between runs, so we test for each data row individually:
141+
assert '| my_python_package | 100.00% | 0 |' in coverage_file_lines
142+
assert '| my_python_package.my_module | 100.00% | 0 |' in coverage_file_lines
143+
assert '| TOTAL | 100.00% | 0 |' in coverage_file_lines
122144

123145

124146
def test_doctest_api_docs(baked_with_development_dependencies, project_env_bin_dir):

0 commit comments

Comments
 (0)