Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a95f2d37 authored by Isaac Chai's avatar Isaac Chai
Browse files

Fix test for MagnificationOneFinger preference test

Test: Locally ran and passed
Bug: 329189635, 329188827
Change-Id: I2c4948cb47aac28d403edfc94aa3b8dfe766f6f8
parent 3085f01f
Loading
Loading
Loading
Loading
+11 −16
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.settings.accessibility;

import static com.android.server.accessibility.Flags.enableMagnificationOneFingerPanningGesture;
import static com.android.settings.accessibility.AccessibilityUtil.State.OFF;
import static com.android.settings.accessibility.AccessibilityUtil.State.ON;
import static com.android.settings.core.BasePreferenceController.AVAILABLE;
@@ -28,7 +27,10 @@ import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;

import android.content.Context;
import android.platform.test.flag.junit.SetFlagsRule;
import android.platform.test.annotations.RequiresFlagsDisabled;
import android.platform.test.annotations.RequiresFlagsEnabled;
import android.platform.test.flag.junit.CheckFlagsRule;
import android.platform.test.flag.junit.DeviceFlagsValueProvider;
import android.provider.Settings;

import androidx.preference.PreferenceManager;
@@ -51,8 +53,9 @@ public class MagnificationOneFingerPanningPreferenceControllerTest {
    private static final String ONE_FINGER_PANNING_KEY =
            Settings.Secure.ACCESSIBILITY_SINGLE_FINGER_PANNING_ENABLED;

    @Rule public final SetFlagsRule mSetFlagsRule =
            new SetFlagsRule(SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT);
    @Rule
    public final CheckFlagsRule mCheckFlagsRule =
            DeviceFlagsValueProvider.createCheckFlagsRule();

    private final Context mContext = ApplicationProvider.getApplicationContext();
    private final SwitchPreference mSwitchPreference = spy(new SwitchPreference(mContext));
@@ -88,16 +91,16 @@ public class MagnificationOneFingerPanningPreferenceControllerTest {
    }

    @Test
    public void getAvailabilityStatus_defaultState_disabled() {
    @RequiresFlagsDisabled(Flags.FLAG_ENABLE_MAGNIFICATION_ONE_FINGER_PANNING_GESTURE)
    public void getAvailabilityStatus_flagDisabled_disabled() {
        int status = mController.getAvailabilityStatus();

        assertThat(status).isEqualTo(DISABLED_FOR_USER);
    }

    @Test
    @RequiresFlagsEnabled(Flags.FLAG_ENABLE_MAGNIFICATION_ONE_FINGER_PANNING_GESTURE)
    public void getAvailabilityStatus_featureFlagEnabled_enabled() {
        enableFlag();

        int status = mController.getAvailabilityStatus();

        assertThat(status).isEqualTo(AVAILABLE);
@@ -158,9 +161,8 @@ public class MagnificationOneFingerPanningPreferenceControllerTest {
    }

    @Test
    @RequiresFlagsEnabled(Flags.FLAG_ENABLE_MAGNIFICATION_ONE_FINGER_PANNING_GESTURE)
    public void performClick_switchDefaultState_shouldReturnTrue() {
        enableFlag();

        mSwitchPreference.performClick();

        verify(mSwitchPreference).setChecked(true);
@@ -168,13 +170,6 @@ public class MagnificationOneFingerPanningPreferenceControllerTest {
        assertThat(mSwitchPreference.isChecked()).isTrue();
    }

    private void enableFlag() {
        mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_MAGNIFICATION_ONE_FINGER_PANNING_GESTURE);
        assertThat(enableMagnificationOneFingerPanningGesture()).isTrue();
        // This ensures that preference change listeners are added correctly.
        mController.displayPreference(mScreen);
    }

    private String enabledSummary() {
        return mContext.getString(
                R.string.accessibility_magnification_one_finger_panning_summary_on);