diff --git a/vasl_templates/webapp/data/vehicles/italian.json b/vasl_templates/webapp/data/vehicles/italian.json new file mode 100644 index 0000000..0fbc4b9 --- /dev/null +++ b/vasl_templates/webapp/data/vehicles/italian.json @@ -0,0 +1,229 @@ +[ + +{ "name": "L5/21", + "no_radio": "\u00ae", + "CS#": 2, + "note_number": "1\u2020", + "notes": [ "A\u20201" ] +}, +{ "name": "L5/30", + "no_radio": "\u00ae", + "CS#": 2, + "note_number": "1\u2020" +}, +{ "name": "L3/35", + "no_radio": "\u00ae", + "CS#": 2, + "note_number": "2\u2020", + "notes": [ "A\u20201", "B\u20201", "E", "N", "R" ] +}, +{ "name": "L3 aa", + "no_radio": "\u00ae", + "CS#": 2, + "note_number": "3\u2020", + "notes": [ "C", "E\u20202", "F\u20201", "N", "R" ] +}, +{ "name": "L3 cc", + "no_radio": "\u00ae", + "CS#": 2, + "note_number": "4\u2020", + "notes": [ "E", "J\u20201", "N" ] +}, +{ "name": "L3 Lf", + "no_radio": "\u00ae", + "CS#": 2, + "note_number": "5\u2020", + "notes": [ "E\u20201", "N" ] +}, +{ "name": "L6/40", + "CS#": 2, + "note_number": "6\u2020", + "notes": [ "N", "R" ] +}, +{ "name": "M11/39", + "no_radio": "\u00ae", + "CS#": 3, + "note_number": "7\u2020", + "notes": [ "A\u20201", "N" ] +}, +{ "name": "M13/40", + "no_radio": "\u00ae\u2020", + "CS#": 4, + "note_number": "8\u2020", + "notes": [ "B\u20201", "C\u20202", "N" ] +}, +{ "name": "M14/41", + "CS#": 4, + "note_number": "9\u2020", + "notes": [ "B\u20201", "C\u20202", "N" ] +}, +{ "name": "M15/42", + "CS#": 4, + "note_number": "10\u2020", + "notes": [ "B\u20201", "C\u20202" ] +}, +{ "name": "MR/35(f)", + "CS#": 2, + "note_number": "11\u2020", + "notes": [ "I\u20201" ] +}, +{ "name": "SMV M40 75/18", + "CS#": 3, + "capabilities2": { "H": [ [7,"S2+"], "\u20202" ], "s": 8 }, + "note_number": "12", + "notes": [ "C\u20201", "F\u2020", "H\u20202", "N" ] +}, +{ "name": "SMV M41 75/18", + "CS#": 3, + "capabilities2": { "H": [ [7,"S2+"], "\u20202" ], "s": 8 }, + "note_number": "12\u2020", + "notes": [ "C\u20201", "H\u20202", "N" ] +}, +{ "name": "SMV M42 75/18", + "CS#": 3, + "capabilities2": { "H": 7, "s": 8 }, + "note_number": "13", + "notes": [ "C\u2020" ] +}, +{ "name": "SMV M42 75/32", + "CS#": 3, + "capabilities2": { "H": 7, "s": 8 }, + "note_number": "13\u2020", + "notes": [ "C\u20201" ] +}, +{ "name": "SMV M43 105/25", + "CS#": 4, + "no_if": true, + "capabilities2": { "H": 7, "s": 8 }, + "note_number": "14", + "notes": [ "C\u2020" ] +}, +{ "name": "SMV L40 47/32", + "CS#": 3, + "note_number": "15\u2020", + "notes": [ "N", "R" ] +}, +{ "name": "SMV M41M 90/53", + "CS#": 5, + "capabilities2": { "HE": 7 }, + "note_number": "16\u2020", + "notes": [ "D\u20201" ] +}, +{ "name": "AS 42", + "CS#": 3, + "note_number": "17\u2020", + "notes": [ "L\u20201", "M", "N" ] +}, +{ "name": "AS 42 aa", + "CS#": 4, + "note_number": "17\u2020", + "notes": [ "G\u20201", "L\u20202", "M", "N", "AA\u20201" ] +}, +{ "name": "AS 42 cc", + "CS#": 4, + "note_number": "17\u2020", + "notes": [ "G\u20201", "J\u20201", "L\u20202", "M", "N" ] +}, +{ "name": "Lince", + "CS#": 2, + "note_number": "18", + "notes": [ "E" ] +}, +{ "name": "Lancia 1ZM", + "no_radio": "\u00ae", + "CS#": 6, + "note_number": "19\u2020", + "notes": [ "A\u20202", "F\u20203", "M\u20201" ] +}, +{ "name": "Fiat 611A", + "no_radio": "\u00ae", + "CS#": 5, + "note_number": "20\u2020", + "notes": [ "A\u20202", "F\u20203", "M\u20201" ] +}, +{ "name": "Fiat 611B", + "no_radio": "\u00ae", + "CS#": 5, + "capabilities2": { "HE": 7 }, + "note_number": "20\u2020", + "notes": [ "F\u20202", "M\u20201" ] +}, +{ "name": "AB 40", + "CS#": 4, + "note_number": "21", + "notes": [ "A\u2020", "I\u20201", "N" ] +}, +{ "name": "AB 41", + "CS#": 4, + "note_number": "21\u2020", + "notes": [ "N", "R" ] +}, +{ "name": "Autoprot S37", + "CS#": 4, + "note_number": "22\u2020", + "notes": [ "R" ] +}, +{ "name": "Autocann 20/65(b)", + "CS#": 4, + "note_number": "23\u2020", + "notes": [ "G\u20201", "N", "R", "AA\u2020" ] +}, +{ "name": "Autocann 65/17(b)", + "CS#": 4, + "capabilities2": { "H": [ [7,"S2+"], "\u20202" ] }, + "note_number": "23\u2020", + "notes": [ "G\u20201", "H\u20202", "N" ] +}, +{ "name": "Autocann 75/27", + "CS#": 4, + "capabilities2": { "AP": 7 }, + "note_number": "24", + "notes": [ "D\u2020", "N", "AA\u20201" ] +}, +{ "name": "Autocann 90/53", + "CS#": 4, + "note_number": "24", + "notes": [ "D\u2020", "N", "AA\u20201" ] +}, +{ "name": "TL 37", + "cs#": 5, + "note_number": "25\u2020", + "notes": [ "L\u20201", "M", "N", "R" ] +}, +{ "name": "TM 40", + "cs#": 5, + "note_number": "25\u2020", + "notes": [ "L\u20201", "M", "N", "R" ] +}, +{ "name": "TP 32", + "cs#": 5, + "note_number": "25\u2020", + "notes": [ "L\u20201", "M", "N", "R" ] +}, +{ "name": "Autocaretta", + "cs#": "5\u20201", + "note_number": "26\u2020", + "notes": [ "K\u20201", "N", "R" ] +}, +{ "name": "Fiat 508 MC", + "cs#": "2\u20201", + "note_number": "27\u2020", + "notes": [ "A\u20202", "K\u20201", "N", "R" ] +}, +{ "name": "Autocarro L", + "cs#": 6, + "note_number": "28\u2020", + "notes": [ "N", "R" ] +}, +{ "name": "Autocarro M", + "cs#": 7, + "note_number": "28\u2020", + "notes": [ "N", "R" ] +}, +{ "name": "Autocarro P", + "cs#": 7, + "note_number": "28\u2020", + "notes": [ "N", "R" ] +} + +] diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1940.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1940.txt new file mode 100644 index 0000000..cd17908 --- /dev/null +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1940.txt @@ -0,0 +1,45 @@ +=== vehicles/italian/1940 === + +Name Radio IF Crew survival Capabilities (effective) # Notes +----------------- ------- ---- ----------------- -------------- ------------- --- ------------------------------------------------- +L5/21 ® yes CS 2 n/a n/a 1† A†1 +L5/30 ® yes CS 2 n/a n/a 1† n/a +L3/35 ® yes CS 2 n/a n/a 2† A†1 B†1 E N R +L3 aa ® yes CS 2 n/a n/a 3† C E†2 F†1 N R +L3 cc ® yes CS 2 n/a n/a 4† E J†1 N +L3 Lf ® yes CS 2 n/a n/a 5† E†1 N +L6/40 n/a yes CS 2 n/a n/a 6† N R +M11/39 ® yes CS 3 n/a n/a 7† A†1 N +M13/40 ®† yes CS 4 n/a n/a 8† B†1 C†2 N +M14/41 n/a yes CS 4 n/a n/a 9† B†1 C†2 N +M15/42 n/a yes CS 4 n/a n/a 10† B†1 C†2 +MR/35(f) n/a yes CS 2 n/a n/a 11† I†1 +SMV M40 75/18 n/a yes CS 3 H7[S2+]†[2] s8 s8 12 C†1 F† H†2 N +SMV M41 75/18 n/a yes CS 3 H7[S2+]†[2] s8 s8 12† C†1 H†2 N +SMV M42 75/18 n/a yes CS 3 H7 s8 H7 s8 13 C† +SMV M42 75/32 n/a yes CS 3 H7 s8 H7 s8 13† C†1 +SMV M43 105/25 n/a n/a CS 4 H7 s8 H7 s8 14 C† +SMV L40 47/32 n/a yes CS 3 n/a n/a 15† N R +SMV M41M 90/53 n/a yes CS 5 HE7 HE7 16† D†1 +AS 42 n/a yes CS 3 n/a n/a 17† L†1 M N +AS 42 aa n/a yes CS 4 n/a n/a 17† G†1 L†2 M N AA†1 +AS 42 cc n/a yes CS 4 n/a n/a 17† G†1 J†1 L†2 M N +Lince n/a yes CS 2 n/a n/a 18 E +Lancia 1ZM ® yes CS 6 n/a n/a 19† A†2 F†3 M†1 +Fiat 611A ® yes CS 5 n/a n/a 20† A†2 F†3 M†1 +Fiat 611B ® yes CS 5 HE7 HE7 20† F†2 M†1 +AB 40 n/a yes CS 4 n/a n/a 21 A† I†1 N +AB 41 n/a yes CS 4 n/a n/a 21† N R +Autoprot S37 n/a yes CS 4 n/a n/a 22† R +Autocann 20/65(b) n/a yes CS 4 n/a n/a 23† G†1 N R AA† +Autocann 65/17(b) n/a yes CS 4 H7[S2+]†[2] n/a 23† G†1 H†2 N +Autocann 75/27 n/a yes CS 4 AP7 AP7 24 D† N AA†1 +Autocann 90/53 n/a yes CS 4 n/a n/a 24 D† N AA†1 +TL 37 n/a yes cs 5 n/a n/a 25† L†1 M N R +TM 40 n/a yes cs 5 n/a n/a 25† L†1 M N R +TP 32 n/a yes cs 5 n/a n/a 25† L†1 M N R +Autocaretta n/a yes cs 5†1 n/a n/a 26† K†1 N R +Fiat 508 MC n/a yes cs 2†1 n/a n/a 27† A†2 K†1 N R +Autocarro L n/a yes cs 6 n/a n/a 28† N R +Autocarro M n/a yes cs 7 n/a n/a 28† N R +Autocarro P n/a yes cs 7 n/a n/a 28† N R diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1941.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1941.txt new file mode 100644 index 0000000..8e0e68d --- /dev/null +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1941.txt @@ -0,0 +1,45 @@ +=== vehicles/italian/1941 === + +Name Radio IF Crew survival Capabilities (effective) # Notes +----------------- ------- ---- ----------------- -------------- ------------- --- ------------------------------------------------- +L5/21 ® yes CS 2 n/a n/a 1† A†1 +L5/30 ® yes CS 2 n/a n/a 1† n/a +L3/35 ® yes CS 2 n/a n/a 2† A†1 B†1 E N R +L3 aa ® yes CS 2 n/a n/a 3† C E†2 F†1 N R +L3 cc ® yes CS 2 n/a n/a 4† E J†1 N +L3 Lf ® yes CS 2 n/a n/a 5† E†1 N +L6/40 n/a yes CS 2 n/a n/a 6† N R +M11/39 ® yes CS 3 n/a n/a 7† A†1 N +M13/40 ®† yes CS 4 n/a n/a 8† B†1 C†2 N +M14/41 n/a yes CS 4 n/a n/a 9† B†1 C†2 N +M15/42 n/a yes CS 4 n/a n/a 10† B†1 C†2 +MR/35(f) n/a yes CS 2 n/a n/a 11† I†1 +SMV M40 75/18 n/a yes CS 3 H7[S2+]†[2] s8 s8 12 C†1 F† H†2 N +SMV M41 75/18 n/a yes CS 3 H7[S2+]†[2] s8 s8 12† C†1 H†2 N +SMV M42 75/18 n/a yes CS 3 H7 s8 H7 s8 13 C† +SMV M42 75/32 n/a yes CS 3 H7 s8 H7 s8 13† C†1 +SMV M43 105/25 n/a n/a CS 4 H7 s8 H7 s8 14 C† +SMV L40 47/32 n/a yes CS 3 n/a n/a 15† N R +SMV M41M 90/53 n/a yes CS 5 HE7 HE7 16† D†1 +AS 42 n/a yes CS 3 n/a n/a 17† L†1 M N +AS 42 aa n/a yes CS 4 n/a n/a 17† G†1 L†2 M N AA†1 +AS 42 cc n/a yes CS 4 n/a n/a 17† G†1 J†1 L†2 M N +Lince n/a yes CS 2 n/a n/a 18 E +Lancia 1ZM ® yes CS 6 n/a n/a 19† A†2 F†3 M†1 +Fiat 611A ® yes CS 5 n/a n/a 20† A†2 F†3 M†1 +Fiat 611B ® yes CS 5 HE7 HE7 20† F†2 M†1 +AB 40 n/a yes CS 4 n/a n/a 21 A† I†1 N +AB 41 n/a yes CS 4 n/a n/a 21† N R +Autoprot S37 n/a yes CS 4 n/a n/a 22† R +Autocann 20/65(b) n/a yes CS 4 n/a n/a 23† G†1 N R AA† +Autocann 65/17(b) n/a yes CS 4 H7[S2+]†[2] n/a 23† G†1 H†2 N +Autocann 75/27 n/a yes CS 4 AP7 AP7 24 D† N AA†1 +Autocann 90/53 n/a yes CS 4 n/a n/a 24 D† N AA†1 +TL 37 n/a yes cs 5 n/a n/a 25† L†1 M N R +TM 40 n/a yes cs 5 n/a n/a 25† L†1 M N R +TP 32 n/a yes cs 5 n/a n/a 25† L†1 M N R +Autocaretta n/a yes cs 5†1 n/a n/a 26† K†1 N R +Fiat 508 MC n/a yes cs 2†1 n/a n/a 27† A†2 K†1 N R +Autocarro L n/a yes cs 6 n/a n/a 28† N R +Autocarro M n/a yes cs 7 n/a n/a 28† N R +Autocarro P n/a yes cs 7 n/a n/a 28† N R diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1942.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1942.txt new file mode 100644 index 0000000..47dfd8e --- /dev/null +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1942.txt @@ -0,0 +1,45 @@ +=== vehicles/italian/1942 === + +Name Radio IF Crew survival Capabilities (effective) # Notes +----------------- ------- ---- ----------------- -------------- ------------- --- ------------------------------------------------- +L5/21 ® yes CS 2 n/a n/a 1† A†1 +L5/30 ® yes CS 2 n/a n/a 1† n/a +L3/35 ® yes CS 2 n/a n/a 2† A†1 B†1 E N R +L3 aa ® yes CS 2 n/a n/a 3† C E†2 F†1 N R +L3 cc ® yes CS 2 n/a n/a 4† E J†1 N +L3 Lf ® yes CS 2 n/a n/a 5† E†1 N +L6/40 n/a yes CS 2 n/a n/a 6† N R +M11/39 ® yes CS 3 n/a n/a 7† A†1 N +M13/40 ®† yes CS 4 n/a n/a 8† B†1 C†2 N +M14/41 n/a yes CS 4 n/a n/a 9† B†1 C†2 N +M15/42 n/a yes CS 4 n/a n/a 10† B†1 C†2 +MR/35(f) n/a yes CS 2 n/a n/a 11† I†1 +SMV M40 75/18 n/a yes CS 3 H7[S2+]†[2] s8 s8 12 C†1 F† H†2 N +SMV M41 75/18 n/a yes CS 3 H7[S2+]†[2] s8 s8 12† C†1 H†2 N +SMV M42 75/18 n/a yes CS 3 H7 s8 H7 s8 13 C† +SMV M42 75/32 n/a yes CS 3 H7 s8 H7 s8 13† C†1 +SMV M43 105/25 n/a n/a CS 4 H7 s8 H7 s8 14 C† +SMV L40 47/32 n/a yes CS 3 n/a n/a 15† N R +SMV M41M 90/53 n/a yes CS 5 HE7 HE7 16† D†1 +AS 42 n/a yes CS 3 n/a n/a 17† L†1 M N +AS 42 aa n/a yes CS 4 n/a n/a 17† G†1 L†2 M N AA†1 +AS 42 cc n/a yes CS 4 n/a n/a 17† G†1 J†1 L†2 M N +Lince n/a yes CS 2 n/a n/a 18 E +Lancia 1ZM ® yes CS 6 n/a n/a 19† A†2 F†3 M†1 +Fiat 611A ® yes CS 5 n/a n/a 20† A†2 F†3 M†1 +Fiat 611B ® yes CS 5 HE7 HE7 20† F†2 M†1 +AB 40 n/a yes CS 4 n/a n/a 21 A† I†1 N +AB 41 n/a yes CS 4 n/a n/a 21† N R +Autoprot S37 n/a yes CS 4 n/a n/a 22† R +Autocann 20/65(b) n/a yes CS 4 n/a n/a 23† G†1 N R AA† +Autocann 65/17(b) n/a yes CS 4 H7[S2+]†[2] n/a 23† G†1 H†2 N +Autocann 75/27 n/a yes CS 4 AP7 AP7 24 D† N AA†1 +Autocann 90/53 n/a yes CS 4 n/a n/a 24 D† N AA†1 +TL 37 n/a yes cs 5 n/a n/a 25† L†1 M N R +TM 40 n/a yes cs 5 n/a n/a 25† L†1 M N R +TP 32 n/a yes cs 5 n/a n/a 25† L†1 M N R +Autocaretta n/a yes cs 5†1 n/a n/a 26† K†1 N R +Fiat 508 MC n/a yes cs 2†1 n/a n/a 27† A†2 K†1 N R +Autocarro L n/a yes cs 6 n/a n/a 28† N R +Autocarro M n/a yes cs 7 n/a n/a 28† N R +Autocarro P n/a yes cs 7 n/a n/a 28† N R diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1943.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1943.txt new file mode 100644 index 0000000..94febbe --- /dev/null +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1943.txt @@ -0,0 +1,45 @@ +=== vehicles/italian/1943 === + +Name Radio IF Crew survival Capabilities (effective) # Notes +----------------- ------- ---- ----------------- -------------- ------------- --- ------------------------------------------------- +L5/21 ® yes CS 2 n/a n/a 1† A†1 +L5/30 ® yes CS 2 n/a n/a 1† n/a +L3/35 ® yes CS 2 n/a n/a 2† A†1 B†1 E N R +L3 aa ® yes CS 2 n/a n/a 3† C E†2 F†1 N R +L3 cc ® yes CS 2 n/a n/a 4† E J†1 N +L3 Lf ® yes CS 2 n/a n/a 5† E†1 N +L6/40 n/a yes CS 2 n/a n/a 6† N R +M11/39 ® yes CS 3 n/a n/a 7† A†1 N +M13/40 ®† yes CS 4 n/a n/a 8† B†1 C†2 N +M14/41 n/a yes CS 4 n/a n/a 9† B†1 C†2 N +M15/42 n/a yes CS 4 n/a n/a 10† B†1 C†2 +MR/35(f) n/a yes CS 2 n/a n/a 11† I†1 +SMV M40 75/18 n/a yes CS 3 H7[S2+]†[2] s8 H7†[2] s8 12 C†1 F† H†2 N +SMV M41 75/18 n/a yes CS 3 H7[S2+]†[2] s8 H7†[2] s8 12† C†1 H†2 N +SMV M42 75/18 n/a yes CS 3 H7 s8 H7 s8 13 C† +SMV M42 75/32 n/a yes CS 3 H7 s8 H7 s8 13† C†1 +SMV M43 105/25 n/a n/a CS 4 H7 s8 H7 s8 14 C† +SMV L40 47/32 n/a yes CS 3 n/a n/a 15† N R +SMV M41M 90/53 n/a yes CS 5 HE7 HE7 16† D†1 +AS 42 n/a yes CS 3 n/a n/a 17† L†1 M N +AS 42 aa n/a yes CS 4 n/a n/a 17† G†1 L†2 M N AA†1 +AS 42 cc n/a yes CS 4 n/a n/a 17† G†1 J†1 L†2 M N +Lince n/a yes CS 2 n/a n/a 18 E +Lancia 1ZM ® yes CS 6 n/a n/a 19† A†2 F†3 M†1 +Fiat 611A ® yes CS 5 n/a n/a 20† A†2 F†3 M†1 +Fiat 611B ® yes CS 5 HE7 HE7 20† F†2 M†1 +AB 40 n/a yes CS 4 n/a n/a 21 A† I†1 N +AB 41 n/a yes CS 4 n/a n/a 21† N R +Autoprot S37 n/a yes CS 4 n/a n/a 22† R +Autocann 20/65(b) n/a yes CS 4 n/a n/a 23† G†1 N R AA† +Autocann 65/17(b) n/a yes CS 4 H7[S2+]†[2] H7†[2] 23† G†1 H†2 N +Autocann 75/27 n/a yes CS 4 AP7 AP7 24 D† N AA†1 +Autocann 90/53 n/a yes CS 4 n/a n/a 24 D† N AA†1 +TL 37 n/a yes cs 5 n/a n/a 25† L†1 M N R +TM 40 n/a yes cs 5 n/a n/a 25† L†1 M N R +TP 32 n/a yes cs 5 n/a n/a 25† L†1 M N R +Autocaretta n/a yes cs 5†1 n/a n/a 26† K†1 N R +Fiat 508 MC n/a yes cs 2†1 n/a n/a 27† A†2 K†1 N R +Autocarro L n/a yes cs 6 n/a n/a 28† N R +Autocarro M n/a yes cs 7 n/a n/a 28† N R +Autocarro P n/a yes cs 7 n/a n/a 28† N R diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1944.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1944.txt new file mode 100644 index 0000000..d3f529d --- /dev/null +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1944.txt @@ -0,0 +1,45 @@ +=== vehicles/italian/1944 === + +Name Radio IF Crew survival Capabilities (effective) # Notes +----------------- ------- ---- ----------------- -------------- ------------- --- ------------------------------------------------- +L5/21 ® yes CS 2 n/a n/a 1† A†1 +L5/30 ® yes CS 2 n/a n/a 1† n/a +L3/35 ® yes CS 2 n/a n/a 2† A†1 B†1 E N R +L3 aa ® yes CS 2 n/a n/a 3† C E†2 F†1 N R +L3 cc ® yes CS 2 n/a n/a 4† E J†1 N +L3 Lf ® yes CS 2 n/a n/a 5† E†1 N +L6/40 n/a yes CS 2 n/a n/a 6† N R +M11/39 ® yes CS 3 n/a n/a 7† A†1 N +M13/40 ®† yes CS 4 n/a n/a 8† B†1 C†2 N +M14/41 n/a yes CS 4 n/a n/a 9† B†1 C†2 N +M15/42 n/a yes CS 4 n/a n/a 10† B†1 C†2 +MR/35(f) n/a yes CS 2 n/a n/a 11† I†1 +SMV M40 75/18 n/a yes CS 3 H7[S2+]†[2] s8 H7†[2] s8 12 C†1 F† H†2 N +SMV M41 75/18 n/a yes CS 3 H7[S2+]†[2] s8 H7†[2] s8 12† C†1 H†2 N +SMV M42 75/18 n/a yes CS 3 H7 s8 H7 s8 13 C† +SMV M42 75/32 n/a yes CS 3 H7 s8 H7 s8 13† C†1 +SMV M43 105/25 n/a n/a CS 4 H7 s8 H7 s8 14 C† +SMV L40 47/32 n/a yes CS 3 n/a n/a 15† N R +SMV M41M 90/53 n/a yes CS 5 HE7 HE7 16† D†1 +AS 42 n/a yes CS 3 n/a n/a 17† L†1 M N +AS 42 aa n/a yes CS 4 n/a n/a 17† G†1 L†2 M N AA†1 +AS 42 cc n/a yes CS 4 n/a n/a 17† G†1 J†1 L†2 M N +Lince n/a yes CS 2 n/a n/a 18 E +Lancia 1ZM ® yes CS 6 n/a n/a 19† A†2 F†3 M†1 +Fiat 611A ® yes CS 5 n/a n/a 20† A†2 F†3 M†1 +Fiat 611B ® yes CS 5 HE7 HE7 20† F†2 M†1 +AB 40 n/a yes CS 4 n/a n/a 21 A† I†1 N +AB 41 n/a yes CS 4 n/a n/a 21† N R +Autoprot S37 n/a yes CS 4 n/a n/a 22† R +Autocann 20/65(b) n/a yes CS 4 n/a n/a 23† G†1 N R AA† +Autocann 65/17(b) n/a yes CS 4 H7[S2+]†[2] H7†[2] 23† G†1 H†2 N +Autocann 75/27 n/a yes CS 4 AP7 AP7 24 D† N AA†1 +Autocann 90/53 n/a yes CS 4 n/a n/a 24 D† N AA†1 +TL 37 n/a yes cs 5 n/a n/a 25† L†1 M N R +TM 40 n/a yes cs 5 n/a n/a 25† L†1 M N R +TP 32 n/a yes cs 5 n/a n/a 25† L†1 M N R +Autocaretta n/a yes cs 5†1 n/a n/a 26† K†1 N R +Fiat 508 MC n/a yes cs 2†1 n/a n/a 27† A†2 K†1 N R +Autocarro L n/a yes cs 6 n/a n/a 28† N R +Autocarro M n/a yes cs 7 n/a n/a 28† N R +Autocarro P n/a yes cs 7 n/a n/a 28† N R diff --git a/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1945.txt b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1945.txt new file mode 100644 index 0000000..6947251 --- /dev/null +++ b/vasl_templates/webapp/tests/fixtures/vo-reports/vehicles/italian/1945.txt @@ -0,0 +1,45 @@ +=== vehicles/italian/1945 === + +Name Radio IF Crew survival Capabilities (effective) # Notes +----------------- ------- ---- ----------------- -------------- ------------- --- ------------------------------------------------- +L5/21 ® yes CS 2 n/a n/a 1† A†1 +L5/30 ® yes CS 2 n/a n/a 1† n/a +L3/35 ® yes CS 2 n/a n/a 2† A†1 B†1 E N R +L3 aa ® yes CS 2 n/a n/a 3† C E†2 F†1 N R +L3 cc ® yes CS 2 n/a n/a 4† E J†1 N +L3 Lf ® yes CS 2 n/a n/a 5† E†1 N +L6/40 n/a yes CS 2 n/a n/a 6† N R +M11/39 ® yes CS 3 n/a n/a 7† A†1 N +M13/40 ®† yes CS 4 n/a n/a 8† B†1 C†2 N +M14/41 n/a yes CS 4 n/a n/a 9† B†1 C†2 N +M15/42 n/a yes CS 4 n/a n/a 10† B†1 C†2 +MR/35(f) n/a yes CS 2 n/a n/a 11† I†1 +SMV M40 75/18 n/a yes CS 3 H7[S2+]†[2] s8 H7†[2] s8 12 C†1 F† H†2 N +SMV M41 75/18 n/a yes CS 3 H7[S2+]†[2] s8 H7†[2] s8 12† C†1 H†2 N +SMV M42 75/18 n/a yes CS 3 H7 s8 H7 s8 13 C† +SMV M42 75/32 n/a yes CS 3 H7 s8 H7 s8 13† C†1 +SMV M43 105/25 n/a n/a CS 4 H7 s8 H7 s8 14 C† +SMV L40 47/32 n/a yes CS 3 n/a n/a 15† N R +SMV M41M 90/53 n/a yes CS 5 HE7 HE7 16† D†1 +AS 42 n/a yes CS 3 n/a n/a 17† L†1 M N +AS 42 aa n/a yes CS 4 n/a n/a 17† G†1 L†2 M N AA†1 +AS 42 cc n/a yes CS 4 n/a n/a 17† G†1 J†1 L†2 M N +Lince n/a yes CS 2 n/a n/a 18 E +Lancia 1ZM ® yes CS 6 n/a n/a 19† A†2 F†3 M†1 +Fiat 611A ® yes CS 5 n/a n/a 20† A†2 F†3 M†1 +Fiat 611B ® yes CS 5 HE7 HE7 20† F†2 M†1 +AB 40 n/a yes CS 4 n/a n/a 21 A† I†1 N +AB 41 n/a yes CS 4 n/a n/a 21† N R +Autoprot S37 n/a yes CS 4 n/a n/a 22† R +Autocann 20/65(b) n/a yes CS 4 n/a n/a 23† G†1 N R AA† +Autocann 65/17(b) n/a yes CS 4 H7[S2+]†[2] H7†[2] 23† G†1 H†2 N +Autocann 75/27 n/a yes CS 4 AP7 AP7 24 D† N AA†1 +Autocann 90/53 n/a yes CS 4 n/a n/a 24 D† N AA†1 +TL 37 n/a yes cs 5 n/a n/a 25† L†1 M N R +TM 40 n/a yes cs 5 n/a n/a 25† L†1 M N R +TP 32 n/a yes cs 5 n/a n/a 25† L†1 M N R +Autocaretta n/a yes cs 5†1 n/a n/a 26† K†1 N R +Fiat 508 MC n/a yes cs 2†1 n/a n/a 27† A†2 K†1 N R +Autocarro L n/a yes cs 6 n/a n/a 28† N R +Autocarro M n/a yes cs 7 n/a n/a 28† N R +Autocarro P n/a yes cs 7 n/a n/a 28† N R diff --git a/vasl_templates/webapp/tests/test_capabilities.py b/vasl_templates/webapp/tests/test_capabilities.py index cd5f6af..f79d197 100644 --- a/vasl_templates/webapp/tests/test_capabilities.py +++ b/vasl_templates/webapp/tests/test_capabilities.py @@ -245,6 +245,16 @@ def test_month_capabilities( webapp, webdriver ): assert "H6\u20201" in val2 assert _get_capabilities( webdriver, webapp, *ordnance, "ETO", "01/1943" ) == val2 + # SMV M40 75/18, SMV M41 75/18, Autocann 65/17(b): H7(S2+)†2 + for vo_name in ("SMV M40 75/18", "SMV M41 75/18", "Autocann 65/17(b)"): + vehicle = [ "italian", "vehicles", vo_name ] + val = _get_capabilities( webdriver, webapp, *vehicle, "ETO", "12/1941" ) + assert "H7" not in val + assert _get_capabilities( webdriver, webapp, *vehicle, "ETO", "08/1942" ) == val + val2 = _get_capabilities( webdriver, webapp, *vehicle, "ETO", "09/1942" ) + assert "H7\u20202" in val2 + assert _get_capabilities( webdriver, webapp, *vehicle, "ETO", "01/1943" ) == val2 + # --------------------------------------------------------------------- @pytest.mark.skipif( @@ -354,8 +364,8 @@ def _get_capabilities( webdriver, webapp, if vo_type == "vehicles": assert "Capabilities" in results[0][4] return results[row_no][5] - elif vo_type == "ordnance": + if vo_type == "ordnance": assert "Capabilities" in results[0][1] return results[row_no][2] - else: - assert False + assert False + return None diff --git a/vasl_templates/webapp/tests/test_vo_reports.py b/vasl_templates/webapp/tests/test_vo_reports.py index a47cfbd..c369df7 100644 --- a/vasl_templates/webapp/tests/test_vo_reports.py +++ b/vasl_templates/webapp/tests/test_vo_reports.py @@ -36,7 +36,7 @@ def test_vo_reports( webapp, webdriver ): ) # check each vehicle/ordnance report - for nat in ["german","russian","american","british"]: + for nat in ["german","russian","american","british","italian"]: for vo_type in ["vehicles","ordnance"]: for year in range(1940,1945+1):