From a27ac7c32e80d36b41b0f81b4523c340dca94fa5 Mon Sep 17 00:00:00 2001 From: "Loren M. Lang" Date: Sun, 30 Aug 2020 15:44:38 -0700 Subject: [PATCH] Added testing framework for local unit tests and instrumented unit tests --- .../app/ExampleInstrumentedTest.java | 26 +++++++++++++++++++ build.gradle | 12 +++++++++ .../org/aprsdroid/app/AprsPacketTests.java | 12 +++++++++ 3 files changed, 50 insertions(+) create mode 100644 androidTest/java/org/aprsdroid/app/ExampleInstrumentedTest.java create mode 100644 test/java/org/aprsdroid/app/AprsPacketTests.java diff --git a/androidTest/java/org/aprsdroid/app/ExampleInstrumentedTest.java b/androidTest/java/org/aprsdroid/app/ExampleInstrumentedTest.java new file mode 100644 index 0000000..85369e0 --- /dev/null +++ b/androidTest/java/org/aprsdroid/app/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package org.aprsdroid.app; + +import android.content.Context; + +import android.support.test.InstrumentationRegistry; +import android.support.test.runner.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + assertEquals("org.aprsdroid.app", appContext.getPackageName()); + } +} diff --git a/build.gradle b/build.gradle index c743282..a92f9a7 100644 --- a/build.gradle +++ b/build.gradle @@ -69,6 +69,7 @@ def mapsApiKey() { android { compileSdkVersion 28 + buildToolsVersion "28.0.3" defaultConfig { minSdkVersion 14 targetSdkVersion 28 @@ -79,6 +80,8 @@ android { resValue "string", "build_version", "$build_version" resValue "string", "google_maps_key", mapsApiKey() + + testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } useLibrary 'org.apache.http.legacy' compileOptions { @@ -127,6 +130,12 @@ android { assets.srcDirs = ['assets'] jniLibs.srcDirs = ['libs'] } + androidTest { + java.srcDirs = ['androidTest/java'] + } + test { + java.srcDirs = ['test/java'] + } } lintOptions { disable 'MissingTranslation' @@ -147,4 +156,7 @@ dependencies { implementation 'com.google.maps.android:android-maps-utils:0.5' implementation 'com.squareup.okio:okio:2.1.0' + androidTestImplementation 'com.android.support.test:runner:1.0.2' + androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' + testImplementation 'junit:junit:4.12' } diff --git a/test/java/org/aprsdroid/app/AprsPacketTests.java b/test/java/org/aprsdroid/app/AprsPacketTests.java new file mode 100644 index 0000000..c7d5425 --- /dev/null +++ b/test/java/org/aprsdroid/app/AprsPacketTests.java @@ -0,0 +1,12 @@ +package org.aprsdroid.app; + +import org.junit.Test; + +import static org.junit.Assert.*; + +public class AprsPacketTests { + @Test + public void testBasic() { + assertEquals(18403, AprsPacket.passcode("AB1CD")); + } +}