Code Duplication    Length = 146-146 lines in 3 locations

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

@@ 3220-3365 (lines=146) @@
3217
     *
3218
     * @group swap
3219
     */
3220
    public function testLocationSwappedSimpleWithHistory()
3221
    {
3222
        $handler = $this->getHandler();
3223
        $this->insertDatabaseFixture(__DIR__ . '/_fixtures/urlaliases_swap_simple_history.php');
3224
3225
        $countBeforeReusing = $this->countRows();
3226
3227
        $handler->locationSwapped(316, 314, 317, 315);
3228
3229
        $this->assertEquals(
3230
            $countBeforeReusing,
3231
            $this->countRows()
3232
        );
3233
3234
        $urlAlias = $handler->lookup('jedan/swap');
3235
        $this->assertEquals(
3236
            new UrlAlias(
3237
                [
3238
                    'id' => '2-' . md5('swap'),
3239
                    'type' => UrlAlias::LOCATION,
3240
                    'destination' => 316,
3241
                    'languageCodes' => [
3242
                        'cro-HR',
3243
                    ],
3244
                    'pathData' => [
3245
                        [
3246
                            'always-available' => false,
3247
                            'translations' => [
3248
                                'cro-HR' => 'jedan',
3249
                            ],
3250
                        ],
3251
                        [
3252
                            'always-available' => false,
3253
                            'translations' => [
3254
                                'cro-HR' => 'swap',
3255
                            ],
3256
                        ],
3257
                    ],
3258
                    'alwaysAvailable' => false,
3259
                    'isHistory' => true,
3260
                    'isCustom' => false,
3261
                    'forward' => false,
3262
                ]
3263
            ),
3264
            $urlAlias
3265
        );
3266
3267
        $urlAlias = $handler->lookup('dva/swap');
3268
        $this->assertEquals(
3269
            new UrlAlias(
3270
                [
3271
                    'id' => '3-' . md5('swap'),
3272
                    'type' => UrlAlias::LOCATION,
3273
                    'destination' => 317,
3274
                    'languageCodes' => [
3275
                        'cro-HR',
3276
                    ],
3277
                    'pathData' => [
3278
                        [
3279
                            'always-available' => false,
3280
                            'translations' => [
3281
                                'cro-HR' => 'dva',
3282
                            ],
3283
                        ],
3284
                        [
3285
                            'always-available' => false,
3286
                            'translations' => [
3287
                                'cro-HR' => 'swap',
3288
                            ],
3289
                        ],
3290
                    ],
3291
                    'alwaysAvailable' => false,
3292
                    'isHistory' => true,
3293
                    'isCustom' => false,
3294
                    'forward' => false,
3295
                ]
3296
            ),
3297
            $urlAlias
3298
        );
3299
3300
        $urlAlias = $handler->lookup('jedan/swap-new');
3301
        $this->assertEquals(
3302
            new UrlAlias(
3303
                [
3304
                    'id' => '2-' . md5('swap-new'),
3305
                    'type' => UrlAlias::LOCATION,
3306
                    'destination' => 316,
3307
                    'languageCodes' => [
3308
                        'cro-HR',
3309
                    ],
3310
                    'pathData' => [
3311
                        [
3312
                            'always-available' => false,
3313
                            'translations' => [
3314
                                'cro-HR' => 'jedan',
3315
                            ],
3316
                        ],
3317
                        [
3318
                            'always-available' => false,
3319
                            'translations' => [
3320
                                'cro-HR' => 'swap-new',
3321
                            ],
3322
                        ],
3323
                    ],
3324
                    'alwaysAvailable' => false,
3325
                    'isHistory' => false,
3326
                    'isCustom' => false,
3327
                    'forward' => false,
3328
                ]
3329
            ),
3330
            $urlAlias
3331
        );
3332
3333
        $urlAlias = $handler->lookup('dva/swap-new');
3334
        $this->assertEquals(
3335
            new UrlAlias(
3336
                [
3337
                    'id' => '3-' . md5('swap-new'),
3338
                    'type' => UrlAlias::LOCATION,
3339
                    'destination' => 317,
3340
                    'languageCodes' => [
3341
                        'cro-HR',
3342
                    ],
3343
                    'pathData' => [
3344
                        [
3345
                            'always-available' => false,
3346
                            'translations' => [
3347
                                'cro-HR' => 'dva',
3348
                            ],
3349
                        ],
3350
                        [
3351
                            'always-available' => false,
3352
                            'translations' => [
3353
                                'cro-HR' => 'swap-new',
3354
                            ],
3355
                        ],
3356
                    ],
3357
                    'alwaysAvailable' => false,
3358
                    'isHistory' => false,
3359
                    'isCustom' => false,
3360
                    'forward' => false,
3361
                ]
3362
            ),
3363
            $urlAlias
3364
        );
3365
    }
3366
3367
    /**
3368
     * Test for the locationSwapped() method.
@@ 4870-5015 (lines=146) @@
4867
     *
4868
     * @group swap
4869
     */
4870
    public function testLocationSwappedWithReusingExternalHistory()
4871
    {
4872
        $handler = $this->getHandler();
4873
        $this->insertDatabaseFixture(__DIR__ . '/_fixtures/urlaliases_swap_reusing_external_history.php');
4874
4875
        $countBeforeReusing = $this->countRows();
4876
4877
        $handler->locationSwapped(318, 314, 319, 315);
4878
4879
        $this->assertEquals(
4880
            $countBeforeReusing,
4881
            $this->countRows()
4882
        );
4883
4884
        $urlAlias = $handler->lookup('jedan/swap-that');
4885
        $this->assertEquals(
4886
            new UrlAlias(
4887
                [
4888
                    'id' => '2-' . md5('swap-that'),
4889
                    'type' => UrlAlias::LOCATION,
4890
                    'destination' => 318,
4891
                    'languageCodes' => [
4892
                        'cro-HR',
4893
                    ],
4894
                    'pathData' => [
4895
                        [
4896
                            'always-available' => false,
4897
                            'translations' => [
4898
                                'cro-HR' => 'jedan',
4899
                            ],
4900
                        ],
4901
                        [
4902
                            'always-available' => false,
4903
                            'translations' => [
4904
                                'cro-HR' => 'swap-that',
4905
                            ],
4906
                        ],
4907
                    ],
4908
                    'alwaysAvailable' => false,
4909
                    'isHistory' => false,
4910
                    'isCustom' => false,
4911
                    'forward' => false,
4912
                ]
4913
            ),
4914
            $urlAlias
4915
        );
4916
4917
        $urlAlias = $handler->lookup('dva/swap-this');
4918
        $this->assertEquals(
4919
            new UrlAlias(
4920
                [
4921
                    'id' => '3-' . md5('swap-this'),
4922
                    'type' => UrlAlias::LOCATION,
4923
                    'destination' => 319,
4924
                    'languageCodes' => [
4925
                        'cro-HR',
4926
                    ],
4927
                    'pathData' => [
4928
                        [
4929
                            'always-available' => false,
4930
                            'translations' => [
4931
                                'cro-HR' => 'dva',
4932
                            ],
4933
                        ],
4934
                        [
4935
                            'always-available' => false,
4936
                            'translations' => [
4937
                                'cro-HR' => 'swap-this',
4938
                            ],
4939
                        ],
4940
                    ],
4941
                    'alwaysAvailable' => false,
4942
                    'isHistory' => false,
4943
                    'isCustom' => false,
4944
                    'forward' => false,
4945
                ]
4946
            ),
4947
            $urlAlias
4948
        );
4949
4950
        $urlAlias = $handler->lookup('dva/swap-that');
4951
        $this->assertEquals(
4952
            new UrlAlias(
4953
                [
4954
                    'id' => '3-' . md5('swap-that'),
4955
                    'type' => UrlAlias::LOCATION,
4956
                    'destination' => 319,
4957
                    'languageCodes' => [
4958
                        'cro-HR',
4959
                    ],
4960
                    'pathData' => [
4961
                        [
4962
                            'always-available' => false,
4963
                            'translations' => [
4964
                                'cro-HR' => 'dva',
4965
                            ],
4966
                        ],
4967
                        [
4968
                            'always-available' => false,
4969
                            'translations' => [
4970
                                'cro-HR' => 'swap-that',
4971
                            ],
4972
                        ],
4973
                    ],
4974
                    'alwaysAvailable' => false,
4975
                    'isHistory' => true,
4976
                    'isCustom' => false,
4977
                    'forward' => false,
4978
                ]
4979
            ),
4980
            $urlAlias
4981
        );
4982
4983
        $urlAlias = $handler->lookup('jedan/swap-this');
4984
        $this->assertEquals(
4985
            new UrlAlias(
4986
                [
4987
                    'id' => '2-' . md5('swap-this'),
4988
                    'type' => UrlAlias::LOCATION,
4989
                    'destination' => 318,
4990
                    'languageCodes' => [
4991
                        'cro-HR',
4992
                    ],
4993
                    'pathData' => [
4994
                        [
4995
                            'always-available' => false,
4996
                            'translations' => [
4997
                                'cro-HR' => 'jedan',
4998
                            ],
4999
                        ],
5000
                        [
5001
                            'always-available' => false,
5002
                            'translations' => [
5003
                                'cro-HR' => 'swap-this',
5004
                            ],
5005
                        ],
5006
                    ],
5007
                    'alwaysAvailable' => false,
5008
                    'isHistory' => true,
5009
                    'isCustom' => false,
5010
                    'forward' => false,
5011
                ]
5012
            ),
5013
            $urlAlias
5014
        );
5015
    }
5016
5017
    /**
5018
     * Test for the locationSwapped() method.
@@ 5022-5167 (lines=146) @@
5019
     *
5020
     * @group swap
5021
     */
5022
    public function testLocationSwappedWithReusingNopEntry()
5023
    {
5024
        $handler = $this->getHandler();
5025
        $this->insertDatabaseFixture(__DIR__ . '/_fixtures/urlaliases_swap_reusing_nop.php');
5026
5027
        $countBeforeReusing = $this->countRows();
5028
5029
        $handler->locationSwapped(316, 314, 317, 315);
5030
5031
        $this->assertEquals(
5032
            $countBeforeReusing + 1,
5033
            $this->countRows()
5034
        );
5035
5036
        $urlAlias = $handler->lookup('jedan/swap-that');
5037
        $this->assertEquals(
5038
            new UrlAlias(
5039
                [
5040
                    'id' => '2-' . md5('swap-that'),
5041
                    'type' => UrlAlias::LOCATION,
5042
                    'destination' => 316,
5043
                    'languageCodes' => [
5044
                        'cro-HR',
5045
                    ],
5046
                    'pathData' => [
5047
                        [
5048
                            'always-available' => false,
5049
                            'translations' => [
5050
                                'cro-HR' => 'jedan',
5051
                            ],
5052
                        ],
5053
                        [
5054
                            'always-available' => false,
5055
                            'translations' => [
5056
                                'cro-HR' => 'swap-that',
5057
                            ],
5058
                        ],
5059
                    ],
5060
                    'alwaysAvailable' => false,
5061
                    'isHistory' => false,
5062
                    'isCustom' => false,
5063
                    'forward' => false,
5064
                ]
5065
            ),
5066
            $urlAlias
5067
        );
5068
5069
        $urlAlias = $handler->lookup('dva/swap-this');
5070
        $this->assertEquals(
5071
            new UrlAlias(
5072
                [
5073
                    'id' => '3-' . md5('swap-this'),
5074
                    'type' => UrlAlias::LOCATION,
5075
                    'destination' => 317,
5076
                    'languageCodes' => [
5077
                        'cro-HR',
5078
                    ],
5079
                    'pathData' => [
5080
                        [
5081
                            'always-available' => false,
5082
                            'translations' => [
5083
                                'cro-HR' => 'dva',
5084
                            ],
5085
                        ],
5086
                        [
5087
                            'always-available' => false,
5088
                            'translations' => [
5089
                                'cro-HR' => 'swap-this',
5090
                            ],
5091
                        ],
5092
                    ],
5093
                    'alwaysAvailable' => false,
5094
                    'isHistory' => false,
5095
                    'isCustom' => false,
5096
                    'forward' => false,
5097
                ]
5098
            ),
5099
            $urlAlias
5100
        );
5101
5102
        $urlAlias = $handler->lookup('dva/swap-that');
5103
        $this->assertEquals(
5104
            new UrlAlias(
5105
                [
5106
                    'id' => '3-' . md5('swap-that'),
5107
                    'type' => UrlAlias::LOCATION,
5108
                    'destination' => 317,
5109
                    'languageCodes' => [
5110
                        'cro-HR',
5111
                    ],
5112
                    'pathData' => [
5113
                        [
5114
                            'always-available' => false,
5115
                            'translations' => [
5116
                                'cro-HR' => 'dva',
5117
                            ],
5118
                        ],
5119
                        [
5120
                            'always-available' => false,
5121
                            'translations' => [
5122
                                'cro-HR' => 'swap-that',
5123
                            ],
5124
                        ],
5125
                    ],
5126
                    'alwaysAvailable' => false,
5127
                    'isHistory' => true,
5128
                    'isCustom' => false,
5129
                    'forward' => false,
5130
                ]
5131
            ),
5132
            $urlAlias
5133
        );
5134
5135
        $urlAlias = $handler->lookup('jedan/swap-this');
5136
        $this->assertEquals(
5137
            new UrlAlias(
5138
                [
5139
                    'id' => '2-' . md5('swap-this'),
5140
                    'type' => UrlAlias::LOCATION,
5141
                    'destination' => 316,
5142
                    'languageCodes' => [
5143
                        'cro-HR',
5144
                    ],
5145
                    'pathData' => [
5146
                        [
5147
                            'always-available' => false,
5148
                            'translations' => [
5149
                                'cro-HR' => 'jedan',
5150
                            ],
5151
                        ],
5152
                        [
5153
                            'always-available' => false,
5154
                            'translations' => [
5155
                                'cro-HR' => 'swap-this',
5156
                            ],
5157
                        ],
5158
                    ],
5159
                    'alwaysAvailable' => false,
5160
                    'isHistory' => true,
5161
                    'isCustom' => false,
5162
                    'forward' => false,
5163
                ]
5164
            ),
5165
            $urlAlias
5166
        );
5167
    }
5168
5169
    /**
5170
     * Test for the locationSwapped() method.