@@ -67,3 +67,57 @@ def test_transform___valid_remote(self):
6767 parser .transform ()
6868 # THEN
6969 self .assertListEqual (list (open (output_file )), list (open (expected_output_file )))
70+
71+ def test_transform___newlines (self ):
72+ self .maxDiff = None
73+ # INIT
74+ input_file = "./lib/input/ac-remote-test1.input.storage"
75+ output_file = "./lib/output/ac-remote-test1.output.storage"
76+ extension_key = (
77+ "9a81c16f-31e6-4be7-be6e-dfc872fe4155/35d2082a-431b-46b7-90da-75a526882f2f"
78+ )
79+ parser = MacroStorageFormatParser (input_file , output_file , extension_key , True )
80+ # ###########################################################################
81+ # CASE1: \r\n
82+ #
83+ # GIVEN
84+ macro_body1 = "foo\n [content]\r \n bar"
85+ # WHEN
86+ result1 = parser ._split_macro_body_on_content_block (macro_body1 )
87+ # THEN
88+ self .assertTrue (isinstance (result1 , tuple ))
89+ self .assertEqual (result1 [0 ], "foo\n " )
90+ self .assertEqual (result1 [1 ], "bar" )
91+ # ###########################################################################
92+ # CASE2: \r
93+ #
94+ # GIVEN
95+ macro_body2 = "foo\r [content]\r bar"
96+ # WHEN
97+ result2 = parser ._split_macro_body_on_content_block (macro_body2 )
98+ # THEN
99+ self .assertTrue (isinstance (result2 , tuple ))
100+ self .assertEqual (result2 [0 ], "foo\r " )
101+ self .assertEqual (result2 [1 ], "bar" )
102+ # ###########################################################################
103+ # CASE3: \r\n
104+ #
105+ # GIVEN
106+ macro_body3 = "foo\r [content]\r \n bar"
107+ # WHEN
108+ result3 = parser ._split_macro_body_on_content_block (macro_body3 )
109+ # THEN
110+ self .assertTrue (isinstance (result3 , tuple ))
111+ self .assertEqual (result3 [0 ], "foo\r " )
112+ self .assertEqual (result3 [1 ], "bar" )
113+ # ###########################################################################
114+ # CASE4: \n
115+ #
116+ # GIVEN
117+ macro_body4 = "foo\n [content]\n bar"
118+ # WHEN
119+ result4 = parser ._split_macro_body_on_content_block (macro_body4 )
120+ # THEN
121+ self .assertTrue (isinstance (result4 , tuple ))
122+ self .assertEqual (result4 [0 ], "foo\n " )
123+ self .assertEqual (result4 [1 ], "bar" )
0 commit comments