diff --git a/build.sh b/build.sh index 15d46f661..149f165b7 100755 --- a/build.sh +++ b/build.sh @@ -122,8 +122,8 @@ uninstall_apk() { install_test_butler() { log_info "Installing Test Butler" - $ADB install tools/test-butler-app-1.3.1.apk $ADB uninstall com.linkedin.android.testbutler + $ADB install tools/test-butler-app-1.3.1.apk } install_apk() { diff --git a/uhabits-android/build.gradle b/uhabits-android/build.gradle index 0bf33ad84..ffb39fd65 100644 --- a/uhabits-android/build.gradle +++ b/uhabits-android/build.gradle @@ -72,30 +72,28 @@ dependencies { annotationProcessor 'com.jakewharton:butterknife-compiler:8.6.1-SNAPSHOT' annotationProcessor 'com.google.auto.factory:auto-factory:1.0-beta3' - androidTestImplementation project(":uhabits-core") + androidTestAnnotationProcessor 'com.google.auto.factory:auto-factory:1.0-beta3' + androidTestAnnotationProcessor 'com.google.dagger:dagger-compiler:2.9' + androidTestAnnotationProcessor 'com.jakewharton:butterknife-compiler:8.6.1-SNAPSHOT' + androidTestImplementation 'com.android.support.test.espresso:espresso-contrib:2.2.2' + androidTestImplementation 'com.android.support.test.espresso:espresso-core:2.2.2' + androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1' + androidTestImplementation 'com.google.dagger:dagger:2.9' + androidTestImplementation 'com.linkedin.testbutler:test-butler-library:1.3.1' + androidTestImplementation "org.mockito:mockito-android:2.8.9" + androidTestCompileOnly 'com.google.auto.factory:auto-factory:1.0-beta3' androidTestImplementation 'com.android.support:support-annotations:25.3.1' androidTestImplementation 'com.android.support.test:rules:0.5' androidTestImplementation 'com.android.support.test:runner:0.5' androidTestImplementation 'com.google.guava:guava:20.0' - androidTestCompileOnly 'com.google.auto.factory:auto-factory:1.0-beta3' - androidTestAnnotationProcessor 'com.google.dagger:dagger-compiler:2.9' - androidTestAnnotationProcessor 'com.google.auto.factory:auto-factory:1.0-beta3' - androidTestAnnotationProcessor 'com.jakewharton:butterknife-compiler:8.6.1-SNAPSHOT' + androidTestImplementation project(":uhabits-core") - testAnnotationProcessor 'com.google.dagger:dagger-compiler:2.9' testAnnotationProcessor 'com.google.auto.factory:auto-factory:1.0-beta3' + testAnnotationProcessor 'com.google.dagger:dagger-compiler:2.9' testAnnotationProcessor 'com.jakewharton:butterknife-compiler:8.6.1-SNAPSHOT' - testCompile 'com.google.dagger:dagger:2.9' testCompile "org.mockito:mockito-core:2.8.9" testCompile "org.mockito:mockito-inline:2.8.9" - androidTestCompile 'com.google.dagger:dagger:2.9' - androidTestCompile "org.mockito:mockito-android:2.8.9" - androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2' - androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1' - androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2' - androidTestCompile 'com.android.support.test.espresso:espresso-contrib:2.2.2' - androidTestCompile 'com.linkedin.testbutler:test-butler-library:1.3.1' implementation('com.opencsv:opencsv:3.9') { exclude group: 'commons-logging', module: 'commons-logging' diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/BaseUIAutomatorTest.java b/uhabits-android/src/androidTest/java/org/isoron/uhabits/BaseUIAutomatorTest.java index 1d674e21d..9ebbf703f 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/BaseUIAutomatorTest.java +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/BaseUIAutomatorTest.java @@ -20,7 +20,6 @@ package org.isoron.uhabits; import android.content.*; -import android.support.test.filters.*; import android.support.test.uiautomator.*; import com.linkedin.android.testbutler.*; @@ -36,7 +35,6 @@ import java.io.*; import static android.support.test.InstrumentationRegistry.*; import static android.support.test.uiautomator.UiDevice.*; -@LargeTest public class BaseUIAutomatorTest { private static final String PKG = "org.isoron.uhabits"; diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/AboutTest.java b/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/AboutTest.java index 35d5722ab..bf1631667 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/AboutTest.java +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/AboutTest.java @@ -19,13 +19,19 @@ package org.isoron.uhabits.acceptance; +import android.support.test.filters.*; +import android.support.test.runner.*; + import org.isoron.uhabits.*; import org.junit.*; +import org.junit.runner.*; import static org.isoron.uhabits.acceptance.steps.CommonSteps.*; import static org.isoron.uhabits.acceptance.steps.ListHabitsSteps.MenuItem.*; import static org.isoron.uhabits.acceptance.steps.ListHabitsSteps.*; +@RunWith(AndroidJUnit4.class) +@LargeTest public class AboutTest extends BaseUIAutomatorTest { @Test diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/HabitsTest.java b/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/HabitsTest.java index bad651adf..cfa5916b1 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/HabitsTest.java +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/HabitsTest.java @@ -19,14 +19,20 @@ package org.isoron.uhabits.acceptance; +import android.support.test.filters.*; +import android.support.test.runner.*; + import org.isoron.uhabits.*; import org.junit.*; +import org.junit.runner.*; import static org.isoron.uhabits.acceptance.steps.CommonSteps.*; import static org.isoron.uhabits.acceptance.steps.EditHabitSteps.*; import static org.isoron.uhabits.acceptance.steps.ListHabitsSteps.MenuItem.*; import static org.isoron.uhabits.acceptance.steps.ListHabitsSteps.*; +@RunWith(AndroidJUnit4.class) +@LargeTest public class HabitsTest extends BaseUIAutomatorTest { @Test diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/LinksTest.java b/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/LinksTest.java index ad788acf4..e667e018c 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/LinksTest.java +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/acceptance/LinksTest.java @@ -19,15 +19,19 @@ package org.isoron.uhabits.acceptance; +import android.support.test.filters.*; +import android.support.test.runner.*; + import org.isoron.uhabits.*; import org.junit.*; +import org.junit.runner.*; import static org.isoron.uhabits.acceptance.steps.CommonSteps.*; +import static org.isoron.uhabits.acceptance.steps.ListHabitsSteps.MenuItem.*; import static org.isoron.uhabits.acceptance.steps.ListHabitsSteps.*; -import static org.isoron.uhabits.acceptance.steps.ListHabitsSteps.MenuItem.ABOUT; -import static org.isoron.uhabits.acceptance.steps.ListHabitsSteps.MenuItem.HELP; -import static org.isoron.uhabits.acceptance.steps.ListHabitsSteps.MenuItem.SETTINGS; +@RunWith(AndroidJUnit4.class) +@LargeTest public class LinksTest extends BaseUIAutomatorTest { @Test diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/integration/SavedStateTest.java b/uhabits-android/src/androidTest/java/org/isoron/uhabits/integration/SavedStateTest.java index 8bc086e2f..bb9675813 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/integration/SavedStateTest.java +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/integration/SavedStateTest.java @@ -20,14 +20,17 @@ package org.isoron.uhabits.integration; import android.support.test.filters.*; +import android.support.test.runner.*; import org.isoron.uhabits.*; import org.isoron.uhabits.activities.about.*; import org.isoron.uhabits.activities.habits.list.*; import org.junit.*; +import org.junit.runner.*; import static java.lang.Thread.*; +@RunWith(AndroidJUnit4.class) @LargeTest public class SavedStateTest extends BaseUIAutomatorTest { diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/models/HabitListTest.java b/uhabits-android/src/androidTest/java/org/isoron/uhabits/models/HabitListTest.java index 82d083bb3..e9d424c79 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/models/HabitListTest.java +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/models/HabitListTest.java @@ -36,7 +36,6 @@ import static org.hamcrest.MatcherAssert.*; import static org.hamcrest.core.IsEqual.equalTo; import static org.isoron.uhabits.core.models.HabitList.Order.*; -@SuppressWarnings("JavaDoc") @RunWith(AndroidJUnit4.class) @MediumTest public class HabitListTest extends BaseAndroidTest diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/performance/PerformanceTest.java b/uhabits-android/src/androidTest/java/org/isoron/uhabits/performance/PerformanceTest.java index b6e6ee6d8..16a06125d 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/performance/PerformanceTest.java +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/performance/PerformanceTest.java @@ -20,12 +20,15 @@ package org.isoron.uhabits.performance; import android.support.test.filters.*; +import android.support.test.runner.*; import org.isoron.uhabits.*; import org.isoron.uhabits.core.models.*; import org.junit.*; +import org.junit.runner.*; -@MediumTest +@RunWith(AndroidJUnit4.class) +@LargeTest public class PerformanceTest extends BaseAndroidTest { private Habit habit; diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/utils/ReminderSchedulerTest.java b/uhabits-android/src/androidTest/java/org/isoron/uhabits/utils/ReminderSchedulerTest.java index d409121f1..8b43504a9 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/utils/ReminderSchedulerTest.java +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/utils/ReminderSchedulerTest.java @@ -20,6 +20,8 @@ package org.isoron.uhabits.utils; import android.app.*; +import android.support.test.runner.*; +import android.test.suitebuilder.annotation.*; import org.isoron.uhabits.*; import org.isoron.uhabits.core.commands.*; @@ -27,12 +29,15 @@ import org.isoron.uhabits.core.models.*; import org.isoron.uhabits.core.utils.*; import org.isoron.uhabits.intents.*; import org.junit.*; +import org.junit.runner.*; import java.util.*; -import static java.util.Arrays.asList; +import static java.util.Arrays.*; import static org.mockito.Mockito.*; +@RunWith(AndroidJUnit4.class) +@MediumTest public class ReminderSchedulerTest extends BaseAndroidTest { private Habit habit; @@ -96,6 +101,7 @@ public class ReminderSchedulerTest extends BaseAndroidTest long now = timestamp(2015, 1, 26, 13, 0); DateUtils.setFixedLocalTime(now); + fixtures.purgeHabits(habitList); Habit h1 = fixtures.createEmptyHabit(); Habit h2 = fixtures.createEmptyHabit(); Habit h3 = fixtures.createEmptyHabit(); diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/HabitsApplication.java b/uhabits-android/src/main/java/org/isoron/uhabits/HabitsApplication.java index 91bfbd037..a380a32eb 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/HabitsApplication.java +++ b/uhabits-android/src/main/java/org/isoron/uhabits/HabitsApplication.java @@ -63,7 +63,7 @@ public class HabitsApplication extends Application { try { - Class.forName ("org.isoron.uhabits.BaseAndroidTest"); + Class.forName("org.isoron.uhabits.BaseAndroidTest"); return true; } catch (final ClassNotFoundException e) diff --git a/uhabits-core/src/main/java/org/isoron/uhabits/core/models/Habit.java b/uhabits-core/src/main/java/org/isoron/uhabits/core/models/Habit.java index 15c0aba07..6616155ee 100644 --- a/uhabits-core/src/main/java/org/isoron/uhabits/core/models/Habit.java +++ b/uhabits-core/src/main/java/org/isoron/uhabits/core/models/Habit.java @@ -238,7 +238,8 @@ public class Habit public synchronized void setTargetType(int targetType) { if (targetType != AT_LEAST && targetType != AT_MOST) - throw new IllegalArgumentException(); + throw new IllegalArgumentException( + String.format("invalid targetType: %d", targetType)); data.targetType = targetType; }