Factor out code for skipping onboarding.

This commit is contained in:
akwizgran
2023-10-23 13:50:27 +01:00
parent a0e2458568
commit 3bb148b2d0
2 changed files with 18 additions and 20 deletions

View File

@@ -56,6 +56,19 @@ public abstract class UiTest {
getApplicationContext().startActivity(i);
}
protected void disableOnboarding() {
try {
Settings settings = new Settings();
settings.putBoolean(SHOW_ONBOARDING_TRANSPORTS, false);
settings.putBoolean(SHOW_ONBOARDING_IMAGE, false);
settings.putBoolean(SHOW_ONBOARDING_INTRODUCTION, false);
settings.putBoolean(SHOW_ONBOARDING_REVEAL_CONTACTS, false);
settingsManager.mergeSettings(settings, SETTINGS_NAMESPACE);
} catch (DbException e) {
throw new AssertionError(e);
}
}
@NotNullByDefault
protected class CleanAccountTestRule<A extends Activity>
extends IntentsTestRule<A> {
@@ -77,17 +90,7 @@ public abstract class UiTest {
} catch (InterruptedException e) {
throw new AssertionError(e);
}
try {
Settings settings = new Settings();
settings.putBoolean(SHOW_ONBOARDING_TRANSPORTS, false);
settings.putBoolean(SHOW_ONBOARDING_IMAGE, false);
settings.putBoolean(SHOW_ONBOARDING_INTRODUCTION, false);
settings.putBoolean(SHOW_ONBOARDING_REVEAL_CONTACTS, false);
settingsManager.mergeSettings(settings, SETTINGS_NAMESPACE);
} catch (DbException e) {
throw new AssertionError(e);
disableOnboarding();
}
}
}
}

View File

@@ -23,13 +23,13 @@ public abstract class ScreenshotTest extends UiTest {
public static final LocaleTestRule localeTestRule = new LocaleTestRule();
@Inject
protected TestDataCreator testDataCreator;
TestDataCreator testDataCreator;
@Inject
protected ConnectionRegistry connectionRegistry;
ConnectionRegistry connectionRegistry;
@Inject
protected Clock clock;
Clock clock;
protected void screenshot(String name, ActivityScenarioRule<?> rule) {
void screenshot(String name, ActivityScenarioRule<?> rule) {
rule.getScenario().onActivity(activity -> screenshot(name, activity));
}
@@ -47,9 +47,4 @@ public abstract class ScreenshotTest extends UiTest {
Log.w("Screengrab", "Permission to write screenshot is missing.");
}
}
protected long getMinutesAgo(int minutes) {
return clock.currentTimeMillis() - minutes * 60 * 1000;
}
}