| @@ 2876-2922 (lines=47) @@ | ||
| 2873 | * |
|
| 2874 | * @dataProvider providerForTestLookup |
|
| 2875 | */ |
|
| 2876 | public function testLookup($prioritizedLanguageList, $showAllTranslations, $alwaysAvailable, $languageCode) |
|
| 2877 | { |
|
| 2878 | $urlAliasService = $this->getRepository()->getURLAliasService(); |
|
| 2879 | $configuration = array( |
|
| 2880 | 'prioritizedLanguageList' => $prioritizedLanguageList, |
|
| 2881 | 'showAllTranslations' => $showAllTranslations, |
|
| 2882 | ); |
|
| 2883 | $this->setConfiguration($urlAliasService, $configuration); |
|
| 2884 | $urlAliasHandler = $this->getPersistenceMockHandler('Content\\UrlAlias\\Handler'); |
|
| 2885 | ||
| 2886 | $urlAliasHandler->expects( |
|
| 2887 | $this->once() |
|
| 2888 | )->method( |
|
| 2889 | 'lookup' |
|
| 2890 | )->with( |
|
| 2891 | $this->equalTo('jedan/dva') |
|
| 2892 | )->will( |
|
| 2893 | $this->returnValue( |
|
| 2894 | new SPIUrlAlias( |
|
| 2895 | array( |
|
| 2896 | 'pathData' => array( |
|
| 2897 | array( |
|
| 2898 | 'always-available' => $alwaysAvailable, |
|
| 2899 | 'translations' => array('cro-HR' => 'jedan'), |
|
| 2900 | ), |
|
| 2901 | array( |
|
| 2902 | 'always-available' => $alwaysAvailable, |
|
| 2903 | 'translations' => array( |
|
| 2904 | 'cro-HR' => 'dva', |
|
| 2905 | 'eng-GB' => 'two', |
|
| 2906 | ), |
|
| 2907 | ), |
|
| 2908 | ), |
|
| 2909 | 'languageCodes' => array('eng-GB', 'cro-HR'), |
|
| 2910 | 'alwaysAvailable' => $alwaysAvailable, |
|
| 2911 | ) |
|
| 2912 | ) |
|
| 2913 | ) |
|
| 2914 | ); |
|
| 2915 | ||
| 2916 | $urlAlias = $urlAliasService->lookup('jedan/dva', $languageCode); |
|
| 2917 | ||
| 2918 | self::assertInstanceOf( |
|
| 2919 | 'eZ\\Publish\\API\\Repository\\Values\\Content\\URLAlias', |
|
| 2920 | $urlAlias |
|
| 2921 | ); |
|
| 2922 | } |
|
| 2923 | ||
| 2924 | public function providerForTestLookupWithSharedTranslation() |
|
| 2925 | { |
|
| @@ 2950-3003 (lines=54) @@ | ||
| 2947 | * |
|
| 2948 | * @dataProvider providerForTestLookupWithSharedTranslation |
|
| 2949 | */ |
|
| 2950 | public function testLookupWithSharedTranslation( |
|
| 2951 | $prioritizedLanguageList, |
|
| 2952 | $showAllTranslations, |
|
| 2953 | $alwaysAvailable, |
|
| 2954 | $languageCode |
|
| 2955 | ) { |
|
| 2956 | $urlAliasService = $this->getRepository()->getURLAliasService(); |
|
| 2957 | $configuration = array( |
|
| 2958 | 'prioritizedLanguageList' => $prioritizedLanguageList, |
|
| 2959 | 'showAllTranslations' => $showAllTranslations, |
|
| 2960 | ); |
|
| 2961 | $this->setConfiguration($urlAliasService, $configuration); |
|
| 2962 | $urlAliasHandler = $this->getPersistenceMockHandler('Content\\UrlAlias\\Handler'); |
|
| 2963 | ||
| 2964 | $urlAliasHandler->expects( |
|
| 2965 | $this->once() |
|
| 2966 | )->method( |
|
| 2967 | 'lookup' |
|
| 2968 | )->with( |
|
| 2969 | $this->equalTo('jedan/two') |
|
| 2970 | )->will( |
|
| 2971 | $this->returnValue( |
|
| 2972 | new SPIUrlAlias( |
|
| 2973 | array( |
|
| 2974 | 'pathData' => array( |
|
| 2975 | array( |
|
| 2976 | 'always-available' => $alwaysAvailable, |
|
| 2977 | 'translations' => array( |
|
| 2978 | 'cro-HR' => 'jedan', |
|
| 2979 | 'eng-GB' => 'jedan', |
|
| 2980 | ), |
|
| 2981 | ), |
|
| 2982 | array( |
|
| 2983 | 'always-available' => $alwaysAvailable, |
|
| 2984 | 'translations' => array( |
|
| 2985 | 'cro-HR' => 'two', |
|
| 2986 | 'eng-GB' => 'two', |
|
| 2987 | ), |
|
| 2988 | ), |
|
| 2989 | ), |
|
| 2990 | 'languageCodes' => array('eng-GB', 'cro-HR'), |
|
| 2991 | 'alwaysAvailable' => $alwaysAvailable, |
|
| 2992 | ) |
|
| 2993 | ) |
|
| 2994 | ) |
|
| 2995 | ); |
|
| 2996 | ||
| 2997 | $urlAlias = $urlAliasService->lookup('jedan/two', $languageCode); |
|
| 2998 | ||
| 2999 | self::assertInstanceOf( |
|
| 3000 | 'eZ\\Publish\\API\\Repository\\Values\\Content\\URLAlias', |
|
| 3001 | $urlAlias |
|
| 3002 | ); |
|
| 3003 | } |
|
| 3004 | ||
| 3005 | /** |
|
| 3006 | * Test for the reverseLookup() method. |
|