diff options
author | Parménides GV <parmegv@sdf.org> | 2014-04-07 20:43:34 +0200 |
---|---|---|
committer | Parménides GV <parmegv@sdf.org> | 2014-04-08 11:43:27 +0200 |
commit | c206a91d320995f37f8abb33188bfd384249da3d (patch) | |
tree | 10a7d8a9dd7f24437ac4851b8d01edbd5dd3ee3b /app/src/androidTest/java/se/leap/bitmaskclient/test/testConfigurationWizard.java | |
parent | 910b0e1746ab3f63e63808b198ad51fec5b635e5 (diff) |
Next step: compile jni sources correctly.
Diffstat (limited to 'app/src/androidTest/java/se/leap/bitmaskclient/test/testConfigurationWizard.java')
-rw-r--r-- | app/src/androidTest/java/se/leap/bitmaskclient/test/testConfigurationWizard.java | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/app/src/androidTest/java/se/leap/bitmaskclient/test/testConfigurationWizard.java b/app/src/androidTest/java/se/leap/bitmaskclient/test/testConfigurationWizard.java new file mode 100644 index 00000000..847d8cdd --- /dev/null +++ b/app/src/androidTest/java/se/leap/bitmaskclient/test/testConfigurationWizard.java @@ -0,0 +1,65 @@ +package se.leap.bitmaskclient.test; + +import android.test.ActivityInstrumentationTestCase2; +import android.widget.ListView; +import com.jayway.android.robotium.solo.Solo; +import java.io.IOException; +import se.leap.bitmaskclient.AboutActivity; +import se.leap.bitmaskclient.ConfigurationWizard; +import se.leap.bitmaskclient.ProviderDetailFragment; +import se.leap.bitmaskclient.R; +import se.leap.bitmaskclient.test.ConnectionManager; + +public class testConfigurationWizard extends ActivityInstrumentationTestCase2<ConfigurationWizard> { + + private Solo solo; + private static int added_providers; + + public testConfigurationWizard() { + super(ConfigurationWizard.class); + } + + @Override + protected void setUp() throws Exception { + super.setUp(); + solo = new Solo(getInstrumentation(), getActivity()); + ConnectionManager.setMobileDataEnabled(true, solo.getCurrentActivity().getApplicationContext()); + } + + @Override + protected void tearDown() throws Exception { + solo.finishOpenedActivities(); + } + + public void testListProviders() throws IOException { + assertEquals(solo.getCurrentViews(ListView.class).size(), 1); + + int number_of_available_providers = solo.getCurrentViews(ListView.class).get(0).getCount(); + + assertEquals("Number of available providers differ", solo.getCurrentActivity().getAssets().list("urls").length + added_providers, number_of_available_providers); + } + + public void testSelectProvider() { + solo.clickOnText("bitmask"); + assertTrue("Provider details dialog did not appear", solo.waitForFragmentByTag(ProviderDetailFragment.TAG, 60*1000)); + } + + public void testAddNewProvider() { + solo.clickOnActionBarItem(R.id.new_provider); + solo.enterText(0, "dev.bitmask.net"); + solo.clickOnCheckBox(0); + solo.clickOnText(solo.getString(R.string.save)); + added_providers = added_providers+1; + assertTrue("Provider details dialog did not appear", solo.waitForFragmentByTag(ProviderDetailFragment.TAG, 60*1000)); + solo.goBack(); + } + + public void testShowAbout() { + solo.clickOnMenuItem(solo.getString(R.string.about)); + assertTrue("Provider details dialog did not appear", solo.waitForActivity(AboutActivity.class)); + } + + public void testShowSettings() { + //TODO We still don't have the settings button + } +} |