Code Duplication    Length = 146-146 lines in 3 locations

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

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