diff --git a/.travis.yml b/.travis.yml index ddd15a1c9..39441e6e6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -83,7 +83,7 @@ install: script: - ./gradlew :app:lintGoogleplayRelease - - ./gradlew -Pcoverage :app:createGoogleplayDebugAndroidTestCoverageReport + - ./gradlew -Pcoverage :app:jacocoTestGoogleplayDebugUnitTestReport :app:createGoogleplayDebugAndroidTestCoverageReport before_cache: - rm -f $HOME/.gradle/caches/modules-2/modules-2.lock diff --git a/app/build.gradle.kts b/app/build.gradle.kts index a09056936..bf5d1a1ab 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -6,6 +6,7 @@ plugins { kotlin("kapt") id("com.cookpad.android.plugin.license-tools") version "1.2.2" id("com.github.ben-manes.versions") version "0.28.0" + id("jacoco-android") } repositories { @@ -15,6 +16,10 @@ repositories { } android { + val commonTest = "src/commonTest/java" + sourceSets["test"].java.srcDir(commonTest) + sourceSets["androidTest"].java.srcDirs("src/androidTest/java", commonTest) + bundle { language { enableSplit = false @@ -197,12 +202,17 @@ dependencies { kaptAndroidTest("com.google.dagger:dagger-compiler:${Versions.dagger}") kaptAndroidTest("com.jakewharton:butterknife-compiler:${Versions.butterknife}") - androidTestImplementation("org.mockito:mockito-android:3.3.3") - androidTestImplementation("com.natpryce:make-it-easy:4.0.1") - androidTestImplementation("androidx.test:runner:1.2.0") - androidTestImplementation("androidx.test:rules:1.2.0") + androidTestImplementation("org.mockito:mockito-android:${Versions.mockito}") + androidTestImplementation("com.natpryce:make-it-easy:${Versions.make_it_easy}") + androidTestImplementation("androidx.test:runner:${Versions.androidx_test}") + androidTestImplementation("androidx.test:rules:${Versions.androidx_test}") androidTestImplementation("androidx.test.ext:junit:1.1.1") androidTestImplementation("androidx.annotation:annotation:1.1.0") + + testImplementation("junit:junit:4.13") + testImplementation("com.natpryce:make-it-easy:${Versions.make_it_easy}") + testImplementation("androidx.test:core:${Versions.androidx_test}") + testImplementation("org.mockito:mockito-core:${Versions.mockito}") } apply(mapOf("plugin" to "com.google.gms.google-services")) diff --git a/app/src/androidTest/java/org/tasks/TestUtilities.kt b/app/src/androidTest/java/org/tasks/TestUtilities.kt deleted file mode 100644 index 4dc9b1ae9..000000000 --- a/app/src/androidTest/java/org/tasks/TestUtilities.kt +++ /dev/null @@ -1,56 +0,0 @@ -package org.tasks - -import android.content.Context -import androidx.test.InstrumentationRegistry -import at.bitfire.ical4android.Task.Companion.tasksFromReader -import com.todoroo.astrid.data.Task -import org.tasks.caldav.CaldavConverter -import org.tasks.preferences.Preferences -import java.io.IOException -import java.io.InputStream -import java.io.InputStreamReader -import java.io.StringReader - -object TestUtilities { - fun newPreferences(context: Context?): Preferences { - return Preferences(context, "test_preferences") - } - - fun vtodo(path: String): Task { - val task = Task() - CaldavConverter.apply(task, fromResource(path)) - return task - } - - private fun fromResource(path: String): at.bitfire.ical4android.Task { - val context = InstrumentationRegistry.getInstrumentation().context - var `is`: InputStream? = null - var reader: InputStreamReader? = null - return try { - `is` = context.assets.open(path) - reader = InputStreamReader(`is`, Charsets.UTF_8) - fromString(reader.readText()) - } catch (e: IOException) { - throw IllegalArgumentException(e) - } finally { - if (reader != null) { - try { - reader.close() - } catch (ignored: IOException) { - } - } - if (`is` != null) { - try { - `is`.close() - } catch (ignored: IOException) { - } - } - } - } - - private fun fromString(task: String) = try { - tasksFromReader(StringReader(task))[0] - } catch (e: Exception) { - throw IllegalArgumentException(e) - } -} \ No newline at end of file diff --git a/app/src/androidTest/java/org/tasks/caldav/CaldavClientTest.kt b/app/src/androidTest/java/org/tasks/caldav/CaldavClientTest.kt index 640639a18..f2e27e735 100644 --- a/app/src/androidTest/java/org/tasks/caldav/CaldavClientTest.kt +++ b/app/src/androidTest/java/org/tasks/caldav/CaldavClientTest.kt @@ -12,7 +12,6 @@ import java.security.NoSuchAlgorithmException @RunWith(AndroidJUnit4::class) class CaldavClientTest { @Test - @Throws(NoSuchAlgorithmException::class, KeyManagementException::class) fun dontCrashOnSpaceInUrl() { val context = ApplicationProvider.getApplicationContext() CaldavClient(context, null, newPreferences(context), null) diff --git a/app/src/androidTest/java/org/tasks/Freeze.kt b/app/src/commonTest/java/org/tasks/Freeze.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/Freeze.kt rename to app/src/commonTest/java/org/tasks/Freeze.kt diff --git a/app/src/commonTest/java/org/tasks/TestUtilities.kt b/app/src/commonTest/java/org/tasks/TestUtilities.kt new file mode 100644 index 000000000..1cf545450 --- /dev/null +++ b/app/src/commonTest/java/org/tasks/TestUtilities.kt @@ -0,0 +1,30 @@ +package org.tasks + +import android.content.Context +import at.bitfire.ical4android.Task.Companion.tasksFromReader +import com.todoroo.astrid.data.Task +import org.tasks.caldav.CaldavConverter +import org.tasks.preferences.Preferences +import java.io.StringReader +import java.nio.file.Files +import java.nio.file.Paths + +object TestUtilities { + fun newPreferences(context: Context?): Preferences { + return Preferences(context, "test_preferences") + } + + fun vtodo(path: String): Task { + val task = Task() + CaldavConverter.apply(task, fromResource(path)) + return task + } + + private fun fromResource(path: String): at.bitfire.ical4android.Task { + val url = javaClass.classLoader!!.getResource(path) + val paths = Paths.get(url!!.toURI()) + return fromString(String(Files.readAllBytes(paths), Charsets.UTF_8)) + } + + private fun fromString(task: String) = tasksFromReader(StringReader(task))[0] +} \ No newline at end of file diff --git a/app/src/androidTest/java/org/tasks/makers/CaldavTaskMaker.kt b/app/src/commonTest/java/org/tasks/makers/CaldavTaskMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/CaldavTaskMaker.kt rename to app/src/commonTest/java/org/tasks/makers/CaldavTaskMaker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/GeofenceMaker.kt b/app/src/commonTest/java/org/tasks/makers/GeofenceMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/GeofenceMaker.kt rename to app/src/commonTest/java/org/tasks/makers/GeofenceMaker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/GoogleTaskListMaker.kt b/app/src/commonTest/java/org/tasks/makers/GoogleTaskListMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/GoogleTaskListMaker.kt rename to app/src/commonTest/java/org/tasks/makers/GoogleTaskListMaker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/GoogleTaskMaker.kt b/app/src/commonTest/java/org/tasks/makers/GoogleTaskMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/GoogleTaskMaker.kt rename to app/src/commonTest/java/org/tasks/makers/GoogleTaskMaker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/GtaskListMaker.kt b/app/src/commonTest/java/org/tasks/makers/GtaskListMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/GtaskListMaker.kt rename to app/src/commonTest/java/org/tasks/makers/GtaskListMaker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/Maker.kt b/app/src/commonTest/java/org/tasks/makers/Maker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/Maker.kt rename to app/src/commonTest/java/org/tasks/makers/Maker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/PlaceMaker.kt b/app/src/commonTest/java/org/tasks/makers/PlaceMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/PlaceMaker.kt rename to app/src/commonTest/java/org/tasks/makers/PlaceMaker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/RemoteGtaskListMaker.kt b/app/src/commonTest/java/org/tasks/makers/RemoteGtaskListMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/RemoteGtaskListMaker.kt rename to app/src/commonTest/java/org/tasks/makers/RemoteGtaskListMaker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/TagDataMaker.kt b/app/src/commonTest/java/org/tasks/makers/TagDataMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/TagDataMaker.kt rename to app/src/commonTest/java/org/tasks/makers/TagDataMaker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/TagMaker.kt b/app/src/commonTest/java/org/tasks/makers/TagMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/TagMaker.kt rename to app/src/commonTest/java/org/tasks/makers/TagMaker.kt diff --git a/app/src/androidTest/java/org/tasks/makers/TaskMaker.kt b/app/src/commonTest/java/org/tasks/makers/TaskMaker.kt similarity index 100% rename from app/src/androidTest/java/org/tasks/makers/TaskMaker.kt rename to app/src/commonTest/java/org/tasks/makers/TaskMaker.kt diff --git a/app/src/androidTest/java/com/todoroo/astrid/data/TaskTest.kt b/app/src/test/java/com/todoroo/astrid/data/TaskTest.kt similarity index 98% rename from app/src/androidTest/java/com/todoroo/astrid/data/TaskTest.kt rename to app/src/test/java/com/todoroo/astrid/data/TaskTest.kt index 0f5c9f2a8..88eb853e6 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/data/TaskTest.kt +++ b/app/src/test/java/com/todoroo/astrid/data/TaskTest.kt @@ -1,18 +1,15 @@ package com.todoroo.astrid.data -import androidx.test.ext.junit.runners.AndroidJUnit4 import org.junit.After import org.junit.Assert.* import org.junit.Before import org.junit.Test -import org.junit.runner.RunWith import org.tasks.Freeze import org.tasks.Freeze.Companion.freezeAt import org.tasks.date.DateTimeUtils import org.tasks.time.DateTime import java.util.* -@RunWith(AndroidJUnit4::class) class TaskTest { @Before fun setUp() { diff --git a/app/src/androidTest/java/com/todoroo/astrid/gtasks/api/GtasksApiUtilitiesTest.kt b/app/src/test/java/com/todoroo/astrid/gtasks/api/GtasksApiUtilitiesTest.kt similarity index 95% rename from app/src/androidTest/java/com/todoroo/astrid/gtasks/api/GtasksApiUtilitiesTest.kt rename to app/src/test/java/com/todoroo/astrid/gtasks/api/GtasksApiUtilitiesTest.kt index cfc966f06..03fb282ef 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/gtasks/api/GtasksApiUtilitiesTest.kt +++ b/app/src/test/java/com/todoroo/astrid/gtasks/api/GtasksApiUtilitiesTest.kt @@ -1,16 +1,13 @@ package com.todoroo.astrid.gtasks.api -import androidx.test.ext.junit.runners.AndroidJUnit4 import com.google.api.client.util.DateTime import org.junit.After import org.junit.Assert.assertEquals import org.junit.Assert.assertNull import org.junit.Before import org.junit.Test -import org.junit.runner.RunWith import java.util.* -@RunWith(AndroidJUnit4::class) class GtasksApiUtilitiesTest { @Before fun setUp() { diff --git a/app/src/androidTest/java/com/todoroo/astrid/repeats/AdvancedRepeatTest.kt b/app/src/test/java/com/todoroo/astrid/repeats/AdvancedRepeatTest.kt similarity index 97% rename from app/src/androidTest/java/com/todoroo/astrid/repeats/AdvancedRepeatTest.kt rename to app/src/test/java/com/todoroo/astrid/repeats/AdvancedRepeatTest.kt index 8d0ea0076..f55bc95ac 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/repeats/AdvancedRepeatTest.kt +++ b/app/src/test/java/com/todoroo/astrid/repeats/AdvancedRepeatTest.kt @@ -5,7 +5,6 @@ */ package com.todoroo.astrid.repeats -import androidx.test.ext.junit.runners.AndroidJUnit4 import com.google.ical.values.Frequency import com.google.ical.values.RRule import com.google.ical.values.Weekday @@ -15,15 +14,14 @@ import com.todoroo.astrid.data.Task import org.junit.Assert.assertEquals import org.junit.Before import org.junit.Test -import org.junit.runner.RunWith import org.tasks.date.DateTimeUtils import org.tasks.time.DateTime +import org.tasks.time.DateTimeUtils.printTimestamp import java.text.ParseException import java.util.* import kotlin.math.abs import kotlin.math.min -@RunWith(AndroidJUnit4::class) class AdvancedRepeatTest { private var task: Task? = null private var nextDueDate: Long = 0 @@ -239,8 +237,9 @@ class AdvancedRepeatTest { private const val PREV = -1 private const val THIS = 1 private const val NEXT = 2 + fun assertDateTimeEquals(date: Long, other: Long) { - assertEquals("Expected: " + DateTimeUtils.newDateTime(date) + ", Actual: " + DateTimeUtils.newDateTime(other), date, other) + assertEquals("Expected: ${printTimestamp(date)}, Actual: ${printTimestamp(other)}", date, other) } } } \ No newline at end of file diff --git a/app/src/androidTest/java/com/todoroo/astrid/repeats/NewRepeatTests.kt b/app/src/test/java/com/todoroo/astrid/repeats/NewRepeatTests.kt similarity index 98% rename from app/src/androidTest/java/com/todoroo/astrid/repeats/NewRepeatTests.kt rename to app/src/test/java/com/todoroo/astrid/repeats/NewRepeatTests.kt index fa0817177..922e51149 100644 --- a/app/src/androidTest/java/com/todoroo/astrid/repeats/NewRepeatTests.kt +++ b/app/src/test/java/com/todoroo/astrid/repeats/NewRepeatTests.kt @@ -1,6 +1,5 @@ package com.todoroo.astrid.repeats -import androidx.test.ext.junit.runners.AndroidJUnit4 import com.google.ical.values.Frequency import com.google.ical.values.RRule import com.google.ical.values.Weekday @@ -9,7 +8,6 @@ import com.natpryce.makeiteasy.MakeItEasy.with import com.todoroo.astrid.data.Task import org.junit.Assert.assertEquals import org.junit.Test -import org.junit.runner.RunWith import org.tasks.makers.TaskMaker.AFTER_COMPLETE import org.tasks.makers.TaskMaker.COMPLETION_TIME import org.tasks.makers.TaskMaker.DUE_TIME @@ -18,7 +16,6 @@ import org.tasks.makers.TaskMaker.newTask import org.tasks.time.DateTime import java.text.ParseException -@RunWith(AndroidJUnit4::class) class NewRepeatTests { @Test @Throws(ParseException::class) diff --git a/app/src/androidTest/java/org/tasks/caldav/AppleRemindersTests.kt b/app/src/test/java/org/tasks/caldav/AppleRemindersTests.kt similarity index 94% rename from app/src/androidTest/java/org/tasks/caldav/AppleRemindersTests.kt rename to app/src/test/java/org/tasks/caldav/AppleRemindersTests.kt index 5ef86d376..dbf781ad6 100644 --- a/app/src/androidTest/java/org/tasks/caldav/AppleRemindersTests.kt +++ b/app/src/test/java/org/tasks/caldav/AppleRemindersTests.kt @@ -1,17 +1,14 @@ package org.tasks.caldav -import androidx.test.ext.junit.runners.AndroidJUnit4 import com.todoroo.astrid.data.Task import org.junit.After import org.junit.Assert.assertEquals import org.junit.Before import org.junit.Test -import org.junit.runner.RunWith import org.tasks.TestUtilities.vtodo import org.tasks.time.DateTime import java.util.* -@RunWith(AndroidJUnit4::class) class AppleRemindersTests { private val defaultTimeZone = TimeZone.getDefault() diff --git a/app/src/androidTest/java/org/tasks/caldav/GeoUtilsTest.kt b/app/src/test/java/org/tasks/caldav/GeoUtilsTest.kt similarity index 91% rename from app/src/androidTest/java/org/tasks/caldav/GeoUtilsTest.kt rename to app/src/test/java/org/tasks/caldav/GeoUtilsTest.kt index 85f8bfae2..99816915c 100644 --- a/app/src/androidTest/java/org/tasks/caldav/GeoUtilsTest.kt +++ b/app/src/test/java/org/tasks/caldav/GeoUtilsTest.kt @@ -1,15 +1,12 @@ package org.tasks.caldav -import androidx.test.ext.junit.runners.AndroidJUnit4 import net.fortuna.ical4j.model.property.Geo import org.junit.Assert.* import org.junit.Test -import org.junit.runner.RunWith import org.tasks.caldav.GeoUtils.equalish import org.tasks.caldav.GeoUtils.latitudeLike import org.tasks.caldav.GeoUtils.longitudeLike -@RunWith(AndroidJUnit4::class) class GeoUtilsTest { @Test fun getLatitudeLike() = diff --git a/app/src/androidTest/java/org/tasks/caldav/NextCloudTests.kt b/app/src/test/java/org/tasks/caldav/NextCloudTests.kt similarity index 95% rename from app/src/androidTest/java/org/tasks/caldav/NextCloudTests.kt rename to app/src/test/java/org/tasks/caldav/NextCloudTests.kt index 13a49456d..b70ba4e68 100644 --- a/app/src/androidTest/java/org/tasks/caldav/NextCloudTests.kt +++ b/app/src/test/java/org/tasks/caldav/NextCloudTests.kt @@ -1,17 +1,14 @@ package org.tasks.caldav -import androidx.test.ext.junit.runners.AndroidJUnit4 import com.todoroo.astrid.data.Task import org.junit.After import org.junit.Assert.assertEquals import org.junit.Before import org.junit.Test -import org.junit.runner.RunWith import org.tasks.TestUtilities.vtodo import org.tasks.time.DateTime import java.util.* -@RunWith(AndroidJUnit4::class) class NextCloudTests { private val defaultTimeZone = TimeZone.getDefault() diff --git a/app/src/androidTest/java/org/tasks/caldav/SynologyTests.kt b/app/src/test/java/org/tasks/caldav/SynologyTests.kt similarity index 87% rename from app/src/androidTest/java/org/tasks/caldav/SynologyTests.kt rename to app/src/test/java/org/tasks/caldav/SynologyTests.kt index ce4a6279c..98e197413 100644 --- a/app/src/androidTest/java/org/tasks/caldav/SynologyTests.kt +++ b/app/src/test/java/org/tasks/caldav/SynologyTests.kt @@ -1,15 +1,12 @@ package org.tasks.caldav -import androidx.test.ext.junit.runners.AndroidJUnit4 import org.junit.After import org.junit.Assert.assertTrue import org.junit.Before import org.junit.Test -import org.junit.runner.RunWith import org.tasks.TestUtilities.vtodo import java.util.* -@RunWith(AndroidJUnit4::class) class SynologyTests { private val defaultTimeZone = TimeZone.getDefault() diff --git a/app/src/androidTest/java/org/tasks/caldav/ThunderbirdTests.kt b/app/src/test/java/org/tasks/caldav/ThunderbirdTests.kt similarity index 94% rename from app/src/androidTest/java/org/tasks/caldav/ThunderbirdTests.kt rename to app/src/test/java/org/tasks/caldav/ThunderbirdTests.kt index 424e2e462..37f8b8310 100644 --- a/app/src/androidTest/java/org/tasks/caldav/ThunderbirdTests.kt +++ b/app/src/test/java/org/tasks/caldav/ThunderbirdTests.kt @@ -1,17 +1,14 @@ package org.tasks.caldav -import androidx.test.ext.junit.runners.AndroidJUnit4 import com.todoroo.astrid.data.Task import org.junit.After import org.junit.Assert.assertEquals import org.junit.Before import org.junit.Test -import org.junit.runner.RunWith import org.tasks.TestUtilities.vtodo import org.tasks.time.DateTime import java.util.* -@RunWith(AndroidJUnit4::class) class ThunderbirdTests { private val defaultTimeZone = TimeZone.getDefault() diff --git a/app/src/androidTest/java/org/tasks/date/DateTimeUtilsTest.kt b/app/src/test/java/org/tasks/date/DateTimeUtilsTest.kt similarity index 90% rename from app/src/androidTest/java/org/tasks/date/DateTimeUtilsTest.kt rename to app/src/test/java/org/tasks/date/DateTimeUtilsTest.kt index 950328f15..82caf8765 100644 --- a/app/src/androidTest/java/org/tasks/date/DateTimeUtilsTest.kt +++ b/app/src/test/java/org/tasks/date/DateTimeUtilsTest.kt @@ -1,14 +1,11 @@ package org.tasks.date -import androidx.test.ext.junit.runners.AndroidJUnit4 import org.junit.Assert.assertEquals import org.junit.Test -import org.junit.runner.RunWith import org.tasks.Freeze.Companion.freezeAt import org.tasks.time.DateTime import java.util.* -@RunWith(AndroidJUnit4::class) class DateTimeUtilsTest { private val now = DateTime(2014, 1, 1, 15, 17, 53, 0) diff --git a/app/src/androidTest/java/org/tasks/db/QueryUtilsTest.kt b/app/src/test/java/org/tasks/db/QueryUtilsTest.kt similarity index 86% rename from app/src/androidTest/java/org/tasks/db/QueryUtilsTest.kt rename to app/src/test/java/org/tasks/db/QueryUtilsTest.kt index cb931ad4a..f97e61957 100644 --- a/app/src/androidTest/java/org/tasks/db/QueryUtilsTest.kt +++ b/app/src/test/java/org/tasks/db/QueryUtilsTest.kt @@ -1,13 +1,10 @@ package org.tasks.db -import androidx.test.ext.junit.runners.AndroidJUnit4 import com.todoroo.andlib.sql.Functions import com.todoroo.astrid.data.Task import org.junit.Assert.assertEquals import org.junit.Test -import org.junit.runner.RunWith -@RunWith(AndroidJUnit4::class) class QueryUtilsTest { @Test fun replaceHiddenLT() { diff --git a/app/src/androidTest/java/org/tasks/jobs/BackupWorkTest.kt b/app/src/test/java/org/tasks/jobs/BackupWorkTest.kt similarity index 93% rename from app/src/androidTest/java/org/tasks/jobs/BackupWorkTest.kt rename to app/src/test/java/org/tasks/jobs/BackupWorkTest.kt index 71e85cf9a..ca2fb25f0 100644 --- a/app/src/androidTest/java/org/tasks/jobs/BackupWorkTest.kt +++ b/app/src/test/java/org/tasks/jobs/BackupWorkTest.kt @@ -1,15 +1,12 @@ package org.tasks.jobs -import androidx.test.ext.junit.runners.AndroidJUnit4 import org.junit.Assert.* import org.junit.Test -import org.junit.runner.RunWith import org.mockito.Mockito import org.tasks.date.DateTimeUtils import org.tasks.time.DateTime import java.io.File -@RunWith(AndroidJUnit4::class) class BackupWorkTest { @Test fun filterExcludesXmlFiles() { diff --git a/app/src/androidTest/java/org/tasks/jobs/NotificationQueueTest.kt b/app/src/test/java/org/tasks/jobs/NotificationQueueTest.kt similarity index 98% rename from app/src/androidTest/java/org/tasks/jobs/NotificationQueueTest.kt rename to app/src/test/java/org/tasks/jobs/NotificationQueueTest.kt index 33359e6db..fbf34d186 100644 --- a/app/src/androidTest/java/org/tasks/jobs/NotificationQueueTest.kt +++ b/app/src/test/java/org/tasks/jobs/NotificationQueueTest.kt @@ -1,12 +1,10 @@ package org.tasks.jobs -import androidx.test.ext.junit.runners.AndroidJUnit4 import com.todoroo.astrid.reminders.ReminderService import org.junit.After import org.junit.Assert.assertEquals import org.junit.Before import org.junit.Test -import org.junit.runner.RunWith import org.mockito.AdditionalAnswers import org.mockito.Matchers import org.mockito.Mockito @@ -16,7 +14,6 @@ import org.tasks.time.DateTime import org.tasks.time.DateTimeUtils import java.util.concurrent.TimeUnit -@RunWith(AndroidJUnit4::class) class NotificationQueueTest { private lateinit var queue: NotificationQueue private lateinit var workManager: WorkManager diff --git a/app/src/androidTest/java/org/tasks/time/DateTimeTest.kt b/app/src/test/java/org/tasks/time/DateTimeTest.kt similarity index 99% rename from app/src/androidTest/java/org/tasks/time/DateTimeTest.kt rename to app/src/test/java/org/tasks/time/DateTimeTest.kt index eb6b19d83..854e21eb4 100644 --- a/app/src/androidTest/java/org/tasks/time/DateTimeTest.kt +++ b/app/src/test/java/org/tasks/time/DateTimeTest.kt @@ -1,14 +1,11 @@ package org.tasks.time -import androidx.test.ext.junit.runners.AndroidJUnit4 import org.junit.Assert.* import org.junit.Test -import org.junit.runner.RunWith import org.tasks.Freeze import java.util.* import java.util.concurrent.TimeUnit -@RunWith(AndroidJUnit4::class) class DateTimeTest { @Test fun testGetMillisOfDay() { diff --git a/app/src/androidTest/assets/apple/basic_completed.txt b/app/src/test/resources/apple/basic_completed.txt similarity index 100% rename from app/src/androidTest/assets/apple/basic_completed.txt rename to app/src/test/resources/apple/basic_completed.txt diff --git a/app/src/androidTest/assets/apple/basic_due_date.txt b/app/src/test/resources/apple/basic_due_date.txt similarity index 100% rename from app/src/androidTest/assets/apple/basic_due_date.txt rename to app/src/test/resources/apple/basic_due_date.txt diff --git a/app/src/androidTest/assets/apple/basic_no_due_date.txt b/app/src/test/resources/apple/basic_no_due_date.txt similarity index 100% rename from app/src/androidTest/assets/apple/basic_no_due_date.txt rename to app/src/test/resources/apple/basic_no_due_date.txt diff --git a/app/src/androidTest/assets/apple/priority_high.txt b/app/src/test/resources/apple/priority_high.txt similarity index 100% rename from app/src/androidTest/assets/apple/priority_high.txt rename to app/src/test/resources/apple/priority_high.txt diff --git a/app/src/androidTest/assets/apple/priority_low.txt b/app/src/test/resources/apple/priority_low.txt similarity index 100% rename from app/src/androidTest/assets/apple/priority_low.txt rename to app/src/test/resources/apple/priority_low.txt diff --git a/app/src/androidTest/assets/apple/priority_medium.txt b/app/src/test/resources/apple/priority_medium.txt similarity index 100% rename from app/src/androidTest/assets/apple/priority_medium.txt rename to app/src/test/resources/apple/priority_medium.txt diff --git a/app/src/androidTest/assets/apple/priority_none.txt b/app/src/test/resources/apple/priority_none.txt similarity index 100% rename from app/src/androidTest/assets/apple/priority_none.txt rename to app/src/test/resources/apple/priority_none.txt diff --git a/app/src/androidTest/assets/apple/repeat_daily.txt b/app/src/test/resources/apple/repeat_daily.txt similarity index 100% rename from app/src/androidTest/assets/apple/repeat_daily.txt rename to app/src/test/resources/apple/repeat_daily.txt diff --git a/app/src/androidTest/assets/nextcloud/basic_due_date.txt b/app/src/test/resources/nextcloud/basic_due_date.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/basic_due_date.txt rename to app/src/test/resources/nextcloud/basic_due_date.txt diff --git a/app/src/androidTest/assets/nextcloud/basic_no_due_date.txt b/app/src/test/resources/nextcloud/basic_no_due_date.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/basic_no_due_date.txt rename to app/src/test/resources/nextcloud/basic_no_due_date.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_1_star.txt b/app/src/test/resources/nextcloud/priority_1_star.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_1_star.txt rename to app/src/test/resources/nextcloud/priority_1_star.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_2_stars.txt b/app/src/test/resources/nextcloud/priority_2_stars.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_2_stars.txt rename to app/src/test/resources/nextcloud/priority_2_stars.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_3_stars.txt b/app/src/test/resources/nextcloud/priority_3_stars.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_3_stars.txt rename to app/src/test/resources/nextcloud/priority_3_stars.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_4_stars.txt b/app/src/test/resources/nextcloud/priority_4_stars.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_4_stars.txt rename to app/src/test/resources/nextcloud/priority_4_stars.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_5_stars.txt b/app/src/test/resources/nextcloud/priority_5_stars.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_5_stars.txt rename to app/src/test/resources/nextcloud/priority_5_stars.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_6_stars.txt b/app/src/test/resources/nextcloud/priority_6_stars.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_6_stars.txt rename to app/src/test/resources/nextcloud/priority_6_stars.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_7_stars.txt b/app/src/test/resources/nextcloud/priority_7_stars.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_7_stars.txt rename to app/src/test/resources/nextcloud/priority_7_stars.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_8_stars.txt b/app/src/test/resources/nextcloud/priority_8_stars.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_8_stars.txt rename to app/src/test/resources/nextcloud/priority_8_stars.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_9_stars.txt b/app/src/test/resources/nextcloud/priority_9_stars.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_9_stars.txt rename to app/src/test/resources/nextcloud/priority_9_stars.txt diff --git a/app/src/androidTest/assets/nextcloud/priority_no_stars.txt b/app/src/test/resources/nextcloud/priority_no_stars.txt similarity index 100% rename from app/src/androidTest/assets/nextcloud/priority_no_stars.txt rename to app/src/test/resources/nextcloud/priority_no_stars.txt diff --git a/app/src/androidTest/assets/synology/complete_no_due_date.txt b/app/src/test/resources/synology/complete_no_due_date.txt similarity index 100% rename from app/src/androidTest/assets/synology/complete_no_due_date.txt rename to app/src/test/resources/synology/complete_no_due_date.txt diff --git a/app/src/androidTest/assets/synology/complete_with_date.txt b/app/src/test/resources/synology/complete_with_date.txt similarity index 100% rename from app/src/androidTest/assets/synology/complete_with_date.txt rename to app/src/test/resources/synology/complete_with_date.txt diff --git a/app/src/androidTest/assets/synology/complete_with_date_time.txt b/app/src/test/resources/synology/complete_with_date_time.txt similarity index 100% rename from app/src/androidTest/assets/synology/complete_with_date_time.txt rename to app/src/test/resources/synology/complete_with_date_time.txt diff --git a/app/src/androidTest/assets/thunderbird/basic_completed.txt b/app/src/test/resources/thunderbird/basic_completed.txt similarity index 100% rename from app/src/androidTest/assets/thunderbird/basic_completed.txt rename to app/src/test/resources/thunderbird/basic_completed.txt diff --git a/app/src/androidTest/assets/thunderbird/basic_due_date.txt b/app/src/test/resources/thunderbird/basic_due_date.txt similarity index 100% rename from app/src/androidTest/assets/thunderbird/basic_due_date.txt rename to app/src/test/resources/thunderbird/basic_due_date.txt diff --git a/app/src/androidTest/assets/thunderbird/basic_no_due_date.txt b/app/src/test/resources/thunderbird/basic_no_due_date.txt similarity index 100% rename from app/src/androidTest/assets/thunderbird/basic_no_due_date.txt rename to app/src/test/resources/thunderbird/basic_no_due_date.txt diff --git a/app/src/androidTest/assets/thunderbird/priority_high.txt b/app/src/test/resources/thunderbird/priority_high.txt similarity index 100% rename from app/src/androidTest/assets/thunderbird/priority_high.txt rename to app/src/test/resources/thunderbird/priority_high.txt diff --git a/app/src/androidTest/assets/thunderbird/priority_low.txt b/app/src/test/resources/thunderbird/priority_low.txt similarity index 100% rename from app/src/androidTest/assets/thunderbird/priority_low.txt rename to app/src/test/resources/thunderbird/priority_low.txt diff --git a/app/src/androidTest/assets/thunderbird/priority_normal.txt b/app/src/test/resources/thunderbird/priority_normal.txt similarity index 100% rename from app/src/androidTest/assets/thunderbird/priority_normal.txt rename to app/src/test/resources/thunderbird/priority_normal.txt diff --git a/app/src/androidTest/assets/thunderbird/priority_unspecified.txt b/app/src/test/resources/thunderbird/priority_unspecified.txt similarity index 100% rename from app/src/androidTest/assets/thunderbird/priority_unspecified.txt rename to app/src/test/resources/thunderbird/priority_unspecified.txt diff --git a/app/src/androidTest/assets/thunderbird/repeat_daily.txt b/app/src/test/resources/thunderbird/repeat_daily.txt similarity index 100% rename from app/src/androidTest/assets/thunderbird/repeat_daily.txt rename to app/src/test/resources/thunderbird/repeat_daily.txt diff --git a/build.gradle.kts b/build.gradle.kts index bb5d5b1e0..c25eade3a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -11,6 +11,7 @@ buildscript { // https://docs.fabric.io/android/changelog.html#fabric-gradle-plugin classpath("io.fabric.tools:gradle:1.31.2") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${Versions.kotlin}") + classpath("com.dicedmelon.gradle:jacoco-android:0.1.4") } } diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index 80d033a09..32bea4778 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -12,4 +12,7 @@ object Versions { const val remote_config = "19.1.4" const val okhttp = "4.6.0" const val flipper = "0.41.0" + const val mockito = "3.3.3" + const val androidx_test = "1.2.0" + const val make_it_easy = "4.0.1" } \ No newline at end of file