@@ -132,12 +132,66 @@ public function test_create_zip_creates_zip_file()
132132 // Clean up or further assertions here
133133 }
134134
135- public function test_get_language_version_data_returns_expected ()
135+ /**
136+ * @dataProvider provide_language_version_data
137+ */
138+ public function test_get_language_version_data_returns_expected ($ phpbb_version , $ expected )
136139 {
137- $ data_31 = $ this ->invokeMethod ($ this ->packager , 'get_language_version_data ' , [true ]);
138- $ data_32 = $ this ->invokeMethod ($ this ->packager , 'get_language_version_data ' , [false ]);
139- $ this ->assertArrayHasKey ('class ' , $ data_31 );
140- $ this ->assertArrayHasKey ('class ' , $ data_32 );
140+ $ data = [
141+ 'requirements ' => [
142+ 'phpbb_version_min ' => $ phpbb_version
143+ ]
144+ ];
145+
146+ $ result = $ this ->invokeMethod ($ this ->packager , 'get_language_version_data ' , [$ data ]);
147+
148+ $ this ->assertSame ($ expected ['class ' ], $ result ['class ' ]);
149+ $ this ->assertSame ($ expected ['object ' ], $ result ['object ' ]);
150+ $ this ->assertSame ($ expected ['function ' ], $ result ['function ' ]);
151+ $ this ->assertSame ($ expected ['indent ' ]['class ' ], $ result ['indent ' ]['class ' ]);
152+ $ this ->assertSame ($ expected ['indent ' ]['object ' ], $ result ['indent ' ]['object ' ]);
153+ }
154+
155+ public function provide_language_version_data ()
156+ {
157+ return [
158+ '3.1 version ' => [
159+ '3.1.0 ' ,
160+ [
161+ 'class ' => '\phpbb\user ' ,
162+ 'object ' => 'user ' ,
163+ 'function ' => 'add_lang_ext ' ,
164+ 'indent ' => [
165+ 'class ' => "\t\t\t" ,
166+ 'object ' => "\t"
167+ ]
168+ ]
169+ ],
170+ '3.2 version ' => [
171+ '3.2.0 ' ,
172+ [
173+ 'class ' => '\phpbb\language\language ' ,
174+ 'object ' => 'language ' ,
175+ 'function ' => 'add_lang ' ,
176+ 'indent ' => [
177+ 'class ' => '' ,
178+ 'object ' => ''
179+ ]
180+ ]
181+ ],
182+ 'null version ' => [
183+ null ,
184+ [
185+ 'class ' => '\phpbb\language\language ' ,
186+ 'object ' => 'language ' ,
187+ 'function ' => 'add_lang ' ,
188+ 'indent ' => [
189+ 'class ' => '' ,
190+ 'object ' => ''
191+ ]
192+ ]
193+ ]
194+ ];
141195 }
142196
143197 public function test_get_template_engine_returns_twig_instance ()
0 commit comments