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

Commit 9c3cab23 authored by cketti's avatar cketti
Browse files

Don't show changelog dialog during UI tests

This will hopefully make the UI tests more stable.
parent 8d510e96
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
package com.fsck.k9.endtoend;

import android.app.Activity;
import android.content.Context;
import android.support.test.InstrumentationRegistry;
import android.support.test.espresso.assertion.ViewAssertions;
import android.support.test.runner.AndroidJUnit4;
@@ -11,6 +12,7 @@ import com.fsck.k9.R;
import com.fsck.k9.endtoend.framework.ApplicationState;
import com.fsck.k9.endtoend.framework.StubMailServer;
import com.fsck.k9.endtoend.pages.WelcomeMessagePage;
import de.cketti.library.changelog.ChangeLog;
import junit.framework.AssertionFailedError;
import org.junit.After;
import org.junit.AfterClass;
@@ -50,6 +52,8 @@ public abstract class AbstractEndToEndTest<T extends Activity> extends ActivityI
        super.setUp();
        injectInstrumentation(InstrumentationRegistry.getInstrumentation());

        skipChangeLogDialog();

        getActivity();

        if (bypassWelcome) {
@@ -63,6 +67,11 @@ public abstract class AbstractEndToEndTest<T extends Activity> extends ActivityI
        super.tearDown();
    }

    private void skipChangeLogDialog() {
        Context context = getInstrumentation().getTargetContext();
        new ChangeLog(context).skipLogDialog();
    }

    private void bypassWelcomeScreen() {
        try {
            onView(withId(R.id.welcome_message)).check(ViewAssertions.doesNotExist());
+1 −15
Original line number Diff line number Diff line
package com.fsck.k9.endtoend.pages;

import com.fsck.k9.K9;

import com.fsck.k9.R;
import android.support.test.espresso.NoMatchingViewException;
import android.support.test.espresso.matcher.ViewMatchers;
import android.util.Log;

import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.action.ViewActions.clearText;
@@ -35,17 +32,6 @@ public class AccountSetupNamesPage extends AbstractPage {
    public AccountsPage clickDone() {
        onView(withId(R.id.done))
                .perform(click());
        dismissChangelog();
        return new AccountsPage();
    }

    private void dismissChangelog() {
        try {
            onView(ViewMatchers.withText("OK")).perform(click());
        } catch (NoMatchingViewException ex) {
            Log.w(K9.LOG_TAG, "did not find Changelog OK button - ignored");
            // Ignored. Not the best way of doing this, but Espresso rightly makes
            // conditional flow difficult.
        }
    }
}