Code Duplication    Length = 51-51 lines in 3 locations

tests/Doctrine/Tests/ORM/Functional/NewOperatorTest.php 3 locations

@@ 483-533 (lines=51) @@
480
        );
481
    }
482
483
    public function testShouldSupportMultipleNewOperators()
484
    {
485
        $dql = "
486
            SELECT
487
                new CmsUserDTO(
488
                    u.name,
489
                    e.email
490
                ),
491
                new CmsAddressDTO(
492
                    a.country,
493
                    a.city
494
                )
495
            FROM
496
                Doctrine\Tests\Models\CMS\CmsUser u
497
            JOIN
498
                u.email e
499
            JOIN
500
                u.address a
501
            ORDER BY
502
                u.name";
503
504
        $query  = $this->em->createQuery($dql);
505
        $result = $query->getResult();
506
507
        self::assertCount(3, $result);
508
509
        self::assertInstanceOf(CmsUserDTO::class, $result[0][0]);
510
        self::assertInstanceOf(CmsUserDTO::class, $result[1][0]);
511
        self::assertInstanceOf(CmsUserDTO::class, $result[2][0]);
512
513
        self::assertInstanceOf(CmsAddressDTO::class, $result[0][1]);
514
        self::assertInstanceOf(CmsAddressDTO::class, $result[1][1]);
515
        self::assertInstanceOf(CmsAddressDTO::class, $result[2][1]);
516
517
        self::assertEquals($this->fixtures[0]->name, $result[0][0]->name);
518
        self::assertEquals($this->fixtures[1]->name, $result[1][0]->name);
519
        self::assertEquals($this->fixtures[2]->name, $result[2][0]->name);
520
521
        self::assertEquals($this->fixtures[0]->email->email, $result[0][0]->email);
522
        self::assertEquals($this->fixtures[1]->email->email, $result[1][0]->email);
523
        self::assertEquals($this->fixtures[2]->email->email, $result[2][0]->email);
524
525
526
        self::assertEquals($this->fixtures[0]->address->city, $result[0][1]->city);
527
        self::assertEquals($this->fixtures[1]->address->city, $result[1][1]->city);
528
        self::assertEquals($this->fixtures[2]->address->city, $result[2][1]->city);
529
530
        self::assertEquals($this->fixtures[0]->address->country, $result[0][1]->country);
531
        self::assertEquals($this->fixtures[1]->address->country, $result[1][1]->country);
532
        self::assertEquals($this->fixtures[2]->address->country, $result[2][1]->country);
533
    }
534
535
    public function testShouldSupportMultipleNewOperatorsWithAliases()
536
    {
@@ 535-585 (lines=51) @@
532
        self::assertEquals($this->fixtures[2]->address->country, $result[2][1]->country);
533
    }
534
535
    public function testShouldSupportMultipleNewOperatorsWithAliases()
536
    {
537
        $dql = "
538
            SELECT
539
                new CmsUserDTO(
540
                    u.name,
541
                    e.email
542
                ) as cmsUser,
543
                new CmsAddressDTO(
544
                    a.country,
545
                    a.city
546
                ) as cmsAddress
547
            FROM
548
                Doctrine\Tests\Models\CMS\CmsUser u
549
            JOIN
550
                u.email e
551
            JOIN
552
                u.address a
553
            ORDER BY
554
                u.name";
555
556
        $query  = $this->em->createQuery($dql);
557
        $result = $query->getResult();
558
559
        self::assertCount(3, $result);
560
561
        self::assertInstanceOf(CmsUserDTO::class, $result[0]['cmsUser']);
562
        self::assertInstanceOf(CmsUserDTO::class, $result[1]['cmsUser']);
563
        self::assertInstanceOf(CmsUserDTO::class, $result[2]['cmsUser']);
564
565
        self::assertInstanceOf(CmsAddressDTO::class, $result[0]['cmsAddress']);
566
        self::assertInstanceOf(CmsAddressDTO::class, $result[1]['cmsAddress']);
567
        self::assertInstanceOf(CmsAddressDTO::class, $result[2]['cmsAddress']);
568
569
        self::assertEquals($this->fixtures[0]->name, $result[0]['cmsUser']->name);
570
        self::assertEquals($this->fixtures[1]->name, $result[1]['cmsUser']->name);
571
        self::assertEquals($this->fixtures[2]->name, $result[2]['cmsUser']->name);
572
573
        self::assertEquals($this->fixtures[0]->email->email, $result[0]['cmsUser']->email);
574
        self::assertEquals($this->fixtures[1]->email->email, $result[1]['cmsUser']->email);
575
        self::assertEquals($this->fixtures[2]->email->email, $result[2]['cmsUser']->email);
576
577
578
        self::assertEquals($this->fixtures[0]->address->city, $result[0]['cmsAddress']->city);
579
        self::assertEquals($this->fixtures[1]->address->city, $result[1]['cmsAddress']->city);
580
        self::assertEquals($this->fixtures[2]->address->city, $result[2]['cmsAddress']->city);
581
582
        self::assertEquals($this->fixtures[0]->address->country, $result[0]['cmsAddress']->country);
583
        self::assertEquals($this->fixtures[1]->address->country, $result[1]['cmsAddress']->country);
584
        self::assertEquals($this->fixtures[2]->address->country, $result[2]['cmsAddress']->country);
585
    }
586
587
    public function testShouldSupportMultipleNewOperatorsWithAndWithoutAliases()
588
    {
@@ 587-637 (lines=51) @@
584
        self::assertEquals($this->fixtures[2]->address->country, $result[2]['cmsAddress']->country);
585
    }
586
587
    public function testShouldSupportMultipleNewOperatorsWithAndWithoutAliases()
588
    {
589
        $dql = "
590
            SELECT
591
                new CmsUserDTO(
592
                    u.name,
593
                    e.email
594
                ) as cmsUser,
595
                new CmsAddressDTO(
596
                    a.country,
597
                    a.city
598
                )
599
            FROM
600
                Doctrine\Tests\Models\CMS\CmsUser u
601
            JOIN
602
                u.email e
603
            JOIN
604
                u.address a
605
            ORDER BY
606
                u.name";
607
608
        $query  = $this->em->createQuery($dql);
609
        $result = $query->getResult();
610
611
        self::assertCount(3, $result);
612
613
        self::assertInstanceOf(CmsUserDTO::class, $result[0]['cmsUser']);
614
        self::assertInstanceOf(CmsUserDTO::class, $result[1]['cmsUser']);
615
        self::assertInstanceOf(CmsUserDTO::class, $result[2]['cmsUser']);
616
617
        self::assertInstanceOf(CmsAddressDTO::class, $result[0][0]);
618
        self::assertInstanceOf(CmsAddressDTO::class, $result[1][0]);
619
        self::assertInstanceOf(CmsAddressDTO::class, $result[2][0]);
620
621
        self::assertEquals($this->fixtures[0]->name, $result[0]['cmsUser']->name);
622
        self::assertEquals($this->fixtures[1]->name, $result[1]['cmsUser']->name);
623
        self::assertEquals($this->fixtures[2]->name, $result[2]['cmsUser']->name);
624
625
        self::assertEquals($this->fixtures[0]->email->email, $result[0]['cmsUser']->email);
626
        self::assertEquals($this->fixtures[1]->email->email, $result[1]['cmsUser']->email);
627
        self::assertEquals($this->fixtures[2]->email->email, $result[2]['cmsUser']->email);
628
629
630
        self::assertEquals($this->fixtures[0]->address->city, $result[0][0]->city);
631
        self::assertEquals($this->fixtures[1]->address->city, $result[1][0]->city);
632
        self::assertEquals($this->fixtures[2]->address->city, $result[2][0]->city);
633
634
        self::assertEquals($this->fixtures[0]->address->country, $result[0][0]->country);
635
        self::assertEquals($this->fixtures[1]->address->country, $result[1][0]->country);
636
        self::assertEquals($this->fixtures[2]->address->country, $result[2][0]->country);
637
    }
638
639
    public function testShouldSupportMultipleNewOperatorsAndSingleScalar()
640
    {