Code Duplication    Length = 146-146 lines in 3 locations

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

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