Code Duplication    Length = 146-146 lines in 3 locations

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

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