mirror of https://github.com/ARMmbed/mbed-os.git
Assert that reduce depth works and parameterize over path sep
parent
3db03a77d5
commit
d94776f909
|
@ -20,6 +20,7 @@ import json
|
|||
|
||||
import pytest
|
||||
|
||||
import tools.memap
|
||||
from tools.memap import MemapParser
|
||||
from copy import deepcopy
|
||||
|
||||
|
@ -137,7 +138,7 @@ def memap_parser():
|
|||
return memap_parser
|
||||
|
||||
|
||||
def generate_test_helper(memap_parser, format, depth, file_output=None):
|
||||
def generate_test_helper(memap_parser, format, depth, sep, file_output=None):
|
||||
"""
|
||||
Helper that tests that the member variables "modules" is
|
||||
unchanged after calling "generate_output"
|
||||
|
@ -147,17 +148,21 @@ def generate_test_helper(memap_parser, format, depth, file_output=None):
|
|||
:param format: the file type to output
|
||||
:param file_output: the file to output to
|
||||
"""
|
||||
|
||||
old_modules = deepcopy(memap_parser.modules)
|
||||
|
||||
tools.memap.sep = sep
|
||||
memap_parser.generate_output(format, depth, file_output=file_output)
|
||||
|
||||
assert memap_parser.modules == old_modules,\
|
||||
"generate_output modified the 'modules' property"
|
||||
|
||||
for file_name in memap_parser.short_modules:
|
||||
assert(len(file_name.split(tools.memap.sep)) <= depth)
|
||||
|
||||
|
||||
@pytest.mark.parametrize("depth", [1, 2, 20])
|
||||
def test_report_computed(memap_parser, depth):
|
||||
@pytest.mark.parametrize("sep", ["\\", "/"])
|
||||
def test_report_computed(memap_parser, depth, sep):
|
||||
"""
|
||||
Test that a report and summary are computed
|
||||
|
||||
|
@ -165,7 +170,7 @@ def test_report_computed(memap_parser, depth):
|
|||
:param depth: the detail of the output
|
||||
"""
|
||||
|
||||
memap_parser.generate_output('table', depth)
|
||||
memap_parser.generate_output('table', depth, sep)
|
||||
|
||||
# Report is created after generating output
|
||||
assert memap_parser.mem_summary
|
||||
|
@ -173,17 +178,19 @@ def test_report_computed(memap_parser, depth):
|
|||
|
||||
|
||||
@pytest.mark.parametrize("depth", [1, 2, 20])
|
||||
def test_generate_output_table(memap_parser, depth):
|
||||
@pytest.mark.parametrize("sep", ["\\", "/"])
|
||||
def test_generate_output_table(memap_parser, depth, sep):
|
||||
"""
|
||||
Test that an output of type "table" can be generated correctly
|
||||
:param memap_parser: Mocked parser
|
||||
:param depth: the detail of the output
|
||||
"""
|
||||
generate_test_helper(memap_parser, 'table', depth)
|
||||
generate_test_helper(memap_parser, 'table', depth, sep)
|
||||
|
||||
|
||||
@pytest.mark.parametrize("depth", [1, 2, 20])
|
||||
def test_generate_output_json(memap_parser, tmpdir, depth):
|
||||
@pytest.mark.parametrize("sep", ["\\", "/"])
|
||||
def test_generate_output_json(memap_parser, tmpdir, depth, sep):
|
||||
"""
|
||||
Test that an output of type "json" can be generated correctly
|
||||
:param memap_parser: Mocked parser
|
||||
|
@ -191,13 +198,14 @@ def test_generate_output_json(memap_parser, tmpdir, depth):
|
|||
:param depth: the detail of the output
|
||||
"""
|
||||
file_name = str(tmpdir.join('output.json').realpath())
|
||||
generate_test_helper(memap_parser, 'json', depth, file_name)
|
||||
generate_test_helper(memap_parser, 'json', depth, sep, file_name)
|
||||
assert isfile(file_name), "Failed to create json file"
|
||||
json.load(open(file_name))
|
||||
|
||||
|
||||
@pytest.mark.parametrize("depth", [1, 2, 20])
|
||||
def test_generate_output_csv_ci(memap_parser, tmpdir, depth):
|
||||
@pytest.mark.parametrize("sep", ["\\", "/"])
|
||||
def test_generate_output_csv_ci(memap_parser, tmpdir, depth, sep):
|
||||
"""
|
||||
Test ensures that an output of type "csv-ci" can be generated correctly
|
||||
|
||||
|
@ -206,5 +214,5 @@ def test_generate_output_csv_ci(memap_parser, tmpdir, depth):
|
|||
:param depth: the detail of the output
|
||||
"""
|
||||
file_name = str(tmpdir.join('output.csv').realpath())
|
||||
generate_test_helper(memap_parser, 'csv-ci', depth, file_name)
|
||||
generate_test_helper(memap_parser, 'csv-ci', depth, sep, file_name)
|
||||
assert isfile(file_name), "Failed to create csv-ci file"
|
||||
|
|
Loading…
Reference in New Issue