package cgeo.geocaching; import static org.assertj.core.api.Java6Assertions.assertThat; import cgeo.geocaching.maps.mapsforge.MapsforgeMapProvider; import cgeo.geocaching.settings.Settings; import android.annotation.TargetApi; import android.test.ActivityInstrumentationTestCase2; @TargetApi(8) public class SettingsTest extends ActivityInstrumentationTestCase2<MainActivity> { public SettingsTest() { super(MainActivity.class); } /** * access settings. * this should work fine without an exception (once there was an exception because of the empty map file string) */ public static void testSettingsException() { // We just want to ensure that it does not throw any exception but we do not know anything about the result MapsforgeMapProvider.isValidMapFile(Settings.getMapFile()); } public static void testSettings() { // unfortunately, several other tests depend on being a premium member and will fail if run by a basic member assertThat(Settings.isGCPremiumMember()).isTrue(); } public static void testDeviceHasNormalLogin() { // if the unit tests were interrupted in a previous run, the device might still have the "temporary" login data from the last tests assertThat("c:geo".equals(Settings.getUserName())).isFalse(); } }