JUnit test framework for AppRTC Android demo.
This allows creating tests for AppRTC Android demo that will be run on
the host machine instead of a device. These tests can mock Android APIs
through Robolectric. Because the tests are run on the host machine,
they run much faster.
BUG=webrtc:5896
NOTRY=True
Review-Url: https://codereview.webrtc.org/1985663002
Cr-Original-Commit-Position: refs/heads/master@{#12769}
Cr-Mirrored-From: https://chromium.googlesource.com/external/webrtc
Cr-Mirrored-Commit: ee3732622c0df433f62048d6f8e89e70a4561817
diff --git a/examples/androidjunit/README b/examples/androidjunit/README
new file mode 100644
index 0000000..502d714
--- /dev/null
+++ b/examples/androidjunit/README
@@ -0,0 +1,8 @@
+This directory contains example JUnit tests for Android AppRTCDemo.
+Many of these test utilize Robolectric to mock Android classes.
+
+To compile:
+ninja -C out/Debug AppRTCDemoJUnitTest
+
+To run:
+out/Debug/bin/run_AppRTCDemoJUnitTest
diff --git a/webrtc_examples.gyp b/webrtc_examples.gyp
index 9ef10ce..6f07b4d 100755
--- a/webrtc_examples.gyp
+++ b/webrtc_examples.gyp
@@ -464,6 +464,29 @@
'../build/android/test_runner.gypi',
],
},
+
+ {
+ 'target_name': 'AppRTCDemoJUnitTest',
+ 'type': 'none',
+ 'dependencies': [
+ 'AppRTCDemo_apk',
+ '<(DEPTH)/base/base.gyp:base_java',
+ '<(DEPTH)/base/base.gyp:base_java_test_support',
+ '<(DEPTH)/base/base.gyp:base_junit_test_support',
+ ],
+ 'variables': {
+ 'main_class': 'org.chromium.testing.local.JunitTestMain',
+ 'src_paths': [
+ 'examples/androidjunit/',
+ ],
+ 'test_type': 'junit',
+ 'wrapper_script_name': 'helper/<(_target_name)',
+ },
+ 'includes': [
+ '../build/host_jar.gypi',
+ '../build/android/test_runner.gypi',
+ ],
+ },
], # targets
}], # OS=="android"
],