diff --git a/ci/jami_test.sh b/ci/jami_test.sh index 33dd3f2202ff8ff281f44bdbb5d62a6e7b043cd3..6fb65179fd4fa945fde1fb403f2f90e0250a3709 100755 --- a/ci/jami_test.sh +++ b/ci/jami_test.sh @@ -25,6 +25,7 @@ if [ -z "$ANDROID_SDK_ROOT" ]; then fi SCRIPT_DIRECTORY=$(dirname "$0") +TEST_ASSETS_DIRECTORY_PATH=$SCRIPT_DIRECTORY/test_assets/ APK_PATH=$SCRIPT_DIRECTORY/../jami-android/app/build/outputs/apk/noPush/debug/app-noPush-debug.apk TEST_APK_PATH=$SCRIPT_DIRECTORY/../jami-android/app/build/outputs/apk/androidTest/noPush/debug/app-noPush-debug-androidTest.apk @@ -40,6 +41,10 @@ if [ ! -f "$TEST_APK_PATH" ]; then exit 1 fi +# Install test assets on emulator (images, videos, audios, files, ...) +sh adb push $TEST_ASSETS_DIRECTORY_PATH "/data/local/tmp/jami_test_assets" + +# Launch test execution "$JAVA_HOME"/bin/java -jar "$SPOON_RUNNER_PATH" --apk "$APK_PATH" --test-apk "$TEST_APK_PATH" --sdk "$ANDROID_SDK_ROOT" --fail-on-failure # Capture the exit code diff --git a/ci/test_assets/audio/audio1.mp3 b/ci/test_assets/audio/audio1.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..2ca3a2d7992244303c521d2878dd04ddef2aaaf7 Binary files /dev/null and b/ci/test_assets/audio/audio1.mp3 differ diff --git a/ci/test_assets/audio/audio2.mp3 b/ci/test_assets/audio/audio2.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..77e8a257a9e67b3d7c22e12cbfe3a81b5a6c6300 Binary files /dev/null and b/ci/test_assets/audio/audio2.mp3 differ diff --git a/ci/test_assets/audio/audio3.mp3 b/ci/test_assets/audio/audio3.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..88dcbbe5e826c24a3faba3b74b1d2f60ce671890 Binary files /dev/null and b/ci/test_assets/audio/audio3.mp3 differ diff --git a/ci/test_assets/file/file1.dat b/ci/test_assets/file/file1.dat new file mode 100644 index 0000000000000000000000000000000000000000..9e0f96a2a253b173cb45b41868209a5d043e1437 Binary files /dev/null and b/ci/test_assets/file/file1.dat differ diff --git a/ci/test_assets/file/file2.dat b/ci/test_assets/file/file2.dat new file mode 100644 index 0000000000000000000000000000000000000000..6c5d4031e03408e34ae476c5053ee497a91ac37b Binary files /dev/null and b/ci/test_assets/file/file2.dat differ diff --git a/ci/test_assets/image/image1.jpg b/ci/test_assets/image/image1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..eef8467091415ff87903727c7b73a83ddd8a2652 Binary files /dev/null and b/ci/test_assets/image/image1.jpg differ diff --git a/ci/test_assets/image/image2.jpg b/ci/test_assets/image/image2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..10951aee5f1d56b4efb9e7b8aaabd0384ca8b44c Binary files /dev/null and b/ci/test_assets/image/image2.jpg differ diff --git a/ci/test_assets/image/image3.jpg b/ci/test_assets/image/image3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c8299ee7270263164f834cc862694a1538af82d8 Binary files /dev/null and b/ci/test_assets/image/image3.jpg differ diff --git a/ci/test_assets/image/image4.jpg b/ci/test_assets/image/image4.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ffbaf1e7d2353c5a89aa180a57771c3ee47fd137 Binary files /dev/null and b/ci/test_assets/image/image4.jpg differ diff --git a/ci/test_assets/video/video1.mp4 b/ci/test_assets/video/video1.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..4fa984b453420b134f3d7acef5f414392cea5a8a Binary files /dev/null and b/ci/test_assets/video/video1.mp4 differ diff --git a/ci/test_assets/video/video2.mp4 b/ci/test_assets/video/video2.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..0bcb02efce7f46e96ed74a723668eb331323fa8c Binary files /dev/null and b/ci/test_assets/video/video2.mp4 differ diff --git a/jami-android/app/src/androidTest/java/cx/ring/client/settings/AccountSettings.kt b/jami-android/app/src/androidTest/java/cx/ring/client/settings/AccountSettings.kt index 9521f2d23bc5ad25af2fe67514ac193fa9736b37..1454c61637baaf73b7acc5a73c9f9caff73e9a04 100644 --- a/jami-android/app/src/androidTest/java/cx/ring/client/settings/AccountSettings.kt +++ b/jami-android/app/src/androidTest/java/cx/ring/client/settings/AccountSettings.kt @@ -122,9 +122,18 @@ class AccountSettings { accountCreated = true Log.d(TAG, "Account created.") - // Download image from URL. - mActivityScenarioRule.scenario.onActivity { activity -> - downloadedImagesUri = ImageProvider().downloadImagesToUri(activity, 2) + // Get assets if installed (should be in /data/local/tmp/jami_test_assets). + val image1 = File("/data/local/tmp/jami_test_assets/image/image1.jpg") + val image2 = File("/data/local/tmp/jami_test_assets/image/image1.jpg") + if(image1.exists() && image2.exists()) { + Log.d(TAG, "Images found in assets. Using them.") + downloadedImagesUri = listOf(Uri.fromFile(image1), Uri.fromFile(image2)) + } + else { // Download images from URL. + Log.d(TAG, "Downloading images ...") + InstrumentationRegistry.getInstrumentation().targetContext + .let { downloadedImagesUri = ImageProvider().downloadImagesToUri(it, 2) } + Log.d(TAG, "Images downloaded.") } } diff --git a/jami-android/app/src/androidTest/java/cx/ring/client/wizard/AccountCreation.kt b/jami-android/app/src/androidTest/java/cx/ring/client/wizard/AccountCreation.kt index 396a55ee5d6b2ba73009e9744953c196593a588b..afd67a2ba6ca3e97b65fb95adb57ce0d259db40c 100644 --- a/jami-android/app/src/androidTest/java/cx/ring/client/wizard/AccountCreation.kt +++ b/jami-android/app/src/androidTest/java/cx/ring/client/wizard/AccountCreation.kt @@ -55,6 +55,7 @@ import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.MethodSorters +import java.io.File @LargeTest @FixMethodOrder(MethodSorters.NAME_ASCENDING) @@ -75,9 +76,17 @@ class AccountCreation { @Test fun a_setup() { - // Download image from URL. - mActivityScenarioRule.scenario.onActivity { activity -> - downloadedImagesUri = ImageProvider().downloadImagesToUri(activity, 2) + // Get assets if installed (should be in /data/local/tmp/jami_test_assets). + val image1 = File("/data/local/tmp/jami_test_assets/image/image1.jpg") + val image2 = File("/data/local/tmp/jami_test_assets/image/image1.jpg") + if(image1.exists() && image2.exists()) { + Log.d(TAG, "Images found in assets. Using them.") + downloadedImagesUri = listOf(Uri.fromFile(image1), Uri.fromFile(image2)) + } else { // Download image from URL. + Log.d(TAG, "Downloading images ...") + InstrumentationRegistry.getInstrumentation().targetContext + .let { downloadedImagesUri = ImageProvider().downloadImagesToUri(it, 2) } + Log.d(TAG, "Images downloaded.") } }