Skip to content

Commit 8c8fe37

Browse files
committed
Fix e2e test while combining data from multiple maintenaces wia single parsed data
1 parent 9586d47 commit 8c8fe37

File tree

3 files changed

+18
-10
lines changed

3 files changed

+18
-10
lines changed
Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
[
2-
{
1+
{
32
"stamp": 1612172014
4-
}
5-
]
3+
}

tests/unit/test_e2e.py

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -463,12 +463,11 @@
463463
Lumen,
464464
[
465465
("html", Path(dir_path, "data", "lumen", "lumen8.html")),
466-
# (EMAIL_HEADER_DATE, Path(dir_path, "data", "date", "email_date_1")),
466+
(EMAIL_HEADER_DATE, Path(dir_path, "data", "date", "email_date_1")),
467467
(EMAIL_HEADER_SUBJECT, Path(dir_path, "data", "lumen", "subject_work_planned")),
468468
],
469469
[
470470
Path(dir_path, "data", "lumen", "lumen8_result.json"),
471-
# Path(dir_path, "data", "date", "email_date_1_result.json"),
472471
],
473472
),
474473
# Megaport
@@ -823,7 +822,7 @@
823822
)
824823
def test_provider_get_maintenances(
825824
provider_class, test_data_files, result_parse_files
826-
): # pylint: disable=too-many-locals
825+
): # pylint: disable=too-many-locals,too-many-branches
827826
"""End to End tests for various Providers."""
828827
extended_data = provider_class.get_extended_data()
829828
default_maintenance_data = {"uid": "0", "sequence": 1, "summary": ""}
@@ -849,10 +848,18 @@ def test_provider_get_maintenances(
849848
for result_parse_file in result_parse_files:
850849
with open(result_parse_file, encoding="utf-8") as res_file:
851850
partial_result_data = json.load(res_file)
852-
if not expected_result:
851+
852+
# TODO: Tests assume that maintenances (multiple) will be discovered on the first parser
853+
if not expected_result and isinstance(partial_result_data, list):
853854
expected_result = partial_result_data
855+
856+
if expected_result and isinstance(partial_result_data, dict):
857+
for _ in range(len(expected_result)):
858+
expected_result[0].update(partial_result_data)
854859
else:
855-
expected_result[0].update(partial_result_data[0])
860+
assert len(expected_result) == len(expected_result)
861+
for i, _ in enumerate(partial_result_data):
862+
expected_result[i].update(partial_result_data[i])
856863

857864
for result in expected_result:
858865
temp_res = result.copy()

tests/unit/test_parsers.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -549,7 +549,10 @@ def test_parsers(parser_class, raw_file, results_file):
549549
with open(results_file, encoding="utf-8") as res_file:
550550
expected_result = json.load(res_file)
551551

552-
assert parsed_notifications == expected_result
552+
if parser_class == EmailDateParser:
553+
assert parsed_notifications == [expected_result]
554+
else:
555+
assert parsed_notifications == expected_result
553556

554557

555558
@pytest.mark.parametrize("parser_class", [ICal, EmailDateParser, HtmlParserZayo1, SubjectParserZayo1])

0 commit comments

Comments
 (0)