Merge "Fix broken test"

This commit is contained in:
TreeHugger Robot
2020-12-24 10:41:18 +00:00
committed by Android (Google) Code Review

View File

@@ -24,12 +24,18 @@ import static org.robolectric.RuntimeEnvironment.application;
import android.app.Activity; import android.app.Activity;
import android.app.KeyguardManager; import android.app.KeyguardManager;
import android.content.Intent; import android.content.Intent;
import android.content.pm.PackageManager;
import android.hardware.biometrics.SensorProperties;
import android.hardware.fingerprint.FingerprintSensorProperties;
import android.hardware.fingerprint.FingerprintSensorPropertiesInternal;
import android.view.View; import android.view.View;
import android.widget.Button; import android.widget.Button;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.shadow.ShadowFingerprintManager;
import com.android.settings.testutils.shadow.ShadowLockPatternUtils; import com.android.settings.testutils.shadow.ShadowLockPatternUtils;
import com.android.settings.testutils.shadow.ShadowStorageManager;
import com.android.settings.testutils.shadow.ShadowUserManager; import com.android.settings.testutils.shadow.ShadowUserManager;
import com.google.android.setupcompat.PartnerCustomizationLayout; import com.google.android.setupcompat.PartnerCustomizationLayout;
@@ -46,18 +52,39 @@ import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowActivity; import org.robolectric.shadows.ShadowActivity;
import org.robolectric.shadows.ShadowKeyguardManager; import org.robolectric.shadows.ShadowKeyguardManager;
@RunWith(RobolectricTestRunner.class) import java.util.ArrayList;
@Config(shadows = {ShadowLockPatternUtils.class, ShadowUserManager.class})
public class FingerprintSuggestionActivityTest {
@RunWith(RobolectricTestRunner.class)
@Config(shadows = {
ShadowFingerprintManager.class,
ShadowLockPatternUtils.class,
ShadowStorageManager.class,
ShadowUserManager.class
})
public class FingerprintSuggestionActivityTest {
private FingerprintSuggestionActivity mActivity;
private ActivityController<FingerprintSuggestionActivity> mController; private ActivityController<FingerprintSuggestionActivity> mController;
@Before @Before
public void setUp() { public void setUp() {
Shadows.shadowOf(application.getPackageManager())
.setSystemFeature(PackageManager.FEATURE_FINGERPRINT, true);
final FingerprintSensorPropertiesInternal prop = new FingerprintSensorPropertiesInternal(
0 /* sensorId */,
SensorProperties.STRENGTH_STRONG,
5 /* maxEnrollmentsPerUser */,
FingerprintSensorProperties.TYPE_REAR,
true /* resetLockoutRequiresHardwareAuthToken */);
final ArrayList<FingerprintSensorPropertiesInternal> props = new ArrayList<>();
props.add(prop);
ShadowFingerprintManager.setSensorProperties(props);
FakeFeatureFactory.setupForTest(); FakeFeatureFactory.setupForTest();
final Intent intent = new Intent(); final Intent intent = new Intent();
mController = Robolectric.buildActivity(FingerprintSuggestionActivity.class, intent); mController = Robolectric.buildActivity(FingerprintSuggestionActivity.class, intent);
mActivity = mController.get();
} }
@Test @Test
@@ -66,8 +93,7 @@ public class FingerprintSuggestionActivityTest {
mController.create().resume(); mController.create().resume();
PartnerCustomizationLayout layout = PartnerCustomizationLayout layout = mActivity.findViewById(R.id.setup_wizard_layout);
mController.get().findViewById(R.id.setup_wizard_layout);
final Button cancelButton = final Button cancelButton =
layout.getMixin(FooterBarMixin.class).getSecondaryButtonView(); layout.getMixin(FooterBarMixin.class).getSecondaryButtonView();
assertThat(cancelButton.getText().toString()).isEqualTo("Cancel"); assertThat(cancelButton.getText().toString()).isEqualTo("Cancel");
@@ -75,8 +101,8 @@ public class FingerprintSuggestionActivityTest {
.isEqualTo(View.VISIBLE); .isEqualTo(View.VISIBLE);
cancelButton.performClick(); cancelButton.performClick();
ShadowActivity shadowActivity = Shadows.shadowOf(mController.get()); ShadowActivity shadowActivity = Shadows.shadowOf(mActivity);
assertWithMessage("Is finishing").that(mController.get().isFinishing()).isTrue(); assertWithMessage("Is finishing").that(mActivity.isFinishing()).isTrue();
assertWithMessage("Result code").that(shadowActivity.getResultCode()) assertWithMessage("Result code").that(shadowActivity.getResultCode())
.isEqualTo(Activity.RESULT_CANCELED); .isEqualTo(Activity.RESULT_CANCELED);
} }