summaryrefslogtreecommitdiff
path: root/app/src/androidTestCustom
diff options
context:
space:
mode:
authorcyberta <cyberta@riseup.net>2023-01-23 19:47:56 +0100
committercyberta <cyberta@riseup.net>2023-01-23 19:47:56 +0100
commit7d0a1f8d8057faa74035de0cee262a46c6fbbe00 (patch)
treebeb7ae926be396c9faff6978677d74c466d3e20f /app/src/androidTestCustom
parenta800ef1e82c25207a842c197190b614e43739051 (diff)
setup fastlane to create screenshots for Bitmask and custom branded clients, refactor Tests accordingly and create a script and environment variables to run fastlane screenshotting without thinking
Diffstat (limited to 'app/src/androidTestCustom')
-rw-r--r--app/src/androidTestCustom/java/se/leap/bitmaskclient/base/CustomProviderTest.java49
-rw-r--r--app/src/androidTestCustom/java/se/leap/bitmaskclient/suite/ScreenshotTest.java17
2 files changed, 66 insertions, 0 deletions
diff --git a/app/src/androidTestCustom/java/se/leap/bitmaskclient/base/CustomProviderTest.java b/app/src/androidTestCustom/java/se/leap/bitmaskclient/base/CustomProviderTest.java
new file mode 100644
index 00000000..1a0814b6
--- /dev/null
+++ b/app/src/androidTestCustom/java/se/leap/bitmaskclient/base/CustomProviderTest.java
@@ -0,0 +1,49 @@
+package se.leap.bitmaskclient.base;
+
+import static androidx.test.espresso.Espresso.onView;
+import static androidx.test.espresso.action.ViewActions.click;
+import static androidx.test.espresso.assertion.ViewAssertions.matches;
+import static androidx.test.espresso.matcher.RootMatchers.isDialog;
+import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed;
+import static androidx.test.espresso.matcher.ViewMatchers.withId;
+import static androidx.test.espresso.matcher.ViewMatchers.withText;
+import static utils.CustomInteractions.tryResolve;
+
+import androidx.test.espresso.ViewInteraction;
+
+import org.junit.Test;
+
+import se.leap.bitmaskclient.R;
+import tools.fastlane.screengrab.Screengrab;
+
+public class CustomProviderTest extends ProviderBaseTest {
+
+ @Test
+ @Override
+ public void test01_vpnStartTest() throws InterruptedException {
+ ViewInteraction mainButtonStop;
+ mainButtonStop = tryResolve(
+ onView(withId(R.id.main_button)),
+ matches(isDisplayed()),
+ 30);
+ Screengrab.screenshot("VPN_connected");
+
+ mainButtonStop.perform(click());
+ Screengrab.screenshot("VPN_ask_disconnect");
+
+ ViewInteraction alertDialogOKbutton = tryResolve(onView(withText(android.R.string.yes))
+ .inRoot(isDialog()),
+ matches(isDisplayed()));
+ alertDialogOKbutton.perform(click());
+ Screengrab.screenshot("VPN_disconnected");
+
+ mainButtonStop.perform(click());
+ Thread.sleep(50);
+ Screengrab.screenshot("VPN_connecting");
+ }
+
+ @Override
+ public boolean configureProviderIfNeeded() {
+ return false;
+ }
+} \ No newline at end of file
diff --git a/app/src/androidTestCustom/java/se/leap/bitmaskclient/suite/ScreenshotTest.java b/app/src/androidTestCustom/java/se/leap/bitmaskclient/suite/ScreenshotTest.java
new file mode 100644
index 00000000..a19b0ffd
--- /dev/null
+++ b/app/src/androidTestCustom/java/se/leap/bitmaskclient/suite/ScreenshotTest.java
@@ -0,0 +1,17 @@
+package se.leap.bitmaskclient.suite;
+
+
+import androidx.test.filters.LargeTest;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+
+import se.leap.bitmaskclient.base.CustomProviderTest;
+
+@LargeTest
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+ CustomProviderTest.class
+})
+public class ScreenshotTest {
+}