Code Duplication    Length = 146-146 lines in 3 locations

eZ/Publish/Core/Persistence/Legacy/Tests/Content/UrlAlias/UrlAliasHandlerTest.php 3 locations

@@ 3284-3429 (lines=146) @@
3281
     *
3282
     * @group swap
3283
     */
3284
    public function testLocationSwappedSimpleWithHistory()
3285
    {
3286
        $handler = $this->getHandler();
3287
        $this->insertDatabaseFixture(__DIR__ . '/_fixtures/urlaliases_swap_simple_history.php');
3288
3289
        $countBeforeReusing = $this->countRows();
3290
3291
        $handler->locationSwapped(316, 314, 317, 315);
3292
3293
        $this->assertEquals(
3294
            $countBeforeReusing,
3295
            $this->countRows()
3296
        );
3297
3298
        $urlAlias = $handler->lookup('jedan/swap');
3299
        $this->assertEquals(
3300
            new UrlAlias(
3301
                [
3302
                    'id' => '2-' . md5('swap'),
3303
                    'type' => UrlAlias::LOCATION,
3304
                    'destination' => 316,
3305
                    'languageCodes' => [
3306
                        'cro-HR',
3307
                    ],
3308
                    'pathData' => [
3309
                        [
3310
                            'always-available' => false,
3311
                            'translations' => [
3312
                                'cro-HR' => 'jedan',
3313
                            ],
3314
                        ],
3315
                        [
3316
                            'always-available' => false,
3317
                            'translations' => [
3318
                                'cro-HR' => 'swap',
3319
                            ],
3320
                        ],
3321
                    ],
3322
                    'alwaysAvailable' => false,
3323
                    'isHistory' => true,
3324
                    'isCustom' => false,
3325
                    'forward' => false,
3326
                ]
3327
            ),
3328
            $urlAlias
3329
        );
3330
3331
        $urlAlias = $handler->lookup('dva/swap');
3332
        $this->assertEquals(
3333
            new UrlAlias(
3334
                [
3335
                    'id' => '3-' . md5('swap'),
3336
                    'type' => UrlAlias::LOCATION,
3337
                    'destination' => 317,
3338
                    'languageCodes' => [
3339
                        'cro-HR',
3340
                    ],
3341
                    'pathData' => [
3342
                        [
3343
                            'always-available' => false,
3344
                            'translations' => [
3345
                                'cro-HR' => 'dva',
3346
                            ],
3347
                        ],
3348
                        [
3349
                            'always-available' => false,
3350
                            'translations' => [
3351
                                'cro-HR' => 'swap',
3352
                            ],
3353
                        ],
3354
                    ],
3355
                    'alwaysAvailable' => false,
3356
                    'isHistory' => true,
3357
                    'isCustom' => false,
3358
                    'forward' => false,
3359
                ]
3360
            ),
3361
            $urlAlias
3362
        );
3363
3364
        $urlAlias = $handler->lookup('jedan/swap-new');
3365
        $this->assertEquals(
3366
            new UrlAlias(
3367
                [
3368
                    'id' => '2-' . md5('swap-new'),
3369
                    'type' => UrlAlias::LOCATION,
3370
                    'destination' => 316,
3371
                    'languageCodes' => [
3372
                        'cro-HR',
3373
                    ],
3374
                    'pathData' => [
3375
                        [
3376
                            'always-available' => false,
3377
                            'translations' => [
3378
                                'cro-HR' => 'jedan',
3379
                            ],
3380
                        ],
3381
                        [
3382
                            'always-available' => false,
3383
                            'translations' => [
3384
                                'cro-HR' => 'swap-new',
3385
                            ],
3386
                        ],
3387
                    ],
3388
                    'alwaysAvailable' => false,
3389
                    'isHistory' => false,
3390
                    'isCustom' => false,
3391
                    'forward' => false,
3392
                ]
3393
            ),
3394
            $urlAlias
3395
        );
3396
3397
        $urlAlias = $handler->lookup('dva/swap-new');
3398
        $this->assertEquals(
3399
            new UrlAlias(
3400
                [
3401
                    'id' => '3-' . md5('swap-new'),
3402
                    'type' => UrlAlias::LOCATION,
3403
                    'destination' => 317,
3404
                    'languageCodes' => [
3405
                        'cro-HR',
3406
                    ],
3407
                    'pathData' => [
3408
                        [
3409
                            'always-available' => false,
3410
                            'translations' => [
3411
                                'cro-HR' => 'dva',
3412
                            ],
3413
                        ],
3414
                        [
3415
                            'always-available' => false,
3416
                            'translations' => [
3417
                                'cro-HR' => 'swap-new',
3418
                            ],
3419
                        ],
3420
                    ],
3421
                    'alwaysAvailable' => false,
3422
                    'isHistory' => false,
3423
                    'isCustom' => false,
3424
                    'forward' => false,
3425
                ]
3426
            ),
3427
            $urlAlias
3428
        );
3429
    }
3430
3431
    /**
3432
     * Test for the locationSwapped() method.
@@ 4934-5079 (lines=146) @@
4931
     *
4932
     * @group swap
4933
     */
4934
    public function testLocationSwappedWithReusingExternalHistory()
4935
    {
4936
        $handler = $this->getHandler();
4937
        $this->insertDatabaseFixture(__DIR__ . '/_fixtures/urlaliases_swap_reusing_external_history.php');
4938
4939
        $countBeforeReusing = $this->countRows();
4940
4941
        $handler->locationSwapped(318, 314, 319, 315);
4942
4943
        $this->assertEquals(
4944
            $countBeforeReusing,
4945
            $this->countRows()
4946
        );
4947
4948
        $urlAlias = $handler->lookup('jedan/swap-that');
4949
        $this->assertEquals(
4950
            new UrlAlias(
4951
                [
4952
                    'id' => '2-' . md5('swap-that'),
4953
                    'type' => UrlAlias::LOCATION,
4954
                    'destination' => 318,
4955
                    'languageCodes' => [
4956
                        'cro-HR',
4957
                    ],
4958
                    'pathData' => [
4959
                        [
4960
                            'always-available' => false,
4961
                            'translations' => [
4962
                                'cro-HR' => 'jedan',
4963
                            ],
4964
                        ],
4965
                        [
4966
                            'always-available' => false,
4967
                            'translations' => [
4968
                                'cro-HR' => 'swap-that',
4969
                            ],
4970
                        ],
4971
                    ],
4972
                    'alwaysAvailable' => false,
4973
                    'isHistory' => false,
4974
                    'isCustom' => false,
4975
                    'forward' => false,
4976
                ]
4977
            ),
4978
            $urlAlias
4979
        );
4980
4981
        $urlAlias = $handler->lookup('dva/swap-this');
4982
        $this->assertEquals(
4983
            new UrlAlias(
4984
                [
4985
                    'id' => '3-' . md5('swap-this'),
4986
                    'type' => UrlAlias::LOCATION,
4987
                    'destination' => 319,
4988
                    'languageCodes' => [
4989
                        'cro-HR',
4990
                    ],
4991
                    'pathData' => [
4992
                        [
4993
                            'always-available' => false,
4994
                            'translations' => [
4995
                                'cro-HR' => 'dva',
4996
                            ],
4997
                        ],
4998
                        [
4999
                            'always-available' => false,
5000
                            'translations' => [
5001
                                'cro-HR' => 'swap-this',
5002
                            ],
5003
                        ],
5004
                    ],
5005
                    'alwaysAvailable' => false,
5006
                    'isHistory' => false,
5007
                    'isCustom' => false,
5008
                    'forward' => false,
5009
                ]
5010
            ),
5011
            $urlAlias
5012
        );
5013
5014
        $urlAlias = $handler->lookup('dva/swap-that');
5015
        $this->assertEquals(
5016
            new UrlAlias(
5017
                [
5018
                    'id' => '3-' . md5('swap-that'),
5019
                    'type' => UrlAlias::LOCATION,
5020
                    'destination' => 319,
5021
                    'languageCodes' => [
5022
                        'cro-HR',
5023
                    ],
5024
                    'pathData' => [
5025
                        [
5026
                            'always-available' => false,
5027
                            'translations' => [
5028
                                'cro-HR' => 'dva',
5029
                            ],
5030
                        ],
5031
                        [
5032
                            'always-available' => false,
5033
                            'translations' => [
5034
                                'cro-HR' => 'swap-that',
5035
                            ],
5036
                        ],
5037
                    ],
5038
                    'alwaysAvailable' => false,
5039
                    'isHistory' => true,
5040
                    'isCustom' => false,
5041
                    'forward' => false,
5042
                ]
5043
            ),
5044
            $urlAlias
5045
        );
5046
5047
        $urlAlias = $handler->lookup('jedan/swap-this');
5048
        $this->assertEquals(
5049
            new UrlAlias(
5050
                [
5051
                    'id' => '2-' . md5('swap-this'),
5052
                    'type' => UrlAlias::LOCATION,
5053
                    'destination' => 318,
5054
                    'languageCodes' => [
5055
                        'cro-HR',
5056
                    ],
5057
                    'pathData' => [
5058
                        [
5059
                            'always-available' => false,
5060
                            'translations' => [
5061
                                'cro-HR' => 'jedan',
5062
                            ],
5063
                        ],
5064
                        [
5065
                            'always-available' => false,
5066
                            'translations' => [
5067
                                'cro-HR' => 'swap-this',
5068
                            ],
5069
                        ],
5070
                    ],
5071
                    'alwaysAvailable' => false,
5072
                    'isHistory' => true,
5073
                    'isCustom' => false,
5074
                    'forward' => false,
5075
                ]
5076
            ),
5077
            $urlAlias
5078
        );
5079
    }
5080
5081
    /**
5082
     * Test for the locationSwapped() method.
@@ 5086-5231 (lines=146) @@
5083
     *
5084
     * @group swap
5085
     */
5086
    public function testLocationSwappedWithReusingNopEntry()
5087
    {
5088
        $handler = $this->getHandler();
5089
        $this->insertDatabaseFixture(__DIR__ . '/_fixtures/urlaliases_swap_reusing_nop.php');
5090
5091
        $countBeforeReusing = $this->countRows();
5092
5093
        $handler->locationSwapped(316, 314, 317, 315);
5094
5095
        $this->assertEquals(
5096
            $countBeforeReusing + 1,
5097
            $this->countRows()
5098
        );
5099
5100
        $urlAlias = $handler->lookup('jedan/swap-that');
5101
        $this->assertEquals(
5102
            new UrlAlias(
5103
                [
5104
                    'id' => '2-' . md5('swap-that'),
5105
                    'type' => UrlAlias::LOCATION,
5106
                    'destination' => 316,
5107
                    'languageCodes' => [
5108
                        'cro-HR',
5109
                    ],
5110
                    'pathData' => [
5111
                        [
5112
                            'always-available' => false,
5113
                            'translations' => [
5114
                                'cro-HR' => 'jedan',
5115
                            ],
5116
                        ],
5117
                        [
5118
                            'always-available' => false,
5119
                            'translations' => [
5120
                                'cro-HR' => 'swap-that',
5121
                            ],
5122
                        ],
5123
                    ],
5124
                    'alwaysAvailable' => false,
5125
                    'isHistory' => false,
5126
                    'isCustom' => false,
5127
                    'forward' => false,
5128
                ]
5129
            ),
5130
            $urlAlias
5131
        );
5132
5133
        $urlAlias = $handler->lookup('dva/swap-this');
5134
        $this->assertEquals(
5135
            new UrlAlias(
5136
                [
5137
                    'id' => '3-' . md5('swap-this'),
5138
                    'type' => UrlAlias::LOCATION,
5139
                    'destination' => 317,
5140
                    'languageCodes' => [
5141
                        'cro-HR',
5142
                    ],
5143
                    'pathData' => [
5144
                        [
5145
                            'always-available' => false,
5146
                            'translations' => [
5147
                                'cro-HR' => 'dva',
5148
                            ],
5149
                        ],
5150
                        [
5151
                            'always-available' => false,
5152
                            'translations' => [
5153
                                'cro-HR' => 'swap-this',
5154
                            ],
5155
                        ],
5156
                    ],
5157
                    'alwaysAvailable' => false,
5158
                    'isHistory' => false,
5159
                    'isCustom' => false,
5160
                    'forward' => false,
5161
                ]
5162
            ),
5163
            $urlAlias
5164
        );
5165
5166
        $urlAlias = $handler->lookup('dva/swap-that');
5167
        $this->assertEquals(
5168
            new UrlAlias(
5169
                [
5170
                    'id' => '3-' . md5('swap-that'),
5171
                    'type' => UrlAlias::LOCATION,
5172
                    'destination' => 317,
5173
                    'languageCodes' => [
5174
                        'cro-HR',
5175
                    ],
5176
                    'pathData' => [
5177
                        [
5178
                            'always-available' => false,
5179
                            'translations' => [
5180
                                'cro-HR' => 'dva',
5181
                            ],
5182
                        ],
5183
                        [
5184
                            'always-available' => false,
5185
                            'translations' => [
5186
                                'cro-HR' => 'swap-that',
5187
                            ],
5188
                        ],
5189
                    ],
5190
                    'alwaysAvailable' => false,
5191
                    'isHistory' => true,
5192
                    'isCustom' => false,
5193
                    'forward' => false,
5194
                ]
5195
            ),
5196
            $urlAlias
5197
        );
5198
5199
        $urlAlias = $handler->lookup('jedan/swap-this');
5200
        $this->assertEquals(
5201
            new UrlAlias(
5202
                [
5203
                    'id' => '2-' . md5('swap-this'),
5204
                    'type' => UrlAlias::LOCATION,
5205
                    'destination' => 316,
5206
                    'languageCodes' => [
5207
                        'cro-HR',
5208
                    ],
5209
                    'pathData' => [
5210
                        [
5211
                            'always-available' => false,
5212
                            'translations' => [
5213
                                'cro-HR' => 'jedan',
5214
                            ],
5215
                        ],
5216
                        [
5217
                            'always-available' => false,
5218
                            'translations' => [
5219
                                'cro-HR' => 'swap-this',
5220
                            ],
5221
                        ],
5222
                    ],
5223
                    'alwaysAvailable' => false,
5224
                    'isHistory' => true,
5225
                    'isCustom' => false,
5226
                    'forward' => false,
5227
                ]
5228
            ),
5229
            $urlAlias
5230
        );
5231
    }
5232
5233
    /**
5234
     * Test for the locationSwapped() method.