@SmallTest public void testGetEnum() { SharedPreferences sharedPreferences = MozcPreferenceUtil.getSharedPreferences( getInstrumentation().getContext(), "CLIENT_SIDE_PREF"); SharedPreferences.Editor editor = sharedPreferences.edit(); String key1 = "key1"; editor.putString(key1, "ALPHA"); String key2 = "key2"; editor.putString(key2, "DELTA"); editor.commit(); assertEquals( TestGetEnum.BETA, PreferenceUtil.getEnum( sharedPreferences, key1, TestGetEnum.class, TestGetEnum.GAMMA, TestGetEnum.BETA)); assertEquals( TestGetEnum.GAMMA, PreferenceUtil.getEnum(sharedPreferences, key1, TestGetEnum.class, TestGetEnum.GAMMA)); assertEquals( TestGetEnum.DELTA, PreferenceUtil.getEnum(sharedPreferences, key2, TestGetEnum.class, TestGetEnum.GAMMA)); }
@SmallTest public void testClientSidePreferenceSharedPreferencesConfiguration() { SharedPreferences sharedPreferences = MozcPreferenceUtil.getSharedPreferences( getInstrumentation().getContext(), "CLIENT_SIDE_PREF"); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_PORTRAIT_KEYBOARD_LAYOUT_KEY, PORTRAIT_KEYBOARD_LAYOUT.name()); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_PORTRAIT_INPUT_STYLE_KEY, PORTRAIT_INPUT_STYLE.name()); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_PORTRAIT_QWERTY_LAYOUT_FOR_ALPHABET_KEY, PORTRAIT_QWERTY_LAYOUT_FOR_ALPHABET); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_PORTRAIT_FLICK_SENSITIVITY_KEY, PORTRAIT_FLICK_SENSITIVITY); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_LANDSCAPE_KEYBOARD_LAYOUT_KEY, LANDSCAPE_KEYBOARD_LAYOUT.name()); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_LANDSCAPE_INPUT_STYLE_KEY, LANDSCAPE_INPUT_STYLE.name()); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_LANDSCAPE_QWERTY_LAYOUT_FOR_ALPHABET_KEY, LANDSCAPE_QWERTY_LAYOUT_FOR_ALPHABET); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_LANDSCAPE_FLICK_SENSITIVITY_KEY, LANDSCAPE_FLICK_SENSITIVITY); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_PORTRAIT_FULLSCREEN_KEY, PORTRAIT_FULLSCREEN_MODE); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_LANDSCAPE_FULLSCREEN_KEY, LANDSCAPE_FULLSCREEN_MODE); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_PORTRAIT_LAYOUT_ADJUSTMENT_KEY, PORTRAIT_LAYOUT_ADJUSTMENT.name()); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_LANDSCAPE_LAYOUT_ADJUSTMENT_KEY, LANDSCAPE_LAYOUT_ADJUSTMENT.name()); MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_SKIN_TYPE, SkinType.BLUE_LIGHTGRAY.name()); class TestData extends Parameter { final int orientation; final boolean usePortraitKeyboardSettingsForLandscape; final KeyboardLayout expectedKeyboardLayout; final InputStyle expectedInputStyle; final boolean expectedQwertyLayoutForAlphabet; final int expectedFlickSensitivity; final boolean expectedFullscreenMode; final LayoutAdjustment expectedLayoutAdjustment; final SkinType expectedSkinType; TestData( int orientation, boolean usePortraitKeyboardSettingsForLandscape, KeyboardLayout expectedKeyboardLayout, InputStyle expectedInputStyle, boolean expectedQwertyLayoutForAlphabet, int expectedFlickSensitivity, LayoutAdjustment expectedLayoutAdjustment, boolean expectedFullscreenMode, SkinType expectedSkinType) { this.orientation = orientation; this.usePortraitKeyboardSettingsForLandscape = usePortraitKeyboardSettingsForLandscape; this.expectedKeyboardLayout = expectedKeyboardLayout; this.expectedInputStyle = expectedInputStyle; this.expectedQwertyLayoutForAlphabet = expectedQwertyLayoutForAlphabet; this.expectedFlickSensitivity = expectedFlickSensitivity; this.expectedLayoutAdjustment = expectedLayoutAdjustment; this.expectedFullscreenMode = expectedFullscreenMode; this.expectedSkinType = expectedSkinType; } } TestData[] testDataList = { new TestData( Configuration.ORIENTATION_PORTRAIT, false, PORTRAIT_KEYBOARD_LAYOUT, PORTRAIT_INPUT_STYLE, PORTRAIT_QWERTY_LAYOUT_FOR_ALPHABET, PORTRAIT_FLICK_SENSITIVITY, PORTRAIT_LAYOUT_ADJUSTMENT, PORTRAIT_FULLSCREEN_MODE, SkinType.BLUE_LIGHTGRAY), new TestData( Configuration.ORIENTATION_LANDSCAPE, false, LANDSCAPE_KEYBOARD_LAYOUT, LANDSCAPE_INPUT_STYLE, LANDSCAPE_QWERTY_LAYOUT_FOR_ALPHABET, LANDSCAPE_FLICK_SENSITIVITY, LANDSCAPE_LAYOUT_ADJUSTMENT, LANDSCAPE_FULLSCREEN_MODE, SkinType.BLUE_LIGHTGRAY), new TestData( Configuration.ORIENTATION_PORTRAIT, true, PORTRAIT_KEYBOARD_LAYOUT, PORTRAIT_INPUT_STYLE, PORTRAIT_QWERTY_LAYOUT_FOR_ALPHABET, PORTRAIT_FLICK_SENSITIVITY, PORTRAIT_LAYOUT_ADJUSTMENT, PORTRAIT_FULLSCREEN_MODE, SkinType.BLUE_LIGHTGRAY), new TestData( Configuration.ORIENTATION_LANDSCAPE, true, PORTRAIT_KEYBOARD_LAYOUT, PORTRAIT_INPUT_STYLE, PORTRAIT_QWERTY_LAYOUT_FOR_ALPHABET, PORTRAIT_FLICK_SENSITIVITY, PORTRAIT_LAYOUT_ADJUSTMENT, LANDSCAPE_FULLSCREEN_MODE, SkinType.BLUE_LIGHTGRAY), }; for (TestData testData : testDataList) { MozcPreferenceUtil.updateSharedPreference( sharedPreferences, PreferenceUtil.PREF_USE_PORTRAIT_KEYBOARD_SETTINGS_FOR_LANDSCAPE_KEY, testData.usePortraitKeyboardSettingsForLandscape); Configuration configuration = new Configuration(); configuration.orientation = testData.orientation; ClientSidePreference preference = new ClientSidePreference(sharedPreferences, configuration); assertEquals( testData.toString(), testData.expectedKeyboardLayout, preference.getKeyboardLayout()); assertEquals(testData.toString(), testData.expectedInputStyle, preference.getInputStyle()); assertEquals( testData.toString(), testData.expectedQwertyLayoutForAlphabet, preference.isQwertyLayoutForAlphabet()); assertEquals( testData.toString(), testData.expectedFlickSensitivity, preference.getFlickSensitivity()); assertEquals( testData.toString(), testData.expectedLayoutAdjustment, preference.getLayoutAdjustment()); assertEquals( testData.toString(), testData.expectedFullscreenMode, preference.isFullscreenMode()); assertEquals(testData.toString(), testData.expectedSkinType, preference.getSkinType()); } }