Code Duplication    Length = 29-29 lines in 2 locations

tests/model/DataListTest.php 2 locations

@@ 213-241 (lines=29) @@
210
		$this->assertEmpty($parameters);
211
	}
212
213
	public function testInnerJoinParameterised() {
214
		$db = DB::get_conn();
215
216
		$list = DataObjectTest_TeamComment::get();
217
		$list = $list->innerJoin(
218
			'DataObjectTest_Team',
219
			'"DataObjectTest_Team"."ID" = "DataObjectTest_TeamComment"."TeamID" '
220
			. 'AND "DataObjectTest_Team"."Title" LIKE ?',
221
			'Team',
222
			20,
223
			array('Team%')
224
		);
225
226
		$expected = 'SELECT DISTINCT "DataObjectTest_TeamComment"."ClassName", '
227
			. '"DataObjectTest_TeamComment"."LastEdited", "DataObjectTest_TeamComment"."Created", '
228
			. '"DataObjectTest_TeamComment"."Name", "DataObjectTest_TeamComment"."Comment", '
229
			. '"DataObjectTest_TeamComment"."TeamID", "DataObjectTest_TeamComment"."ID", '
230
			. 'CASE WHEN "DataObjectTest_TeamComment"."ClassName" IS NOT NULL'
231
			. ' THEN "DataObjectTest_TeamComment"."ClassName" ELSE '
232
			. $db->quoteString('DataObjectTest_TeamComment')
233
			. ' END AS "RecordClassName" FROM "DataObjectTest_TeamComment" INNER JOIN '
234
			. '"DataObjectTest_Team" AS "Team" ON "DataObjectTest_Team"."ID" = '
235
			. '"DataObjectTest_TeamComment"."TeamID" '
236
			. 'AND "DataObjectTest_Team"."Title" LIKE ?'
237
			. ' ORDER BY "DataObjectTest_TeamComment"."Name" ASC';
238
239
		$this->assertSQLEquals($expected, $list->sql($parameters));
240
		$this->assertEquals(array('Team%'), $parameters);
241
	}
242
243
	public function testLeftJoin() {
244
		$db = DB::get_conn();
@@ 294-322 (lines=29) @@
291
292
	}
293
294
	public function testLeftJoinParameterised() {
295
		$db = DB::get_conn();
296
297
		$list = DataObjectTest_TeamComment::get();
298
		$list = $list->leftJoin(
299
			'DataObjectTest_Team',
300
			'"DataObjectTest_Team"."ID" = "DataObjectTest_TeamComment"."TeamID" '
301
			. 'AND "DataObjectTest_Team"."Title" LIKE ?',
302
			'Team',
303
			20,
304
			array('Team%')
305
		);
306
307
		$expected = 'SELECT DISTINCT "DataObjectTest_TeamComment"."ClassName", '
308
			. '"DataObjectTest_TeamComment"."LastEdited", "DataObjectTest_TeamComment"."Created", '
309
			. '"DataObjectTest_TeamComment"."Name", "DataObjectTest_TeamComment"."Comment", '
310
			. '"DataObjectTest_TeamComment"."TeamID", "DataObjectTest_TeamComment"."ID", '
311
			. 'CASE WHEN "DataObjectTest_TeamComment"."ClassName" IS NOT NULL'
312
			. ' THEN "DataObjectTest_TeamComment"."ClassName" ELSE '
313
			. $db->quoteString('DataObjectTest_TeamComment')
314
			. ' END AS "RecordClassName" FROM "DataObjectTest_TeamComment" LEFT JOIN '
315
			. '"DataObjectTest_Team" AS "Team" ON "DataObjectTest_Team"."ID" = '
316
			. '"DataObjectTest_TeamComment"."TeamID" '
317
			. 'AND "DataObjectTest_Team"."Title" LIKE ?'
318
			. ' ORDER BY "DataObjectTest_TeamComment"."Name" ASC';
319
320
		$this->assertSQLEquals($expected, $list->sql($parameters));
321
		$this->assertEquals(array('Team%'), $parameters);
322
	}
323
324
	public function testToNestedArray() {
325
		$list = DataObjectTest_TeamComment::get()->sort('ID');