diff --git a/vasl_templates/webapp/data/vehicles/american.json b/vasl_templates/webapp/data/vehicles/american.json index 35d8558..98f21d1 100644 --- a/vasl_templates/webapp/data/vehicles/american.json +++ b/vasl_templates/webapp/data/vehicles/american.json @@ -145,13 +145,13 @@ }, { "name": "M10 GMC", "CS#": 7, - "capabilities2": { "A": [ [5,"A4"], [6,5], "\u20201" ], "s": [ [5,5] ], "sP": 5 }, + "capabilities2": { "A": [ [5,"A4E"], [6,"5E"], "\u20201" ], "s": [ [5,5] ], "sP": 5 }, "note_number": "23\u2020", "notes": [ "A\u20201", "N", "Y" ] }, { "name": "M18 GMC", "CS#": 6, - "capabilities2": { "A": [ [5,4], [6,5], "\u20201" ], "s": [ [5,5] ], "sP": 5 }, + "capabilities2": { "A": [ [5,"4E"], [6,"5E"], "\u20201" ], "s": [ [5,5] ], "sP": 5 }, "note_number": "24\u2020", "notes": [ "A\u20201" ] }, diff --git a/vasl_templates/webapp/tests/fixtures/data/vehicles/american.json b/vasl_templates/webapp/tests/fixtures/data/vehicles/american.json new file mode 100644 index 0000000..1f475ac --- /dev/null +++ b/vasl_templates/webapp/tests/fixtures/data/vehicles/american.json @@ -0,0 +1,16 @@ +[ + +{ "name": "M10 GMC", + "CS#": 7, + "capabilities2": { "A": [ [5,"A4E"], [6,"5E"], "\u20201" ], "s": [ [5,5] ], "sP": 5 }, + "note_number": "23\u2020", + "notes": [ "A\u20201", "N", "Y" ] +}, +{ "name": "M18 GMC", + "CS#": 6, + "capabilities2": { "A": [ [5,"4E"], [6,"5E"], "\u20201" ], "s": [ [5,5] ], "sP": 5 }, + "note_number": "24\u2020", + "notes": [ "A\u20201" ] +} + +] diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1940.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1940.txt index da2b6ab..7c3c3b1 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1940.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1940.txt @@ -26,8 +26,8 @@ T1E3 n/a yes CS 5 (brew up) WP7 s5 Sherman Crab n/a yes CS 5 (brew up) WP7[J4+]†[2] s5[J4+] sM4 sM4 20† G R†1 BB†2 POA-CWS-H1 n/a yes CS 6 sM8 sM8 21† P M26 n/a yes CS 6 A7 A7 22† P -M10 GMC n/a yes CS 7 A5[A4]6[5]†[1] s5[5] sP5 sP5 23† A†1 N Y -M18 GMC n/a yes CS 6 A5[4]6[5]†[1] s5[5] sP5 sP5 24† A†1 +M10 GMC n/a yes CS 7 A5[A4E]6[5E]†[1] s5[5] sP5 sP5 23† A†1 N Y +M18 GMC n/a yes CS 6 A5[4E]6[5E]†[1] s5[5] sP5 sP5 24† A†1 M36 GMC n/a yes CS 7 A5[5] sP5 sP5 25† P M36B1 GMC n/a yes CS 7 A5 sP5 A5 sP5 26 P M2 n/a yes CS 4 n/a n/a 27†[1] E† H I† N diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1941.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1941.txt index e930d37..e1116da 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1941.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1941.txt @@ -26,8 +26,8 @@ T1E3 n/a yes CS 5 (brew up) WP7 s5 Sherman Crab n/a yes CS 5 (brew up) WP7[J4+]†[2] s5[J4+] sM4 sM4 20† G R†1 BB†2 POA-CWS-H1 n/a yes CS 6 sM8 sM8 21† P M26 n/a yes CS 6 A7 A7 22† P -M10 GMC n/a yes CS 7 A5[A4]6[5]†[1] s5[5] sP5 sP5 23† A†1 N Y -M18 GMC n/a yes CS 6 A5[4]6[5]†[1] s5[5] sP5 sP5 24† A†1 +M10 GMC n/a yes CS 7 A5[A4E]6[5E]†[1] s5[5] sP5 sP5 23† A†1 N Y +M18 GMC n/a yes CS 6 A5[4E]6[5E]†[1] s5[5] sP5 sP5 24† A†1 M36 GMC n/a yes CS 7 A5[5] sP5 sP5 25† P M36B1 GMC n/a yes CS 7 A5 sP5 A5 sP5 26 P M2 n/a yes CS 4 n/a n/a 27†[1] E† H I† N diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1942.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1942.txt index b0f7a2d..4687cda 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1942.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1942.txt @@ -26,8 +26,8 @@ T1E3 n/a yes CS 5 (brew up) WP7 s5 Sherman Crab n/a yes CS 5 (brew up) WP7[J4+]†[2] s5[J4+] sM4 sM4 20† G R†1 BB†2 POA-CWS-H1 n/a yes CS 6 sM8 sM8 21† P M26 n/a yes CS 6 A7 A7 22† P -M10 GMC n/a yes CS 7 A5[A4]6[5]†[1] s5[5] sP5 sP5 23† A†1 N Y -M18 GMC n/a yes CS 6 A5[4]6[5]†[1] s5[5] sP5 sP5 24† A†1 +M10 GMC n/a yes CS 7 A5[A4E]6[5E]†[1] s5[5] sP5 sP5 23† A†1 N Y +M18 GMC n/a yes CS 6 A5[4E]6[5E]†[1] s5[5] sP5 sP5 24† A†1 M36 GMC n/a yes CS 7 A5[5] sP5 sP5 25† P M36B1 GMC n/a yes CS 7 A5 sP5 A5 sP5 26 P M2 n/a yes CS 4 n/a n/a 27†[1] E† H I† N diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1943.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1943.txt index bea9071..89db13c 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1943.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1943.txt @@ -26,8 +26,8 @@ T1E3 n/a yes CS 5 (brew up) WP7 s5 Sherman Crab n/a yes CS 5 (brew up) WP7[J4+]†[2] s5[J4+] sM4 sM4 20† G R†1 BB†2 POA-CWS-H1 n/a yes CS 6 sM8 sM8 21† P M26 n/a yes CS 6 A7 A7 22† P -M10 GMC n/a yes CS 7 A5[A4]6[5]†[1] s5[5] sP5 sP5 23† A†1 N Y -M18 GMC n/a yes CS 6 A5[4]6[5]†[1] s5[5] sP5 sP5 24† A†1 +M10 GMC n/a yes CS 7 A5[A4E]6[5E]†[1] s5[5] sP5 sP5 23† A†1 N Y +M18 GMC n/a yes CS 6 A5[4E]6[5E]†[1] s5[5] sP5 sP5 24† A†1 M36 GMC n/a yes CS 7 A5[5] sP5 sP5 25† P M36B1 GMC n/a yes CS 7 A5 sP5 A5 sP5 26 P M2 n/a yes CS 4 n/a n/a 27†[1] E† H I† N diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1944.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1944.txt index 5815aa9..848238d 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1944.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1944.txt @@ -26,8 +26,8 @@ T1E3 n/a yes CS 5 (brew up) WP7 s5 Sherman Crab n/a yes CS 5 (brew up) WP7[J4+]†[2] s5[J4+] sM4 sM4 20† G R†1 BB†2 POA-CWS-H1 n/a yes CS 6 sM8 sM8 21† P M26 n/a yes CS 6 A7 A7 22† P -M10 GMC n/a yes CS 7 A5[A4]6[5]†[1] s5[5] sP5 sP5 23† A†1 N Y -M18 GMC n/a yes CS 6 A5[4]6[5]†[1] s5[5] sP5 A5†[1] sP5 24† A†1 +M10 GMC n/a yes CS 7 A5[A4E]6[5E]†[1] s5[5] sP5 sP5 23† A†1 N Y +M18 GMC n/a yes CS 6 A5[4E]6[5E]†[1] s5[5] sP5 A5†[1] sP5 24† A†1 M36 GMC n/a yes CS 7 A5[5] sP5 sP5 25† P M36B1 GMC n/a yes CS 7 A5 sP5 A5 sP5 26 P M2 n/a yes CS 4 n/a n/a 27†[1] E† H I† N diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1945.txt index 241b470..eb6c09c 100644 --- a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1945.txt +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/american/1945.txt @@ -26,8 +26,8 @@ T1E3 n/a yes CS 5 (brew up) WP7 s5 Sherman Crab n/a yes CS 5 (brew up) WP7[J4+]†[2] s5[J4+] sM4 WP7†[2] s5 sM4 20† G R†1 BB†2 POA-CWS-H1 n/a yes CS 6 sM8 sM8 21† P M26 n/a yes CS 6 A7 A7 22† P -M10 GMC n/a yes CS 7 A5[A4]6[5]†[1] s5[5] sP5 A6†[1] s5 sP5 23† A†1 N Y -M18 GMC n/a yes CS 6 A5[4]6[5]†[1] s5[5] sP5 A6†[1] s5 sP5 24† A†1 +M10 GMC n/a yes CS 7 A5[A4E]6[5E]†[1] s5[5] sP5 A6†[1] s5 sP5 23† A†1 N Y +M18 GMC n/a yes CS 6 A5[4E]6[5E]†[1] s5[5] sP5 A6†[1] s5 sP5 24† A†1 M36 GMC n/a yes CS 7 A5[5] sP5 A5 sP5 25† P M36B1 GMC n/a yes CS 7 A5 sP5 A5 sP5 26 P M2 n/a yes CS 4 n/a n/a 27†[1] E† H I† N diff --git a/vasl_templates/webapp/tests/test_capabilities.py b/vasl_templates/webapp/tests/test_capabilities.py index be144c4..1ac447a 100644 --- a/vasl_templates/webapp/tests/test_capabilities.py +++ b/vasl_templates/webapp/tests/test_capabilities.py @@ -111,6 +111,40 @@ def test_scenario_theater( webapp, webdriver ): _check_snippet( "ETO", "01/01/1940", "ordnance", '"NT" "H7" "WP8" "s7"' ) _check_snippet( "PTO", "01/01/1940", "ordnance", '"NT" "C7\u20201" "H7" "WP8" "s7"' ) + # NOTE: We do a bit of hackery for the APCR specification for the M10 GMC and M18 GMC, + # to flag them as ETO-only, so we make sure everything's working properly here. + + # M10 GMC: A(E)5(A4)/6(5)†1 + new_scenario() + load_scenario_params( { + "scenario": { + "PLAYER_1": "american", + }, + "ob1": { + "OB_VEHICLES_1": [ "M10 GMC" ], + } + } ) + _check_snippet( "ETO", "07/31/1944", "vehicles", '"sP5"' ) + _check_snippet( "ETO", "08/01/1944", "vehicles", '"A5\u20201" "sP5"' ) + _check_snippet( "ETO", "01/01/1945", "vehicles", '"A6\u20201" "s5" "sP5"' ) + _check_snippet( "other", "01/01/1945", "vehicles", '"s5" "sP5"' ) + + # M18 GMC: A(E)5(4)/6(5)†1 + new_scenario() + load_scenario_params( { + "scenario": { + "PLAYER_1": "american", + }, + "ob1": { + "OB_VEHICLES_1": [ "M18 GMC" ], + } + } ) + _check_snippet( "ETO", "12/31/1943", "vehicles", '"sP5"' ) + _check_snippet( "ETO", "01/01/1944", "vehicles", '"A5\u20201" "sP5"' ) + _check_snippet( "ETO", "01/01/1945", "vehicles", '"A6\u20201" "s5" "sP5"' ) + _check_snippet( "other", "01/01/1945", "vehicles", '"s5" "sP5"' ) + + # --------------------------------------------------------------------- def _check_snippet( scenario_theater, scenario_date, vo_type, expected ):