| @@ 2906-2952 (lines=47) @@ | ||
| 2903 | * |
|
| 2904 | * @dataProvider providerForTestLookup |
|
| 2905 | */ |
|
| 2906 | public function testLookup($prioritizedLanguageList, $showAllTranslations, $alwaysAvailable, $languageCode) |
|
| 2907 | { |
|
| 2908 | $urlAliasService = $this->getRepository()->getURLAliasService(); |
|
| 2909 | $configuration = array( |
|
| 2910 | 'prioritizedLanguageList' => $prioritizedLanguageList, |
|
| 2911 | 'showAllTranslations' => $showAllTranslations, |
|
| 2912 | ); |
|
| 2913 | $this->setConfiguration($urlAliasService, $configuration); |
|
| 2914 | $urlAliasHandler = $this->getPersistenceMockHandler('Content\\UrlAlias\\Handler'); |
|
| 2915 | ||
| 2916 | $urlAliasHandler->expects( |
|
| 2917 | $this->once() |
|
| 2918 | )->method( |
|
| 2919 | 'lookup' |
|
| 2920 | )->with( |
|
| 2921 | $this->equalTo('jedan/dva') |
|
| 2922 | )->will( |
|
| 2923 | $this->returnValue( |
|
| 2924 | new SPIUrlAlias( |
|
| 2925 | array( |
|
| 2926 | 'pathData' => array( |
|
| 2927 | array( |
|
| 2928 | 'always-available' => $alwaysAvailable, |
|
| 2929 | 'translations' => array('cro-HR' => 'jedan'), |
|
| 2930 | ), |
|
| 2931 | array( |
|
| 2932 | 'always-available' => $alwaysAvailable, |
|
| 2933 | 'translations' => array( |
|
| 2934 | 'cro-HR' => 'dva', |
|
| 2935 | 'eng-GB' => 'two', |
|
| 2936 | ), |
|
| 2937 | ), |
|
| 2938 | ), |
|
| 2939 | 'languageCodes' => array('eng-GB', 'cro-HR'), |
|
| 2940 | 'alwaysAvailable' => $alwaysAvailable, |
|
| 2941 | ) |
|
| 2942 | ) |
|
| 2943 | ) |
|
| 2944 | ); |
|
| 2945 | ||
| 2946 | $urlAlias = $urlAliasService->lookup('jedan/dva', $languageCode); |
|
| 2947 | ||
| 2948 | self::assertInstanceOf( |
|
| 2949 | 'eZ\\Publish\\API\\Repository\\Values\\Content\\URLAlias', |
|
| 2950 | $urlAlias |
|
| 2951 | ); |
|
| 2952 | } |
|
| 2953 | ||
| 2954 | public function providerForTestLookupWithSharedTranslation() |
|
| 2955 | { |
|
| @@ 2980-3030 (lines=51) @@ | ||
| 2977 | * |
|
| 2978 | * @dataProvider providerForTestLookupWithSharedTranslation |
|
| 2979 | */ |
|
| 2980 | public function testLookupWithSharedTranslation( |
|
| 2981 | $prioritizedLanguageList, |
|
| 2982 | $showAllTranslations, |
|
| 2983 | $alwaysAvailable, |
|
| 2984 | $languageCode |
|
| 2985 | ) { |
|
| 2986 | $urlAliasService = $this->getRepository()->getURLAliasService(); |
|
| 2987 | $configuration = array( |
|
| 2988 | 'prioritizedLanguageList' => $prioritizedLanguageList, |
|
| 2989 | 'showAllTranslations' => $showAllTranslations, |
|
| 2990 | ); |
|
| 2991 | $this->setConfiguration($urlAliasService, $configuration); |
|
| 2992 | $urlAliasHandler = $this->getPersistenceMockHandler('Content\\UrlAlias\\Handler'); |
|
| 2993 | ||
| 2994 | $urlAliasHandler->expects( |
|
| 2995 | $this->once() |
|
| 2996 | )->method( |
|
| 2997 | 'lookup' |
|
| 2998 | )->with( |
|
| 2999 | $this->equalTo('jedan/two') |
|
| 3000 | )->will( |
|
| 3001 | $this->returnValue( |
|
| 3002 | new SPIUrlAlias( |
|
| 3003 | array( |
|
| 3004 | 'pathData' => array( |
|
| 3005 | array( |
|
| 3006 | 'always-available' => $alwaysAvailable, |
|
| 3007 | 'translations' => array( |
|
| 3008 | 'cro-HR' => 'jedan', |
|
| 3009 | 'eng-GB' => 'jedan', |
|
| 3010 | ), |
|
| 3011 | ), |
|
| 3012 | array( |
|
| 3013 | 'always-available' => $alwaysAvailable, |
|
| 3014 | 'translations' => array( |
|
| 3015 | 'cro-HR' => 'two', |
|
| 3016 | 'eng-GB' => 'two', |
|
| 3017 | ), |
|
| 3018 | ), |
|
| 3019 | ), |
|
| 3020 | 'languageCodes' => array('eng-GB', 'cro-HR'), |
|
| 3021 | 'alwaysAvailable' => $alwaysAvailable, |
|
| 3022 | ) |
|
| 3023 | ) |
|
| 3024 | ) |
|
| 3025 | ); |
|
| 3026 | ||
| 3027 | $urlAlias = $urlAliasService->lookup('jedan/two', $languageCode); |
|
| 3028 | ||
| 3029 | self::assertInstanceOf(URLAlias::class, $urlAlias); |
|
| 3030 | } |
|
| 3031 | ||
| 3032 | /** |
|
| 3033 | * Test for the reverseLookup() method. |
|