diff --git a/build.gradle b/build.gradle index 9591c313c..5a8b41f55 100644 --- a/build.gradle +++ b/build.gradle @@ -28,7 +28,8 @@ buildscript { apply plugin: 'com.android.application' dependencies { - compile fileTree(dir: 'libs', include: '*.jar') + compile fileTree(include: '*.jar', dir: 'libs') + androidTestCompile fileTree(include: '*.jar', dir: 'libs-test') if (firebaseEnable()) { compile 'com.google.firebase:firebase-messaging:9.0.0' } else { @@ -82,138 +83,98 @@ android { println '[Push Notification] Firebase enabled' } manifest.srcFile 'AndroidManifest.xml' - java.srcDirs = ['submodules/linphone/mediastreamer2/java/src','submodules/linphone/java/j2se','submodules/linphone/java/common','submodules/linphone/java/impl','submodules/externals/axmlrpc/src/main/java','submodules/linphone/coreapi/help/java','src'] - resources.srcDirs = ['submodules/linphone/mediastreamer2/java/src','submodules/linphone/java/j2se','submodules/linphone/java/common','submodules/linphone/java/impl','submodules/externals/axmlrpc/src/main/java','submodules/linphone/coreapi/help/java','src'] - aidl.srcDirs = ['submodules/linphone/mediastreamer2/java/src','submodules/linphone/java/j2se','submodules/linphone/java/common','submodules/linphone/java/impl','submodules/externals/axmlrpc/src/main/java','submodules/linphone/coreapi/help/java','src'] - renderscript.srcDirs = ['submodules/linphone/mediastreamer2/java/src','submodules/linphone/java/j2se','submodules/linphone/java/common','submodules/linphone/java/impl','submodules/externals/axmlrpc/src/main/java','submodules/linphone/coreapi/help/java','src'] + java.srcDirs = ['submodules/linphone/mediastreamer2/java/src', + 'submodules/linphone/java/j2se', + 'submodules/linphone/java/common', + 'submodules/linphone/java/impl', + 'submodules/linphone/coreapi/help/java', + 'src/com', + 'src/org'] + resources.srcDirs = ['submodules/linphone/mediastreamer2/java/src', + 'submodules/linphone/java/j2se', + 'submodules/linphone/java/common', + 'submodules/linphone/java/impl', + 'submodules/linphone/coreapi/help/java', + 'src/com', + 'src/org'] + aidl.srcDirs = ['submodules/linphone/mediastreamer2/java/src', + 'submodules/linphone/java/j2se', + 'submodules/linphone/java/common', + 'submodules/linphone/java/impl', + 'submodules/linphone/coreapi/help/java', + 'src/com', + 'src/org'] + renderscript.srcDirs = ['submodules/linphone/mediastreamer2/java/src', + 'submodules/linphone/java/j2se', + 'submodules/linphone/java/common', + 'submodules/linphone/java/impl', + 'submodules/linphone/coreapi/help/java', + 'src/com', + 'src/org'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] - jniLibs.srcDir 'libs' + jniLibs.srcDirs = ['libs'] - java.exclude '**/mediastream/MediastreamerActivity.java' - java.exclude firebase + java.excludes = ['**/mediastream/MediastreamerActivity.java', firebase] + + // Exclude some useless files + packagingOptions { + exclude '**/gdb.*' + } } - // Move the tests to tests/java, tests/res, etc... - instrumentTest.setRoot('tests') - - // Move the build types to build-types/ - // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ... - // This moves them out of them default location under src//... which would - // conflict with src/ being used by the main source set. - // Adding new build types or product flavors should be accompanied - // by a similar customization. debug.setRoot('build-types/debug') release.setRoot('build-types/release') } - buildToolsVersion '25.0.2' -} -///////////// Task ///////////// -// TODO -def getSdkDir() { - Properties local = new Properties() - if (new File("${rootDir}/local.properties").exists()) { - local.load(new FileInputStream("${rootDir}/local.properties")) + sourceSets { + androidTest { + String firebase = '' + // Exclude firebase file if not enable + if (!firebaseEnable()) { + firebase = '**/Firebase*' + println '[Push Notification] Firebase disabled' + } else { + println '[Push Notification] Firebase enabled' + } + manifest.srcFile 'AndroidManifest.xml' + java.srcDirs = ['submodules/linphone/mediastreamer2/java/src', + 'submodules/linphone/java/j2se', + 'submodules/linphone/java/common', + 'submodules/linphone/java/impl', + 'submodules/linphone/coreapi/help/java', + 'src'] + resources.srcDirs = ['submodules/linphone/mediastreamer2/java/src', + 'submodules/linphone/java/j2se', + 'submodules/linphone/java/common', + 'submodules/linphone/java/impl', + 'submodules/linphone/coreapi/help/java', + 'src'] + aidl.srcDirs = ['submodules/linphone/mediastreamer2/java/src', + 'submodules/linphone/java/j2se', + 'submodules/linphone/java/common', + 'submodules/linphone/java/impl', + 'submodules/linphone/coreapi/help/java', + 'src'] + renderscript.srcDirs = ['submodules/linphone/mediastreamer2/java/src', + 'submodules/linphone/java/j2se', + 'submodules/linphone/java/common', + 'submodules/linphone/java/impl', + 'submodules/linphone/coreapi/help/java', + 'src'] + res.srcDirs = ['res'] + assets.srcDirs = ['assets'] + jniLibs.srcDirs = ['libs'] + + java.excludes = ['**/mediastream/MediastreamerActivity.java', firebase] + + // Exclude some useless files + packagingOptions { + exclude '**/gdb.*' + } + } + + debug.setRoot('build-types/debug') + release.setRoot('build-types/release') } - return local.getProperty('sdk.dir') -} - -def getTarget() { - Properties local = new Properties() - if (new File("${rootDir}/project.properties").exists()) { - local.load(new FileInputStream("${rootDir}/project.properties")) - } - return local.getProperty('target') -} - -def getVersionName() { - Properties local = new Properties() - if (new File("${rootDir}/default.properties").exists()) { - local.load(new FileInputStream("${rootDir}/default.properties")) - } - return local.getProperty('version.name') -} - -ext.toolsDir = getSdkDir() -ext.versionName = getVersionName() - -//task myJavadocs(type: Javadoc) { - //source = sourceSets.main.allJava - //classpath = ${toolsDir}/platforms/${target}/android.jar:libs/android-support-v4.jar:libs/gcm.jar -//} - -task createLibJar(type: Jar) { - doLast { - baseName = "liblinphone" - String classDir = compileReleaseJavaWithJavac.destinationDir - - from ('submodules/linphone/java') - include "common/org/linphone/core/*.java j2se/org/linphone/core/*.java" - - from (classDir) - include "org/linphone/mediastream/**/*.class org/linphone/core/**/*.class org/linphone/tools/**/*.class" - } -} - -task createAndroidJar(type: Jar) { - doLast { - baseName = "linphone" - String classDir = compileReleaseJavaWithJavac.destinationDir - - from (['submodules/linphone/java',classDir]) - include ("common/org/linphone/core/*.java", "j2se/org/linphone/core/*.java", "org/linphone/mediastream/**/*.class", "org/linphone/core/**/*.class", "org/linphone/**/*.class, org/linphone/tools/**/*.class") - } -} - -task liblinphoneAndroidSdk(type: Zip) { - doLast { - createLibJar() - archiveName = 'liblinphone-android-sdk-${versionName}.zip' - - from ('libs') { - into 'libs' - } - include "**/*.so" - from ('.') { - into 'libs' - } - include "liblinphone.jar" - - from ('libs-debug') { - into 'libs-debug' - } - include "**/*.so" - - from ('.') { - into 'libs-debug' - } - include "liblinphone.jar" - } -} - -task linphoneAndroidSdk(type: Zip) { - doLast { - createAndroidJar() - archiveName = 'linphone-android-sdk-${versionName}.zip' - - from ('libs') { - into 'libs' - } - include "**/*.so" - from ('.') { - into 'libs' - } - include "linphone.jar" - - from ('libs-debug') { - into 'libs-debug' - } - include "**/*.so" - - from ('.') { - into 'libs-debug' - } - include "linphone.jar" - } -} +} \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index f2388d932..fcf53b07b 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index b274b346d..064130168 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Wed Mar 22 15:25:45 CET 2017 +#Wed Mar 29 17:34:30 CEST 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-3.4-bin.zip diff --git a/libs-test/junit-4.12.jar b/libs-test/junit-4.12.jar new file mode 100644 index 000000000..3a7fc266c Binary files /dev/null and b/libs-test/junit-4.12.jar differ diff --git a/libs-test/robotium-solo-5.2.1.jar b/libs-test/robotium-solo-5.2.1.jar new file mode 100644 index 000000000..2875fc4de Binary files /dev/null and b/libs-test/robotium-solo-5.2.1.jar differ diff --git a/prepare.py b/prepare.py index 670a95a00..b11b68c16 100755 --- a/prepare.py +++ b/prepare.py @@ -332,7 +332,7 @@ release: java-clean build copy-libs generate-sdk: liblinphone-android-sdk liblinphone-android-sdk: generate-apk -\tant liblinphone-android-sdk +\ttant liblinphone-android-sdk linphone-android-sdk: generate-apk \tant linphone-android-sdk @@ -351,11 +351,8 @@ run-liblinphone-tests: \t@cd liblinphone_tester && \\ \tmake run-all-tests -run-basic-tests: clean -\t$(MAKE) -C tests run-basic-tests ANT_SILENT=$(ANT_SILENT) - run-all-tests: clean -\t$(MAKE) -C tests run-all-tests ANT_SILENT=$(ANT_SILENT) +\t./gradlew connectedAndroidTest pull-transifex: \ttx pull -af diff --git a/tests/res/values/config.xml b/res/values/config.xml similarity index 100% rename from tests/res/values/config.xml rename to res/values/config.xml diff --git a/tests/src/org/linphone/test/AccountAssistant.java b/src/androidTest/java/AccountAssistant.java similarity index 81% rename from tests/src/org/linphone/test/AccountAssistant.java rename to src/androidTest/java/AccountAssistant.java index 6f4a51ec3..6916acc2e 100644 --- a/tests/src/org/linphone/test/AccountAssistant.java +++ b/src/androidTest/java/AccountAssistant.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import junit.framework.Assert; import org.linphone.LinphoneActivity; @@ -40,8 +38,8 @@ public class AccountAssistant extends SampleTest { solo.clickOnView(solo.getView(org.linphone.R.id.login_linphone)); solo.clickOnView(solo.getView(org.linphone.R.id.use_username)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_username), iContext.getString(R.string.account_linphone_login)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_password), iContext.getString(R.string.account_linphone_pwd)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_username), iContext.getString(org.linphone.R.string.account_linphone_login)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_password), iContext.getString(org.linphone.R.string.account_linphone_pwd)); solo.clickOnView(solo.getView(org.linphone.R.id.assistant_apply)); solo.clickOnView(solo.getView(org.linphone.R.id.assistant_skip)); @@ -53,7 +51,7 @@ public class AccountAssistant extends SampleTest { solo.clickOnView(solo.getView(org.linphone.R.id.answerNo)); solo.waitForActivity("LinphoneActivity", 8000); - Assert.assertTrue(solo.searchText(iContext.getString(R.string.account_linphone_login) + "@sip.linphone.org")); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.account_linphone_login) + "@sip.linphone.org")); solo.sleep(3000); //Wait for registration to be done LinphoneProxyConfig[] proxyConfigs = LinphoneManager.getLc().getProxyConfigList(); @@ -65,16 +63,16 @@ public class AccountAssistant extends SampleTest { LinphonePreferences prefs = LinphonePreferences.instance(); String stunServer = prefs.getStunServer(); Assert.assertEquals(aContext.getString(org.linphone.R.string.default_stun), stunServer); - + String transport = prefs.getAccountTransportKey(0); Assert.assertEquals(aContext.getString(org.linphone.R.string.pref_transport_tls_key), transport); - + String proxy = prefs.getAccountProxy(0); Assert.assertEquals("", proxy); String username = prefs.getAccountUsername(0); - Assert.assertEquals(iContext.getString(R.string.account_linphone_login), username); - + Assert.assertEquals(iContext.getString(org.linphone.R.string.account_linphone_login), username); + boolean ice = prefs.isIceEnabled(); Assert.assertEquals(ice, true); } @@ -90,17 +88,17 @@ public class AccountAssistant extends SampleTest { startAssistant(); solo.clickOnView(solo.getView(org.linphone.R.id.login_generic)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_username), iContext.getString(R.string.account_generic_login)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_password), iContext.getString(R.string.account_generic_pwd)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_domain), iContext.getString(R.string.account_generic_domain)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_username), iContext.getString(org.linphone.R.string.account_generic_login)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_password), iContext.getString(org.linphone.R.string.account_generic_pwd)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.assistant_domain), iContext.getString(org.linphone.R.string.account_generic_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.assistant_apply)); if (!Hacks.hasBuiltInEchoCanceller()) solo.waitForActivity("LinphoneActivity", 8000); else solo.waitForActivity("LinphoneActivity", 2000); - Assert.assertTrue(solo.searchText(iContext.getString(R.string.account_generic_login) + "@" + iContext.getString(R.string.account_generic_domain))); - + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.account_generic_login) + "@" + iContext.getString(org.linphone.R.string.account_generic_domain))); + solo.sleep(3000); //Wait for registration to be done LinphoneProxyConfig[] proxyConfigs = LinphoneManager.getLc().getProxyConfigList(); Assert.assertEquals(proxyConfigs.length, 2); @@ -114,7 +112,7 @@ public class AccountAssistant extends SampleTest { solo.clickOnView(solo.getView(org.linphone.R.id.create_account)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.username), iContext.getString(R.string.account_create_login).substring(0, 2)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.username), iContext.getString(org.linphone.R.string.account_create_login).substring(0, 2)); solo.sleep(200); TextView error = (TextView) solo.getView(org.linphone.R.id.username_error); int sleepingTime = 1500; @@ -124,39 +122,39 @@ public class AccountAssistant extends SampleTest { Assert.assertFalse(createAccount.isEnabled()); solo.clearEditText((EditText) solo.getView(org.linphone.R.id.username)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.username), iContext.getString(R.string.account_linphone_login)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.username), iContext.getString(org.linphone.R.string.account_linphone_login)); solo.sleep(sleepingTime * 2); Assert.assertEquals(error.getText(), aContext.getString(org.linphone.R.string.wizard_username_unavailable)); Assert.assertFalse(createAccount.isEnabled()); - - solo.enterText((EditText) solo.getView(org.linphone.R.id.password), iContext.getString(R.string.account_create_pwd).substring(0, 2)); + + solo.enterText((EditText) solo.getView(org.linphone.R.id.password), iContext.getString(org.linphone.R.string.account_create_pwd).substring(0, 2)); solo.sleep(sleepingTime); error = (TextView) solo.getView(org.linphone.R.id.confirm_password_error); Assert.assertEquals(error.getText(), aContext.getString(org.linphone.R.string.wizard_passwords_unmatched)); Assert.assertFalse(createAccount.isEnabled()); - + solo.clearEditText((EditText) solo.getView(org.linphone.R.id.password)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.password), iContext.getString(R.string.account_create_pwd).substring(0, 2)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.confirm_password), iContext.getString(R.string.account_create_pwd).substring(0,2)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.password), iContext.getString(org.linphone.R.string.account_create_pwd).substring(0, 2)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.confirm_password), iContext.getString(org.linphone.R.string.account_create_pwd).substring(0,2)); solo.sleep(sleepingTime); error = (TextView) solo.getView(org.linphone.R.id.password_error); Assert.assertEquals(error.getText(), aContext.getString(org.linphone.R.string.wizard_password_incorrect)); Assert.assertFalse(createAccount.isEnabled()); - - solo.enterText((EditText) solo.getView(org.linphone.R.id.email), iContext.getString(R.string.account_create_email).substring(0, 12)); + + solo.enterText((EditText) solo.getView(org.linphone.R.id.email), iContext.getString(org.linphone.R.string.account_create_email).substring(0, 12)); solo.sleep(sleepingTime); error = (TextView) solo.getView(org.linphone.R.id.email_error); Assert.assertEquals(error.getText(), aContext.getString(org.linphone.R.string.wizard_email_incorrect)); Assert.assertFalse(createAccount.isEnabled()); - + solo.clearEditText((EditText) solo.getView(org.linphone.R.id.username)); solo.clearEditText((EditText) solo.getView(org.linphone.R.id.password)); solo.clearEditText((EditText) solo.getView(org.linphone.R.id.confirm_password)); solo.clearEditText((EditText) solo.getView(org.linphone.R.id.email)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.username), iContext.getString(R.string.account_create_login)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.password), iContext.getString(R.string.account_create_pwd)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.confirm_password), iContext.getString(R.string.account_create_pwd)); - solo.enterText((EditText) solo.getView(org.linphone.R.id.email), iContext.getString(R.string.account_create_email)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.username), iContext.getString(org.linphone.R.string.account_create_login)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.password), iContext.getString(org.linphone.R.string.account_create_pwd)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.confirm_password), iContext.getString(org.linphone.R.string.account_create_pwd)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.email), iContext.getString(org.linphone.R.string.account_create_email)); solo.sleep(sleepingTime); Assert.assertEquals(error.getText(), ""); Assert.assertTrue(createAccount.isEnabled()); @@ -166,11 +164,11 @@ public class AccountAssistant extends SampleTest { public void testFCancelWizard() { startAssistant(); solo.clickOnView(solo.getView(org.linphone.R.id.assistant_cancel)); - + solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } - + private void startAssistant() { solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); diff --git a/tests/src/org/linphone/test/AccountManagement.java b/src/androidTest/java/AccountManagement.java similarity index 84% rename from tests/src/org/linphone/test/AccountManagement.java rename to src/androidTest/java/AccountManagement.java index 4ee883eab..4571347f9 100644 --- a/tests/src/org/linphone/test/AccountManagement.java +++ b/src/androidTest/java/AccountManagement.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import junit.framework.Assert; import org.linphone.FragmentsAvailable; @@ -17,16 +15,16 @@ public class AccountManagement extends SampleTest { @LargeTest public void testAEditAccount() { goToSettings(); - solo.clickOnText(iContext.getString(R.string.account_generic_login) + "@" + iContext.getString(R.string.account_generic_domain)); + solo.clickOnText(iContext.getString(org.linphone.R.string.account_generic_login) + "@" + iContext.getString(org.linphone.R.string.account_generic_domain)); solo.clickOnText(aContext.getString(org.linphone.R.string.pref_username)); solo.enterText(0, "new"); - + solo.clickOnView(solo.getView(android.R.id.button1)); - + solo.goBack(); solo.goBack(); solo.waitForFragmentByTag(FragmentsAvailable.DIALER.toString(), 2000); - + LinphoneProxyConfig[] proxyConfigs = LinphoneManager.getLc().getProxyConfigList(); LinphoneProxyConfig proxyConfig = proxyConfigs[0]; waitForRegistration(proxyConfig); @@ -39,13 +37,13 @@ public class AccountManagement extends SampleTest { @LargeTest public void testBDeleteAccount() { goToSettings(); - solo.clickOnText(iContext.getString(R.string.account_generic_login) + "new"); + solo.clickOnText(iContext.getString(org.linphone.R.string.account_generic_login) + "new"); selectItemInListOnUIThread(16); solo.clickLongOnText(aContext.getString(org.linphone.R.string.pref_delete_account)); - + solo.goBack(); solo.goBack(); - + LinphoneProxyConfig[] proxyConfigs = LinphoneManager.getLc().getProxyConfigList(); Assert.assertEquals(1, proxyConfigs.length); } @@ -53,29 +51,29 @@ public class AccountManagement extends SampleTest { @LargeTest public void testCDisableAccount() { goToSettings(); - solo.clickOnText(iContext.getString(R.string.account_linphone_login)); + solo.clickOnText(iContext.getString(org.linphone.R.string.account_linphone_login)); selectItemInListOnUIThread(14); solo.clickLongOnText(aContext.getString(org.linphone.R.string.pref_disable_account)); - + solo.goBack(); solo.goBack(); - + Assert.assertFalse(LinphonePreferences.instance().isAccountEnabled(0)); } - + @LargeTest public void testDEnableAccount() { goToSettings(); - solo.clickOnText(iContext.getString(R.string.account_linphone_login)); + solo.clickOnText(iContext.getString(org.linphone.R.string.account_linphone_login)); selectItemInListOnUIThread(14); solo.clickLongOnText(aContext.getString(org.linphone.R.string.pref_disable_account)); - + solo.goBack(); solo.goBack(); - + Assert.assertTrue(LinphonePreferences.instance().isAccountEnabled(0)); } - + private void goToSettings() { solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); diff --git a/tests/src/org/linphone/test/AinitTestEnv.java b/src/androidTest/java/AinitTestEnv.java similarity index 88% rename from tests/src/org/linphone/test/AinitTestEnv.java rename to src/androidTest/java/AinitTestEnv.java index 08777205b..7657e8d88 100644 --- a/tests/src/org/linphone/test/AinitTestEnv.java +++ b/src/androidTest/java/AinitTestEnv.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import junit.framework.Assert; import android.test.suitebuilder.annotation.LargeTest; @@ -14,9 +12,9 @@ public class AinitTestEnv extends SampleTest { @SmallTest @MediumTest @LargeTest - public void testAInitLinphoneCore() { + public void testAInitLinphoneCore() { LinphoneTestManager.createAndStart(aContext, iContext, 1); - + solo.sleep(5000); Assert.assertEquals(1, LinphoneTestManager.getLc().getProxyConfigList().length); waitForRegistration(LinphoneTestManager.getLc().getProxyConfigList()[0]); diff --git a/tests/src/org/linphone/test/CallsAudio.java b/src/androidTest/java/CallsAudio.java similarity index 85% rename from tests/src/org/linphone/test/CallsAudio.java rename to src/androidTest/java/CallsAudio.java index e65c2f468..a0daa759c 100644 --- a/tests/src/org/linphone/test/CallsAudio.java +++ b/src/androidTest/java/CallsAudio.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import junit.framework.Assert; import org.linphone.CallActivity; @@ -22,7 +20,7 @@ import android.view.View; * @author Sylvain Berfini */ public class CallsAudio extends SampleTest { - + @SmallTest @MediumTest @LargeTest @@ -34,24 +32,24 @@ public class CallsAudio extends SampleTest { solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_title)); solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_enable_title)); solo.sleep(500); - + solo.goBack(); solo.sleep(1000); Assert.assertFalse(LinphoneManager.getLc().isVideoEnabled()); } - + @SmallTest @MediumTest @LargeTest public void testBOutgoingCallWithDefaultConfig() { LinphoneTestManager.getInstance().declineCall = false; // Just in case - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); assertOutgoingCallIsCorrectlyRunning(); assertCallIsCorrectlyRunning(); - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); @@ -64,26 +62,26 @@ public class CallsAudio extends SampleTest { solo.clickOnText("PCMU"); goBackToDialerAfterCodecChanges(); solo.sleep(1000); - + LinphoneManager.getLc().setUseRfc2833ForDtmfs(true); LinphoneManager.getLc().setUseSipInfoForDtmfs(false); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); - + solo.clickOnView(solo.getView(org.linphone.R.id.dialer)); solo.clickOnView(solo.getView(org.linphone.R.id.Digit3)); solo.clickOnView(solo.getView(org.linphone.R.id.dialer)); - + solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); - + //To enable when issue http://git.linphone.org/mantis/view.php?id=750 will be fixed //Assert.assertTrue(LinphoneTestManager.getInstance().isDTMFReceived); LinphoneTestManager.getInstance().isDTMFReceived = false; - + solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } @@ -93,23 +91,23 @@ public class CallsAudio extends SampleTest { public void testDDTMFSIPINFO() { LinphoneManager.getLc().setUseRfc2833ForDtmfs(false); LinphoneManager.getLc().setUseSipInfoForDtmfs(true); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); - + solo.clickOnView(solo.getView(org.linphone.R.id.dialer)); solo.clickOnView(solo.getView(org.linphone.R.id.Digit3)); solo.clickOnView(solo.getView(org.linphone.R.id.dialer)); - + solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); - + //To enable when issue http://git.linphone.org/mantis/view.php?id=751 will be fixed //Assert.assertTrue(LinphoneTestManager.getInstance().isDTMFReceived); LinphoneTestManager.getInstance().isDTMFReceived = false; - + solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } @@ -118,12 +116,12 @@ public class CallsAudio extends SampleTest { @LargeTest public void testEOutgoingCallToAudioClient() { LinphoneTestManager.getLc().enableVideo(false, false); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); solo.waitForActivity("CallOutgoingActivity", 2000); - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); @@ -133,12 +131,12 @@ public class CallsAudio extends SampleTest { @LargeTest public void testFOutgoingCallToVideoClient() { LinphoneTestManager.getLc().enableVideo(true, true); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); solo.waitForActivity("CallOutgoingActivity", 5000); - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); @@ -148,8 +146,8 @@ public class CallsAudio extends SampleTest { @LargeTest public void testGOutgoingCallCancelled() { LinphoneTestManager.getInstance().autoAnswer = false; - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); solo.waitForActivity("CallOutgoingActivity", 200); @@ -157,9 +155,9 @@ public class CallsAudio extends SampleTest { solo.sleep(2000); waitForCallState(LinphoneManager.getLc().getCalls()[0],LinphoneCall.State.OutgoingRinging); - + LinphoneTestManager.getInstance().autoAnswer = true; - + solo.clickOnView(solo.getView(org.linphone.R.id.outgoing_hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); @@ -170,16 +168,16 @@ public class CallsAudio extends SampleTest { public void testHOutgoingCallDeclined() { LinphoneTestManager.getInstance().autoAnswer = true; // Just in case LinphoneTestManager.getInstance().declineCall = true; - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + solo.sleep(1500); Assert.assertTrue(solo.searchText(aContext.getString(org.linphone.R.string.error_call_declined))); - + solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + LinphoneTestManager.getInstance().declineCall = false; } @@ -189,14 +187,14 @@ public class CallsAudio extends SampleTest { public void testIIncomingAudioCall() { LinphoneTestManager.getInstance().declineCall = false; // Just in case LinphoneTestManager.getLc().enableVideo(false, false); - + solo.sleep(2000); try { - LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.test.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.test.R.string.account_linphone_domain)); + LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.R.string.account_linphone_domain)); } catch (LinphoneCoreException e) { e.printStackTrace(); } - + solo.waitForActivity("CallIncomingActivity", 2000); solo.assertCurrentActivity("Expected Incoming Call Activity", CallIncomingActivity.class); @@ -210,7 +208,7 @@ public class CallsAudio extends SampleTest { solo.drag(10, topLayout.getMeasuredWidth() - 10, slidersTop, slidersTop, 10);*/ solo.clickOnView(solo.getView(org.linphone.R.id.accept)); - + assertCallIsCorrectlyRunning(); } @@ -220,11 +218,11 @@ public class CallsAudio extends SampleTest { solo.sleep(2000); try { - LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.test.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.test.R.string.account_linphone_domain)); + LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.R.string.account_linphone_domain)); } catch (LinphoneCoreException e) { e.printStackTrace(); } - + solo.waitForActivity("CallIncomingActivity", 5000); solo.assertCurrentActivity("Expected Incoming Call Activity", CallIncomingActivity.class); @@ -238,18 +236,18 @@ public class CallsAudio extends SampleTest { solo.drag(10, topLayout.getMeasuredWidth() - 10, slidersTop, slidersTop, 10);*/ solo.clickOnView(solo.getView(org.linphone.R.id.accept)); - + assertCallIsCorrectlyRunning(); } @MediumTest @LargeTest public void testKSelfPauseResumeCall() { - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); - + solo.clickOnView(solo.getView(org.linphone.R.id.pause)); solo.sleep(1000); @@ -259,7 +257,7 @@ public class CallsAudio extends SampleTest { solo.sleep(1000); waitForCallResumed(LinphoneManager.getLc().getCalls()[0]); - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); @@ -268,11 +266,11 @@ public class CallsAudio extends SampleTest { @MediumTest @LargeTest public void testLRemotePauseResumeCall() { - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); - + LinphoneTestManager.getLc().pauseAllCalls(); solo.sleep(1000); @@ -282,7 +280,7 @@ public class CallsAudio extends SampleTest { solo.sleep(1000); waitForCallResumed(LinphoneManager.getLc().getCalls()[0]); - + solo.clickLongOnScreen(200, 200); //To ensure controls are shown solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); @@ -291,13 +289,13 @@ public class CallsAudio extends SampleTest { @LargeTest public void testMSwitchOnVideoInCallIsNotAllowed() { - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); - + Assert.assertFalse(solo.getView(org.linphone.R.id.video).isEnabled()); - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); @@ -310,14 +308,14 @@ public class CallsAudio extends SampleTest { solo.sleep(2000); try { - LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.test.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.test.R.string.account_linphone_domain)); + LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.R.string.account_linphone_domain)); } catch (LinphoneCoreException e) { e.printStackTrace(); } - + solo.waitForActivity("CallIncomingActivity", 5000); solo.assertCurrentActivity("Expected Incoming Call Activity", CallIncomingActivity.class); - + solo.sleep(1000); View topLayout = solo.getView(org.linphone.R.id.topLayout); int topLayoutHeigh = topLayout.getMeasuredHeight(); @@ -336,16 +334,16 @@ public class CallsAudio extends SampleTest { solo.sleep(2000); try { - LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.test.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.test.R.string.account_linphone_domain)); + LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.R.string.account_linphone_domain)); } catch (LinphoneCoreException e) { e.printStackTrace(); } - + solo.waitForActivity("CallIncomingActivity", 5000); solo.assertCurrentActivity("Expected Incoming Call Activity", CallIncomingActivity.class); - + LinphoneTestManager.getLc().terminateAllCalls(); - + solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } @@ -355,10 +353,10 @@ public class CallsAudio extends SampleTest { public void testPDisplayMissedCallsNumber() { solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + Assert.assertTrue(solo.searchText("1")); } - + //TODO: Test each audio codec private void assertOutgoingCallIsCorrectlyRunning() { @@ -368,7 +366,7 @@ public class CallsAudio extends SampleTest { LinphoneCall call = LinphoneManager.getLc().getCalls()[0]; waitForCallState(call, LinphoneCall.State.OutgoingProgress); } - + private void assertCallIsCorrectlyRunning() { solo.waitForActivity("CallActivity", 5000); solo.assertCurrentActivity("Expected InCall Activity", CallActivity.class); @@ -376,23 +374,23 @@ public class CallsAudio extends SampleTest { LinphoneCall call = LinphoneManager.getLc().getCalls()[0]; waitForCallState(call, LinphoneCall.State.StreamsRunning); } - + private void goToSettings() { solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + solo.clickOnView(solo.getView(org.linphone.R.id.side_menu_button)); solo.clickOnText(aContext.getString(org.linphone.R.string.menu_settings)); } - + private void goToAudioCodecsSettings() { goToSettings(); - + selectItemInListOnUIThread(4); solo.clickOnText(aContext.getString(org.linphone.R.string.pref_audio_title)); solo.sleep(500); } - + private boolean isAudioCodecEnabled(String mime, int rate) { LinphoneCore lc = LinphoneTestManager.getLc(); for (final PayloadType pt : lc.getAudioCodecs()) { @@ -401,85 +399,85 @@ public class CallsAudio extends SampleTest { } return false; } - + private void disableAllEnabledAudioCodecs() { goToAudioCodecsSettings(); - + if (isAudioCodecEnabled("opus", 48000)) { solo.clickOnText("opus"); solo.sleep(500); } - + if (isAudioCodecEnabled("speex", 16000)) { solo.clickOnText("speex"); solo.sleep(500); } - + if (isAudioCodecEnabled("speex", 8000)) { solo.clickOnText("speex", 1); solo.sleep(500); } - + if (isAudioCodecEnabled("iLBC", 8000)) { solo.clickOnText("iLBC"); solo.sleep(500); } - + if (isAudioCodecEnabled("AMR", 8000)) { solo.clickOnText("AMR"); solo.sleep(500); } - + if (isAudioCodecEnabled("AMRWB", 8000)) { solo.clickOnText("AMRWB"); solo.sleep(500); } - + if (isAudioCodecEnabled("G729", 8000)) { solo.clickOnText("G729"); solo.sleep(500); } - + if (isAudioCodecEnabled("GSM", 8000)) { solo.clickOnText("GSM"); solo.sleep(500); } - + if (isAudioCodecEnabled("G722", 8000)) { solo.clickOnText("G722"); solo.sleep(500); } - + if (isAudioCodecEnabled("SILK", 24000)) { solo.clickOnText("SILK"); solo.sleep(500); } - + if (isAudioCodecEnabled("SILK", 16000)) { solo.clickOnText("SILK", 1); solo.sleep(500); } - + if (isAudioCodecEnabled("SILK", 8000)) { solo.clickOnText("SILK", 2); solo.sleep(500); } - + if (isAudioCodecEnabled("PCMU", 8000)) { solo.clickOnText("PCMU"); solo.sleep(500); } - + if (isAudioCodecEnabled("PCMA", 8000)) { solo.clickOnText("PCMA"); solo.sleep(500); } } - + private void goBackToDialerAfterCodecChanges() { solo.goBack(); solo.goBack(); - + solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } diff --git a/tests/src/org/linphone/test/CallsVideo.java b/src/androidTest/java/CallsVideo.java similarity index 87% rename from tests/src/org/linphone/test/CallsVideo.java rename to src/androidTest/java/CallsVideo.java index 177c3974c..d5d1d4a14 100644 --- a/tests/src/org/linphone/test/CallsVideo.java +++ b/src/androidTest/java/CallsVideo.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import junit.framework.Assert; import org.linphone.CallActivity; @@ -23,7 +21,7 @@ import android.view.View; * @author Sylvain Berfini */ public class CallsVideo extends SampleTest { - + @SmallTest @MediumTest @LargeTest @@ -39,22 +37,22 @@ public class CallsVideo extends SampleTest { solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_automatically_accept_video_title)); solo.sleep(500); solo.goBack(); - + solo.goBack(); solo.sleep(1000); Assert.assertTrue(LinphoneManager.getLc().isVideoEnabled()); Assert.assertTrue(LinphoneManager.getLc().getVideoAutoAcceptPolicy()); Assert.assertTrue(LinphoneManager.getLc().getVideoAutoInitiatePolicy()); } - + @SmallTest @MediumTest @LargeTest public void testBOutgoingCallWithDefaultConfig() { LinphoneTestManager.getInstance().declineCall = false; // Just in case LinphoneTestManager.getLc().enableVideo(true, true); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); assertOutgoingCallIsCorrectlyRunning(); @@ -75,26 +73,26 @@ public class CallsVideo extends SampleTest { solo.clickOnText("PCMU"); goBackToDialerAfterCodecChanges(); solo.sleep(1000); - + LinphoneManager.getLc().setUseRfc2833ForDtmfs(true); LinphoneManager.getLc().setUseSipInfoForDtmfs(false); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); - + solo.clickOnView(solo.getView(org.linphone.R.id.dialer)); solo.clickOnView(solo.getView(org.linphone.R.id.Digit3)); solo.clickOnView(solo.getView(org.linphone.R.id.dialer)); - + solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); - + //To enable when issue http://git.linphone.org/mantis/view.php?id=750 will be fixed //Assert.assertTrue(LinphoneTestManager.getInstance().isDTMFReceived); LinphoneTestManager.getInstance().isDTMFReceived = false; - + solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } @@ -104,23 +102,23 @@ public class CallsVideo extends SampleTest { public void testDDTMFSIPINFO() { LinphoneManager.getLc().setUseRfc2833ForDtmfs(false); LinphoneManager.getLc().setUseSipInfoForDtmfs(true); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); - + solo.clickOnView(solo.getView(org.linphone.R.id.dialer)); solo.clickOnView(solo.getView(org.linphone.R.id.Digit3)); solo.clickOnView(solo.getView(org.linphone.R.id.dialer)); - + solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); - + //To enable when issue http://git.linphone.org/mantis/view.php?id=751 will be fixed //Assert.assertTrue(LinphoneTestManager.getInstance().isDTMFReceived); LinphoneTestManager.getInstance().isDTMFReceived = false; - + solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } @@ -129,13 +127,13 @@ public class CallsVideo extends SampleTest { @LargeTest public void testEOutgoingCallToAudioClient() { LinphoneTestManager.getLc().enableVideo(false, false); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); assertOutgoingCallIsCorrectlyRunning(); assertCallIsCorrectlyRunning(); - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); @@ -146,7 +144,7 @@ public class CallsVideo extends SampleTest { public void testFOutgoingCallToVideoClient() { LinphoneTestManager.getLc().enableVideo(true, true); - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); assertOutgoingCallIsCorrectlyRunning(); @@ -163,18 +161,18 @@ public class CallsVideo extends SampleTest { @LargeTest public void testGOutgoingCallCancelled() { LinphoneTestManager.getInstance().autoAnswer = false; - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + solo.waitForActivity("InCallActivity", 5000); solo.assertCurrentActivity("Expected InCall Activity", CallActivity.class); - + solo.sleep(2000); waitForCallState(LinphoneManager.getLc().getCalls()[0],LinphoneCall.State.OutgoingRinging); - + LinphoneTestManager.getInstance().autoAnswer = true; - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); @@ -184,16 +182,16 @@ public class CallsVideo extends SampleTest { public void testHOutgoingCallDeclined() { LinphoneTestManager.getInstance().autoAnswer = true; // Just in case LinphoneTestManager.getInstance().declineCall = true; - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + solo.sleep(1500); Assert.assertTrue(solo.searchText(aContext.getString(org.linphone.R.string.error_call_declined))); - + solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + LinphoneTestManager.getInstance().declineCall = false; } @@ -201,20 +199,20 @@ public class CallsVideo extends SampleTest { public void testIIncomingAudioCall() { LinphoneTestManager.getInstance().declineCall = false; // Just in case LinphoneTestManager.getLc().enableVideo(false, false); - + solo.sleep(2000); try { - LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.test.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.test.R.string.account_linphone_domain)); + LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.R.string.account_linphone_domain)); } catch (LinphoneCoreException e) { e.printStackTrace(); } - + solo.waitForActivity("IncomingCallActivity", 5000); solo.assertCurrentActivity("Expected Incoming Call Activity", CallIncomingActivity.class); solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.accept)); - + assertCallIsCorrectlyRunning(); } @@ -226,20 +224,20 @@ public class CallsVideo extends SampleTest { solo.sleep(2000); try { - LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.test.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.test.R.string.account_linphone_domain)); + LinphoneTestManager.getLc().invite("sip:" + iContext.getString(org.linphone.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.R.string.account_linphone_domain)); } catch (LinphoneCoreException e) { e.printStackTrace(); } - + solo.waitForActivity("IncomingCallActivity", 5000); solo.assertCurrentActivity("Expected Incoming Call Activity", CallIncomingActivity.class); solo.clickOnView(solo.getView(org.linphone.R.id.accept)); - + assertCallIsCorrectlyRunning(); assertCallIsRunningWithVideo(); } - + // @SmallTest // @MediumTest // @LargeTest @@ -248,15 +246,15 @@ public class CallsVideo extends SampleTest { // Thread.sleep(2000); // callPlayerTest(); // } - + //TODO: Test each video codec @MediumTest @LargeTest public void testKSelfPauseResumeCall() { - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); solo.clickOnView(solo.getView(org.linphone.R.id.video_frame)); @@ -267,7 +265,7 @@ public class CallsVideo extends SampleTest { solo.clickOnView(solo.getView(org.linphone.R.id.video_frame)); solo.clickOnView(solo.getView(org.linphone.R.id.call_pause)); solo.sleep(1000); - + waitForCallResumed(LinphoneManager.getLc().getCalls()[0]); solo.clickOnView(solo.getView(org.linphone.R.id.video_frame)); @@ -279,11 +277,11 @@ public class CallsVideo extends SampleTest { @MediumTest @LargeTest public void testLRemotePauseResumeCall() { - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); - + LinphoneTestManager.getLc().pauseAllCalls(); solo.sleep(1000); @@ -303,23 +301,23 @@ public class CallsVideo extends SampleTest { @MediumTest @LargeTest public void testMSwitchOffVideoInCall() { - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(); assertCallIsRunningWithVideo(); - + Assert.assertTrue(solo.getView(org.linphone.R.id.video).isEnabled()); solo.clickOnView(solo.getView(org.linphone.R.id.video_frame)); solo.clickOnView(solo.getView(org.linphone.R.id.video)); solo.sleep(1000); Assert.assertFalse(LinphoneManager.getLc().getCurrentCall().getCurrentParamsCopy().getVideoEnabled()); - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } - + private void assertCallIsRunningWithVideo() { LinphoneCall call = LinphoneManager.getLc().getCalls()[0]; Assert.assertTrue(call.getCurrentParamsCopy().getVideoEnabled()); @@ -341,22 +339,22 @@ public class CallsVideo extends SampleTest { waitForCallState(call, LinphoneCall.State.StreamsRunning); } - + private void goToSettings() { solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); solo.clickOnView(solo.getView(org.linphone.R.id.side_menu_button)); solo.clickOnText(aContext.getString(org.linphone.R.string.menu_settings)); } - + private void goToAudioCodecsSettings() { goToSettings(); - + selectItemInListOnUIThread(4); solo.clickOnText(aContext.getString(org.linphone.R.string.pref_audio_title)); solo.sleep(500); } - + private void goToVideoCodecsSettings() { //goToSettings(); @@ -367,7 +365,7 @@ public class CallsVideo extends SampleTest { solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_title)); solo.sleep(500); } - + private boolean isAudioCodecEnabled(String mime, int rate) { LinphoneCore lc = LinphoneTestManager.getLc(); for (final PayloadType pt : lc.getAudioCodecs()) { @@ -376,81 +374,81 @@ public class CallsVideo extends SampleTest { } return false; } - + private void disableAllEnabledAudioCodecs() { goToAudioCodecsSettings(); - + if (isAudioCodecEnabled("opus", 48000)) { solo.clickOnText("opus"); solo.sleep(500); } - + if (isAudioCodecEnabled("speex", 16000)) { solo.clickOnText("speex"); solo.sleep(500); } - + if (isAudioCodecEnabled("speex", 8000)) { solo.clickOnText("speex", 1); solo.sleep(500); } - + if (isAudioCodecEnabled("iLBC", 8000)) { solo.clickOnText("iLBC"); solo.sleep(500); } - + if (isAudioCodecEnabled("AMR", 8000)) { solo.clickOnText("AMR"); solo.sleep(500); } - + if (isAudioCodecEnabled("AMRWB", 8000)) { solo.clickOnText("AMRWB"); solo.sleep(500); } - + if (isAudioCodecEnabled("G729", 8000)) { solo.clickOnText("G729"); solo.sleep(500); } - + if (isAudioCodecEnabled("GSM", 8000)) { solo.clickOnText("GSM"); solo.sleep(500); } - + if (isAudioCodecEnabled("G722", 8000)) { solo.clickOnText("G722"); solo.sleep(500); } - + if (isAudioCodecEnabled("SILK", 24000)) { solo.clickOnText("SILK"); solo.sleep(500); } - + if (isAudioCodecEnabled("SILK", 16000)) { solo.clickOnText("SILK", 1); solo.sleep(500); } - + if (isAudioCodecEnabled("SILK", 8000)) { solo.clickOnText("SILK", 2); solo.sleep(500); } - + if (isAudioCodecEnabled("PCMU", 8000)) { solo.clickOnText("PCMU"); solo.sleep(500); } - + if (isAudioCodecEnabled("PCMA", 8000)) { solo.clickOnText("PCMA"); solo.sleep(500); } } - + private boolean isVideoCodecEnabled(String mime) { LinphoneCore lc = LinphoneTestManager.getLc(); for (final PayloadType pt : lc.getVideoCodecs()) { @@ -459,73 +457,73 @@ public class CallsVideo extends SampleTest { } return false; } - + private void disableAllEnabledVideoCodecs() { goToVideoCodecsSettings(); - + if (isVideoCodecEnabled("VP8")) { solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_codec_vp8_title)); solo.sleep(500); } - + if (isVideoCodecEnabled("H264")) { solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_codec_h264_title)); solo.sleep(500); } - + if (isVideoCodecEnabled("MP4V-ES")) { solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_codec_mpeg4_title)); solo.sleep(500); } } - + // private void forceH264Codec() { // goToVideoCodecsSettings(); -// +// // if (isVideoCodecEnabled("VP8")) { // solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_codec_vp8_title)); // solo.sleep(500); // } -// +// // if (!isVideoCodecEnabled("H264")) { // solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_codec_h264_title)); // solo.sleep(500); // } -// +// // if (isVideoCodecEnabled("MP4V-ES")) { // solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_codec_mpeg4_title)); // solo.sleep(500); // } // } - + // private void enableAllDisabledVideoCodecs() { // goToVideoCodecsSettings(); -// +// // if (!isVideoCodecEnabled("VP8")) { // solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_codec_vp8_title)); // solo.sleep(500); // } -// +// // if (!isVideoCodecEnabled("H264")) { // solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_codec_h264_title)); // solo.sleep(500); // } -// +// // if (!isVideoCodecEnabled("MP4V-ES")) { // solo.clickOnText(aContext.getString(org.linphone.R.string.pref_video_codec_mpeg4_title)); // solo.sleep(500); // } // } - + private void goBackToDialerAfterCodecChanges() { solo.goBack(); solo.goBack(); - + solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } - + // private void callPlayerTest() throws InterruptedException { // LinphoneCall call = LinphoneTestManager.getLc().getCurrentCall(); // Assert.assertNotNull(call); @@ -547,15 +545,15 @@ public class CallsVideo extends SampleTest { // } // } // } -// +// // private class EofListenerImpl implements LinphonePlayer.Listener { // private boolean mEof = false; -// +// // @Override // public void endOfFile(LinphonePlayer player) { // mEof = true; // } -// +// // public boolean waitForEof(int timeout) throws InterruptedException { // final int refreshTime = 100; // int time = 0; diff --git a/tests/src/org/linphone/test/Chat.java b/src/androidTest/java/Chat.java similarity index 65% rename from tests/src/org/linphone/test/Chat.java rename to src/androidTest/java/Chat.java index 0db97b052..d45b87a32 100644 --- a/tests/src/org/linphone/test/Chat.java +++ b/src/androidTest/java/Chat.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import junit.framework.Assert; import org.linphone.LinphoneActivity; @@ -27,22 +25,22 @@ public class Chat extends SampleTest { @LargeTest public void testAEmptyChatHistory() { goToChat(); - + LinphoneChatRoom[] chats = LinphoneTestManager.getInstance().getLc().getChatRooms(); for (LinphoneChatRoom chatroom : chats) { chatroom.deleteHistory(); } - + Assert.assertEquals(0, LinphoneActivity.instance().getUnreadMessageCount()); } - + @LargeTest public void testBDisplayEmptyChatHistory() { goToChat(); - + Assert.assertTrue(solo.searchText(aContext.getString(org.linphone.R.string.no_chat_history))); } - + @SmallTest @MediumTest @LargeTest @@ -50,32 +48,32 @@ public class Chat extends SampleTest { goToChat(); solo.clickOnView(solo.getView(org.linphone.R.id.new_discussion)); - solo.enterText((EditText)solo.getView(org.linphone.R.id.search_contact_field), "sip:" + iContext.getString(R.string.account_test_calls_login) + "@" + iContext.getString(R.string.account_test_calls_domain)); + solo.enterText((EditText)solo.getView(org.linphone.R.id.search_contact_field), "sip:" + iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); - solo.enterText((EditText)solo.getView(org.linphone.R.id.message), iContext.getString(R.string.chat_test_text_sent)); + solo.enterText((EditText)solo.getView(org.linphone.R.id.message), iContext.getString(org.linphone.R.string.chat_test_text_sent)); solo.clickOnView(solo.getView(org.linphone.R.id.send_message)); - + solo.sleep(1000); - Assert.assertTrue(solo.searchText(iContext.getString(R.string.chat_test_text_sent))); - Assert.assertEquals(iContext.getString(R.string.chat_test_text_sent), LinphoneTestManager.getInstance().lastMessageReceived); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.chat_test_text_sent))); + Assert.assertEquals(iContext.getString(org.linphone.R.string.chat_test_text_sent), LinphoneTestManager.getInstance().lastMessageReceived); } @LargeTest public void testDIsNotEmptyChatHistory() { goToChat(); - Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.account_test_calls_login))); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.account_test_calls_login))); } - + @SmallTest @MediumTest @LargeTest public void testEReceiveTextMessage() { goToChat(); - solo.clickOnText(iContext.getString(org.linphone.test.R.string.account_test_calls_login)); - - LinphoneChatRoom chatRoom = LinphoneTestManager.getLc().getOrCreateChatRoom("sip:" + iContext.getString(R.string.account_linphone_login) + "@" + iContext.getString(R.string.account_linphone_domain)); - LinphoneChatMessage msg = chatRoom.createLinphoneChatMessage(iContext.getString(R.string.chat_test_text_received)); + solo.clickOnText(iContext.getString(org.linphone.R.string.account_test_calls_login)); + + LinphoneChatRoom chatRoom = LinphoneTestManager.getLc().getOrCreateChatRoom("sip:" + iContext.getString(org.linphone.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.R.string.account_linphone_domain)); + LinphoneChatMessage msg = chatRoom.createLinphoneChatMessage(iContext.getString(org.linphone.R.string.chat_test_text_received)); chatRoom.sendMessage(msg, new LinphoneChatMessage.StateListener() { @Override public void onLinphoneChatMessageStateChanged(LinphoneChatMessage msg, @@ -85,20 +83,20 @@ public class Chat extends SampleTest { }); solo.sleep(1000); - Assert.assertTrue(solo.searchText(iContext.getString(R.string.chat_test_text_received))); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.chat_test_text_received))); } @MediumTest @LargeTest public void testFDeleteMessage() { goToChat(); - solo.clickOnText(iContext.getString(org.linphone.test.R.string.account_test_calls_login)); - - solo.clickLongOnText(iContext.getString(R.string.chat_test_text_received)); + solo.clickOnText(iContext.getString(org.linphone.R.string.account_test_calls_login)); + + solo.clickLongOnText(iContext.getString(org.linphone.R.string.chat_test_text_received)); solo.clickOnText(aContext.getString(org.linphone.R.string.delete)); solo.sleep(1000); - Assert.assertFalse(solo.searchText(iContext.getString(R.string.chat_test_text_received))); + Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.R.string.chat_test_text_received))); } @MediumTest @@ -106,30 +104,30 @@ public class Chat extends SampleTest { public void testGChatLandscape() { goToChat(); - solo.clickOnText(iContext.getString(org.linphone.test.R.string.account_test_calls_login)); + solo.clickOnText(iContext.getString(org.linphone.R.string.account_test_calls_login)); solo.sleep(1000); solo.setActivityOrientation(Solo.LANDSCAPE); solo.sleep(1000); - solo.enterText((EditText) solo.getView(org.linphone.R.id.message), iContext.getString(R.string.chat_test_text_sent)); + solo.enterText((EditText) solo.getView(org.linphone.R.id.message), iContext.getString(org.linphone.R.string.chat_test_text_sent)); solo.clickOnView(solo.getView(org.linphone.R.id.send_message)); solo.sleep(1000); - Assert.assertTrue(solo.searchText(iContext.getString(R.string.chat_test_text_sent))); - Assert.assertEquals(iContext.getString(R.string.chat_test_text_sent), LinphoneTestManager.getInstance().lastMessageReceived); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.chat_test_text_sent))); + Assert.assertEquals(iContext.getString(org.linphone.R.string.chat_test_text_sent), LinphoneTestManager.getInstance().lastMessageReceived); solo.clickOnView(solo.getView(org.linphone.R.id.back)); solo.sleep(1000); - Assert.assertTrue(solo.searchText(iContext.getString(R.string.account_test_calls_login))); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.account_test_calls_login))); } @MediumTest @LargeTest public void testHDeleteConversation() { goToChat(); - + /*solo.clickOnText(aContext.getString(org.linphone.R.string.button_edit)); solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.delete)); @@ -138,12 +136,12 @@ public class Chat extends SampleTest { solo.sleep(1000); Assert.assertTrue(solo.searchText(aContext.getString(org.linphone.R.string.no_chat_history)));*/ } - + private void goToChat() { solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + solo.clickOnView(solo.getView(org.linphone.R.id.chat)); } - + } diff --git a/tests/src/org/linphone/test/ConferenceAndMultiCall.java b/src/androidTest/java/ConferenceAndMultiCall.java similarity index 84% rename from tests/src/org/linphone/test/ConferenceAndMultiCall.java rename to src/androidTest/java/ConferenceAndMultiCall.java index 7f2c32d0a..bb82241d7 100644 --- a/tests/src/org/linphone/test/ConferenceAndMultiCall.java +++ b/src/androidTest/java/ConferenceAndMultiCall.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import java.util.ArrayList; import junit.framework.Assert; @@ -97,7 +95,7 @@ public class ConferenceAndMultiCall extends SampleTest { @LargeTest public void testEPauseAllCalls() { startTwoCalls(); - + solo.sleep(2000); LinphoneCall call1 = LinphoneTestManager.getLc(1).getCalls()[0]; LinphoneCall call2 = LinphoneTestManager.getLc(2).getCalls()[0]; @@ -108,7 +106,7 @@ public class ConferenceAndMultiCall extends SampleTest { solo.sleep(2000); waitForCallState(call2,LinphoneCall.State.PausedByRemote); waitForCallState(call1,LinphoneCall.State.PausedByRemote); - + // All calls are paused, one click on hang_up terminates them all solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); @@ -117,18 +115,18 @@ public class ConferenceAndMultiCall extends SampleTest { @LargeTest public void testFAddNewCallAndCancelIt() { - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(1); LinphoneTestManager.getInstance().autoAnswer = false; - + solo.clickOnView(solo.getView(org.linphone.R.id.options)); solo.clickOnView(solo.getView(org.linphone.R.id.add_call)); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.conference_account_login) + "@" + iContext.getString(org.linphone.test.R.string.conference_account_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.conference_account_login) + "@" + iContext.getString(org.linphone.R.string.conference_account_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + solo.sleep(2000); solo.clickOnView(solo.getView(org.linphone.R.id.outgoing_hang_up)); @@ -136,58 +134,58 @@ public class ConferenceAndMultiCall extends SampleTest { solo.clickOnView(solo.getView(org.linphone.R.id.pause)); solo.sleep(1000); waitForCallState(LinphoneTestManager.getLc(1).getCalls()[0],LinphoneCall.State.StreamsRunning); - + solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + LinphoneTestManager.getInstance().autoAnswer = true; } @LargeTest public void testGAddNewCallDeclined() { LinphoneTestManager.getInstance().autoAnswer = true; // Just in case - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(1); LinphoneTestManager.getInstance().declineCall = true; - + solo.clickOnView(solo.getView(org.linphone.R.id.options)); solo.clickOnView(solo.getView(org.linphone.R.id.add_call)); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.conference_account_login) + "@" + iContext.getString(org.linphone.test.R.string.conference_account_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.conference_account_login) + "@" + iContext.getString(org.linphone.R.string.conference_account_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + solo.sleep(2000); waitForCallState(LinphoneTestManager.getLc(1).getCalls()[0],LinphoneCall.State.PausedByRemote); - + solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + LinphoneTestManager.getInstance().declineCall = false; } @LargeTest public void testHIncomingCallWhileInCallAndDecline() { LinphoneTestManager.getInstance().declineCall = false; //Just in case - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(1); - + solo.sleep(2000); try { - LinphoneTestManager.getLc(2).invite("sip:" + iContext.getString(org.linphone.test.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.test.R.string.account_linphone_domain)); + LinphoneTestManager.getLc(2).invite("sip:" + iContext.getString(org.linphone.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.R.string.account_linphone_domain)); } catch (LinphoneCoreException e) { e.printStackTrace(); } - + solo.waitForActivity("IncomingCallActivity", 5000); solo.assertCurrentActivity("Expected Incoming call Activity", CallIncomingActivity.class); @@ -199,9 +197,9 @@ public class ConferenceAndMultiCall extends SampleTest { int topOffset = dm.heightPixels - topLayoutHeigh; int slidersTop = topLayoutHeigh - 80 - topOffset; // 80 is the bottom margin set in incoming.xml solo.drag(topLayout.getMeasuredWidth() - 10, 10, slidersTop, slidersTop, 10); - + assertCallIsCorrectlyRunning(1); - + solo.sleep(2000); solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); @@ -209,19 +207,19 @@ public class ConferenceAndMultiCall extends SampleTest { } @LargeTest - public void testIIncomingCallWhileInCallAndAccept() { - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + public void testIIncomingCallWhileInCallAndAccept() { + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); - + assertCallIsCorrectlyRunning(1); - + solo.sleep(2000); try { - LinphoneTestManager.getLc(2).invite("sip:" + iContext.getString(org.linphone.test.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.test.R.string.account_linphone_domain)); + LinphoneTestManager.getLc(2).invite("sip:" + iContext.getString(org.linphone.R.string.account_linphone_login) + "@" + iContext.getString(org.linphone.R.string.account_linphone_domain)); } catch (LinphoneCoreException e) { e.printStackTrace(); } - + solo.waitForActivity("IncomingCallActivity", 5000); solo.assertCurrentActivity("Expected Incoming call Activity", CallIncomingActivity.class); @@ -238,46 +236,46 @@ public class ConferenceAndMultiCall extends SampleTest { LinphoneCall call1 = LinphoneTestManager.getLc(1).getCalls()[0]; waitForCallState(call1,LinphoneCall.State.PausedByRemote); assertCallIsCorrectlyRunning(2); - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } - + private void goToSettings() { solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); solo.clickOnView(solo.getView(org.linphone.R.id.side_menu_button)); solo.clickOnText(aContext.getString(org.linphone.R.string.menu_settings)); } - + private void startTwoCalls() { - solo.enterText(0, iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain)); + solo.enterText(0, iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); assertCallIsCorrectlyRunning(1); - + solo.clickOnView(solo.getView(org.linphone.R.id.options)); solo.clickOnView(solo.getView(org.linphone.R.id.add_call)); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.conference_account_login) + "@" + iContext.getString(org.linphone.test.R.string.conference_account_domain)); + + solo.enterText(0, iContext.getString(org.linphone.R.string.conference_account_login) + "@" + iContext.getString(org.linphone.R.string.conference_account_domain)); solo.clickOnView(solo.getView(org.linphone.R.id.call)); assertCallIsCorrectlyRunning(2); } - + private void startConference() { startTwoCalls(); solo.clickOnView(solo.getView(org.linphone.R.id.options)); solo.clickOnView(solo.getView(org.linphone.R.id.conference)); solo.sleep(1000); - + assertCallIsCorrectlyRunning(1); assertCallIsCorrectlyRunning(2); Assert.assertTrue(LinphoneManager.getLc().isInConference()); } - + private void assertCallIsCorrectlyRunning(int lcId) { solo.waitForActivity("CallActivity", 5000); solo.assertCurrentActivity("Expected InCall Activity", CallActivity.class); @@ -285,7 +283,7 @@ public class ConferenceAndMultiCall extends SampleTest { solo.sleep(2000); Assert.assertEquals(1, LinphoneTestManager.getLc(lcId).getCallsNb()); LinphoneCall call = LinphoneTestManager.getLc(lcId).getCalls()[0]; - + int retry = 0; while ((call.getState() == LinphoneCall.State.OutgoingProgress || call.getState() == LinphoneCall.State.IncomingReceived) && retry < 5) { solo.sleep(1000); diff --git a/tests/src/org/linphone/test/Contacts.java b/src/androidTest/java/Contacts.java similarity index 74% rename from tests/src/org/linphone/test/Contacts.java rename to src/androidTest/java/Contacts.java index 49ce52ccb..b5ed0ecff 100644 --- a/tests/src/org/linphone/test/Contacts.java +++ b/src/androidTest/java/Contacts.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import junit.framework.Assert; import org.linphone.ContactsListFragment; @@ -21,24 +19,24 @@ public class Contacts extends SampleTest { @LargeTest public void testAAddContactFromHistoryAndDeleteIt() { goToHistory(); - + solo.clickOnView(solo.getView(org.linphone.R.id.detail)); solo.clickOnView(solo.getView(org.linphone.R.id.add_contact)); solo.clickOnView(solo.getView(org.linphone.R.id.newContact)); - - Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.test.R.string.account_test_calls_domain))); - - solo.enterText(0, iContext.getString(org.linphone.test.R.string.contact_name)); + + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.account_test_calls_login) + "@" + iContext.getString(org.linphone.R.string.account_test_calls_domain))); + + solo.enterText(0, iContext.getString(org.linphone.R.string.contact_name)); solo.clickOnView(solo.getView(org.linphone.R.id.ok)); - Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); - - solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name)); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.contact_name))); + + solo.clickOnText(iContext.getString(org.linphone.R.string.contact_name)); solo.clickOnView(solo.getView(org.linphone.R.id.deleteContact)); solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.delete_button)); - Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); + Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.R.string.contact_name))); } @SmallTest @@ -48,11 +46,11 @@ public class Contacts extends SampleTest { goToContacts(); solo.clickOnView(solo.getView(org.linphone.R.id.newContact)); - solo.enterText(0, iContext.getString(org.linphone.test.R.string.contact_name)); - solo.enterText(3, iContext.getString(org.linphone.test.R.string.contact_number)); + solo.enterText(0, iContext.getString(org.linphone.R.string.contact_name)); + solo.enterText(3, iContext.getString(org.linphone.R.string.contact_number)); solo.clickOnView(solo.getView(org.linphone.R.id.ok)); solo.sleep(2000); - Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.contact_name))); } @MediumTest @@ -60,9 +58,9 @@ public class Contacts extends SampleTest { public void testCTestContactFilter1() { goToContacts(); - Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.contact_name))); solo.clickOnView(solo.getView(org.linphone.R.id.linphone_contacts)); - Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); + Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.R.string.contact_name))); } @MediumTest @@ -70,26 +68,26 @@ public class Contacts extends SampleTest { public void testDEditContactAddSipAddressAndRemoveNumber() { goToContacts(); solo.clickOnView(solo.getView(org.linphone.R.id.all_contacts)); - - solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name)); + + solo.clickOnText(iContext.getString(org.linphone.R.string.contact_name)); solo.clickOnView(solo.getView(org.linphone.R.id.editContact)); solo.clickOnView(solo.getView(org.linphone.R.id.delete_field)); - solo.enterText(2, iContext.getString(org.linphone.test.R.string.contact_sip)); + solo.enterText(2, iContext.getString(org.linphone.R.string.contact_sip)); solo.clickOnView(solo.getView(org.linphone.R.id.ok)); - - Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_sip))); - Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_number))); - + + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.contact_sip))); + Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.R.string.contact_number))); + } @MediumTest @LargeTest public void testETestContactFilter2() { goToContacts(); - - Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); + + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.contact_name))); solo.clickOnView(solo.getView(org.linphone.R.id.linphone_contacts)); - Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.contact_name))); } @MediumTest @@ -97,7 +95,7 @@ public class Contacts extends SampleTest { public void testFStartChatFromContact() { goToContacts(); - solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name)); + solo.clickOnText(iContext.getString(org.linphone.R.string.contact_name)); solo.clickOnView(solo.getView(org.linphone.R.id.contact_chat)); //Assert.assertTrue(solo.search(aContext.get(org.linphone.R.string.send_message))); } @@ -107,25 +105,25 @@ public class Contacts extends SampleTest { @LargeTest public void testGDeleteContact() { goToContacts(); - - solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name)); + + solo.clickOnText(iContext.getString(org.linphone.R.string.contact_name)); solo.clickOnView(solo.getView(org.linphone.R.id.deleteContact)); solo.sleep(1000); solo.clickOnView(solo.getView(org.linphone.R.id.delete_button)); - Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); + Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.R.string.contact_name))); } - + private void goToContacts() { solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + solo.clickOnView(solo.getView(org.linphone.R.id.contacts)); } - + private void goToHistory() { solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + solo.clickOnView(solo.getView(org.linphone.R.id.history)); - } + } } diff --git a/tests/src/org/linphone/test/History.java b/src/androidTest/java/History.java similarity index 86% rename from tests/src/org/linphone/test/History.java rename to src/androidTest/java/History.java index d0ae9e97c..d6f483b6b 100644 --- a/tests/src/org/linphone/test/History.java +++ b/src/androidTest/java/History.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import junit.framework.Assert; import org.linphone.CallActivity; @@ -14,46 +12,46 @@ import android.test.suitebuilder.annotation.SmallTest; * @author Sylvain Berfini */ public class History extends SampleTest { - + @SmallTest @MediumTest @LargeTest - public void testACheckForTestCallInHistory() { + public void testACheckForTestCallInHistory() { goToHistory(); Assert.assertTrue(solo.searchText(aContext.getString(org.linphone.R.string.today))); - Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.account_test_calls_login))); + Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.R.string.account_test_calls_login))); } - + @MediumTest @LargeTest - public void testBFilterMissedCalls() { + public void testBFilterMissedCalls() { goToHistory(); solo.clickOnView(solo.getView(org.linphone.R.id.missed_calls)); Assert.assertTrue(solo.searchText(aContext.getString(org.linphone.R.string.no_missed_call_history))); } - + public void testCCallBackFromHistory() { goToHistory(); - - solo.clickOnText(iContext.getString(org.linphone.test.R.string.account_test_calls_login)); - + + solo.clickOnText(iContext.getString(org.linphone.R.string.account_test_calls_login)); + solo.waitForActivity("InCallActivity", 5000); solo.assertCurrentActivity("Expected InCall Activity", CallActivity.class); - + solo.sleep(2000); Assert.assertEquals(1, LinphoneTestManager.getLc().getCallsNb()); waitForCallState(LinphoneTestManager.getLc().getCalls()[0],LinphoneCall.State.StreamsRunning); - + solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.waitForActivity("LinphoneActivity", 5000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); } - + @MediumTest @LargeTest - public void testDDeleteOne() { + public void testDDeleteOne() { goToHistory(); solo.clickOnView(solo.getView(org.linphone.R.id.edit)); @@ -67,7 +65,7 @@ public class History extends SampleTest { @SmallTest @MediumTest @LargeTest - public void testEDeleteAll() { + public void testEDeleteAll() { goToHistory(); solo.clickOnView(solo.getView(org.linphone.R.id.edit)); @@ -78,11 +76,11 @@ public class History extends SampleTest { Assert.assertTrue(solo.searchText(aContext.getString(org.linphone.R.string.no_call_history))); } - + private void goToHistory() { solo.waitForActivity("LinphoneActivity", 2000); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); - + solo.clickOnView(solo.getView(org.linphone.R.id.history)); } } diff --git a/tests/src/org/linphone/test/LinphoneTestManager.java b/src/androidTest/java/LinphoneTestManager.java similarity index 94% rename from tests/src/org/linphone/test/LinphoneTestManager.java rename to src/androidTest/java/LinphoneTestManager.java index 6ab7a49bc..64105b849 100644 --- a/tests/src/org/linphone/test/LinphoneTestManager.java +++ b/src/androidTest/java/LinphoneTestManager.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import java.nio.ByteBuffer; import java.util.Timer; import java.util.TimerTask; @@ -190,13 +188,13 @@ public class LinphoneTestManager implements LinphoneCoreListener{ String username, password, domain; if (mLc.equals(mLc1)) { - username = mIContext.getString(org.linphone.test.R.string.account_test_calls_login); - password = mIContext.getString(org.linphone.test.R.string.account_test_calls_pwd); - domain = mIContext.getString(org.linphone.test.R.string.account_test_calls_domain); + username = mIContext.getString(org.linphone.R.string.account_test_calls_login); + password = mIContext.getString(org.linphone.R.string.account_test_calls_pwd); + domain = mIContext.getString(org.linphone.R.string.account_test_calls_domain); } else { - username = mIContext.getString(org.linphone.test.R.string.conference_account_login); - password = mIContext.getString(org.linphone.test.R.string.conference_account_password); - domain = mIContext.getString(org.linphone.test.R.string.conference_account_domain); + username = mIContext.getString(org.linphone.R.string.conference_account_login); + password = mIContext.getString(org.linphone.R.string.conference_account_password); + domain = mIContext.getString(org.linphone.R.string.conference_account_domain); } LinphoneAuthInfo lAuthInfo = LinphoneCoreFactory.instance().createAuthInfo(username, password, null, domain); @@ -436,14 +434,14 @@ public class LinphoneTestManager implements LinphoneCoreListener{ public void authInfoRequested(LinphoneCore lc, String realm, String username, String domain) { // TODO Auto-generated method stub - + } - + @Override public void authenticationRequested(LinphoneCore lc, LinphoneAuthInfo authInfo, AuthMethod method) { // TODO Auto-generated method stub - + } @Override @@ -492,9 +490,20 @@ public class LinphoneTestManager implements LinphoneCoreListener{ public void friendListCreated(LinphoneCore lc, LinphoneFriendList list) { // TODO Auto-generated method stub } - + @Override public void friendListRemoved(LinphoneCore lc, LinphoneFriendList list) { // TODO Auto-generated method stub } + + @Override + public void networkReachableChanged(LinphoneCore lc, boolean enable) { + // TODO Auto-generated method stub + } + + @Override + public void messageReceivedUnableToDecrypted(LinphoneCore lc, LinphoneChatRoom cr, + LinphoneChatMessage message) { + // TODO Auto-generated method stub + } } diff --git a/tests/src/org/linphone/test/SampleTest.java b/src/androidTest/java/SampleTest.java similarity index 98% rename from tests/src/org/linphone/test/SampleTest.java rename to src/androidTest/java/SampleTest.java index 057272681..e68f44787 100644 --- a/tests/src/org/linphone/test/SampleTest.java +++ b/src/androidTest/java/SampleTest.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import org.linphone.LinphoneLauncherActivity; import org.linphone.LinphoneManager; import org.linphone.core.LinphoneCall; @@ -22,7 +20,7 @@ import com.robotium.solo.Solo; public abstract class SampleTest extends ActivityInstrumentationTestCase2{ protected final int STRING_LENGTH_MAX = 20; - + protected Solo solo; protected Context aContext, iContext; @@ -45,7 +43,7 @@ public abstract class SampleTest extends ActivityInstrumentationTestCase2 0); Assert.assertTrue(LinphoneTestManager.getLc(2).getCallsNb() > 0); @@ -40,21 +38,21 @@ public class Transfer extends SampleTest { Assert.assertTrue(LinphoneTestManager.getLc(1).getCallsNb() == 0); Assert.assertTrue(LinphoneTestManager.getLc(2).getCallsNb() == 0); } - + private void assertCallIsCorrectlyRunning() { solo.waitForActivity("InCallActivity", 5000); solo.assertCurrentActivity("Expected InCall Activity", CallActivity.class); - + solo.sleep(2000); LinphoneCall call = LinphoneManager.getLc().getCalls()[0]; - + int retry = 0; while ((call.getState() == LinphoneCall.State.OutgoingProgress || call.getState() == LinphoneCall.State.IncomingReceived) && retry < 5) { solo.sleep(1000); retry++; Log.w("Call in progress but not running, retry = " + retry); } - + waitForCallState(call,LinphoneCall.State.StreamsRunning); } } diff --git a/tests/src/org/linphone/test/ZShutdownTestEnv.java b/src/androidTest/java/ZShutdownTestEnv.java similarity index 94% rename from tests/src/org/linphone/test/ZShutdownTestEnv.java rename to src/androidTest/java/ZShutdownTestEnv.java index 6b5271410..3d32f5889 100644 --- a/tests/src/org/linphone/test/ZShutdownTestEnv.java +++ b/src/androidTest/java/ZShutdownTestEnv.java @@ -1,5 +1,3 @@ -package org.linphone.test; - import static android.content.Intent.ACTION_MAIN; import org.linphone.LinphoneService; @@ -13,7 +11,7 @@ import android.test.suitebuilder.annotation.SmallTest; * @author Sylvain Berfini */ public class ZShutdownTestEnv extends SampleTest { - + @SmallTest @MediumTest @LargeTest @@ -21,5 +19,5 @@ public class ZShutdownTestEnv extends SampleTest { LinphoneTestManager.destroy(); aContext.stopService(new Intent(ACTION_MAIN).setClass(aContext, LinphoneService.class)); } - + } diff --git a/submodules/bcunit b/submodules/bcunit index 99e12005f..354ab2809 160000 --- a/submodules/bcunit +++ b/submodules/bcunit @@ -1 +1 @@ -Subproject commit 99e12005f3c75b933e8bd01092147def555496f2 +Subproject commit 354ab280916f37ddd5d285c49bbf110122bec5a4 diff --git a/submodules/belle-sip b/submodules/belle-sip index f18566799..d7ff1de9e 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit f1856679996c63c99fa416cd1f853cd3639e2bdf +Subproject commit d7ff1de9e3ffb241b2aeac1950e0768da69c0a43 diff --git a/submodules/linphone b/submodules/linphone index b6e67b14c..5e02b53ee 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit b6e67b14cdfb0108a74941e1c05ef902b6fc9c2a +Subproject commit 5e02b53ee66b73e64bfc41e6ac2ed74296f42f60 diff --git a/tests/.classpath b/tests/.classpath deleted file mode 100644 index c126085a7..000000000 --- a/tests/.classpath +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/tests/.project b/tests/.project deleted file mode 100644 index a965ac946..000000000 --- a/tests/.project +++ /dev/null @@ -1,34 +0,0 @@ - - - linphone-android-test - - - linphone-android-newUI - - - - com.android.ide.eclipse.adt.ResourceManagerBuilder - - - - - com.android.ide.eclipse.adt.PreCompilerBuilder - - - - - org.eclipse.jdt.core.javabuilder - - - - - com.android.ide.eclipse.adt.ApkBuilder - - - - - - com.android.ide.eclipse.adt.AndroidNature - org.eclipse.jdt.core.javanature - - diff --git a/tests/AndroidManifest.xml b/tests/AndroidManifest.xml deleted file mode 100644 index 1644092aa..000000000 --- a/tests/AndroidManifest.xml +++ /dev/null @@ -1,44 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/Makefile b/tests/Makefile deleted file mode 100644 index 2e24d9ec1..000000000 --- a/tests/Makefile +++ /dev/null @@ -1,27 +0,0 @@ -SDK_PATH=$(shell dirname `which android`) -SDK_PLATFORM_TOOLS_PATH=$(shell dirname `which adb`) -ANT_SILENT=$(shell ant -h | grep -q -- -S && echo 1 || echo 0) - -ifeq ($(ANT_SILENT), 1) - ANT=ant -e -S -else - ANT=ant -e -endif - -clean: - $(SDK_PLATFORM_TOOLS_PATH)/adb uninstall org.linphone.test - $(SDK_PLATFORM_TOOLS_PATH)/adb uninstall org.linphone - $(SDK_PATH)/android update test-project --path . -m ../ - -all: clean - ant clean debug - $(SDK_PLATFORM_TOOLS_PATH)/adb install -g bin/LinphoneTest-debug.apk - $(SDK_PLATFORM_TOOLS_PATH)/adb install -g ../bin/Linphone-debug.apk - -run-basic-tests: all - ant -e test -Dtest.size=small - if [ ! -s linphone-junit-report-small.xml ]; then exit 1; fi - -run-all-tests: all - ant -e test -Dtest.size=large - if [ ! -s linphone-junit-report-large.xml ]; then exit 1; fi diff --git a/tests/README b/tests/README deleted file mode 100644 index 4c9aa6c2c..000000000 --- a/tests/README +++ /dev/null @@ -1 +0,0 @@ -This is a JUnit test project for Linphone's Android application. diff --git a/tests/adb-log-start.sh b/tests/adb-log-start.sh deleted file mode 100755 index 73ec81563..000000000 --- a/tests/adb-log-start.sh +++ /dev/null @@ -1,4 +0,0 @@ -#! /bin/bash -adb logcat -v time > $1 & -echo $! >adb.pid - diff --git a/tests/ant.properties b/tests/ant.properties deleted file mode 100644 index 7f387c9fd..000000000 --- a/tests/ant.properties +++ /dev/null @@ -1,19 +0,0 @@ -# This file is used to override default values used by the Ant build system. -# -# This file must be checked into Version Control Systems, as it is -# integral to the build system of your project. - -# This file is only used by the Ant script. - -# You can use this to override default values such as -# 'source.dir' for the location of your java source folder and -# 'out.dir' for the location of your output folder. - -# You can also use it define how the release builds are signed by declaring -# the following properties: -# 'key.store' for the location of your keystore and -# 'key.alias' for the name of the key to use. -# The password will be asked during the build when you use the 'release' target. - -tested.project.dir=../ -test.runner=com.zutubi.android.junitreport.JUnitReportTestRunner diff --git a/tests/custom_rules.xml b/tests/custom_rules.xml deleted file mode 100644 index 398c62ec7..000000000 --- a/tests/custom_rules.xml +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - Adb log files are put in ${archive.name}.zip - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/libs/android-junit-report-1.5.8.jar b/tests/libs/android-junit-report-1.5.8.jar deleted file mode 100644 index 09e6a2d4f..000000000 Binary files a/tests/libs/android-junit-report-1.5.8.jar and /dev/null differ diff --git a/tests/libs/robotium-solo-5.1-javadoc.jar b/tests/libs/robotium-solo-5.1-javadoc.jar deleted file mode 100644 index 92ebff2f3..000000000 Binary files a/tests/libs/robotium-solo-5.1-javadoc.jar and /dev/null differ diff --git a/tests/libs/robotium-solo-5.1.jar b/tests/libs/robotium-solo-5.1.jar deleted file mode 100644 index 1931dd97f..000000000 Binary files a/tests/libs/robotium-solo-5.1.jar and /dev/null differ diff --git a/tests/monkeyrruner/call.py b/tests/monkeyrruner/call.py deleted file mode 100644 index aa4704875..000000000 --- a/tests/monkeyrruner/call.py +++ /dev/null @@ -1,37 +0,0 @@ -from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice -from com.android.monkeyrunner.easy import EasyMonkeyDevice - -from lib.LinphoneTest import LinphoneTest - -class CallTest(LinphoneTest): - def precond(self): - # Run Linphone - runComponent = 'org.linphone' + '/' + 'org.linphone.setup.LinphoneActivity' - self.device.startActivity(component=runComponent) - - # Be sure to be on dialer screen - dialer = self.find('dialer') - self.easyDevice.touch(dialer, MonkeyDevice.DOWN_AND_UP) - - def test(self): - # Type a SIP address - address = self.find('Adress') - self.easyDevice.type(address, 'cotcot@sip.linphone.org') - self.device.press('KEYCODE_BACK', MonkeyDevice.DOWN_AND_UP) - - # Try to call previously typed address - call = self.find('Call') - self.easyDevice.touch(call, MonkeyDevice.DOWN_AND_UP) - MonkeyRunner.sleep(2) - - # Check if the call is outgoing correctly - contact = self.find('contactNameOrNumber') - return contact - - def postcond(self): - # Stop the call - hangUp = self.find('hangUp') - self.easyDevice.touch(hangUp, MonkeyDevice.DOWN_AND_UP) - -callTest = CallTest('Call') -callTest.run() \ No newline at end of file diff --git a/tests/monkeyrruner/config.py b/tests/monkeyrruner/config.py deleted file mode 100644 index 41440c188..000000000 --- a/tests/monkeyrruner/config.py +++ /dev/null @@ -1,51 +0,0 @@ -from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice -from com.android.monkeyrunner.easy import EasyMonkeyDevice - -from lib.LinphoneTest import LinphoneTest - -class ConfigurationTest(LinphoneTest): - def setAccount(self, username, password, domain): - self.username = username - self.password = password - self.domain = domain - - def precond(self): - # Run the setup assistant - runComponent = 'org.linphone' + '/' + 'org.linphone.setup.SetupActivity' - self.device.startActivity(component=runComponent) - MonkeyRunner.sleep(2) - - def next(self): - # Press next button - next = self.find('setup_next') - self.easyDevice.touch(next, MonkeyDevice.DOWN_AND_UP) - - def test(self): - self.next() - - # Choose SIP account - login = self.find('setup_login_generic') - self.easyDevice.touch(login, MonkeyDevice.DOWN_AND_UP) - - # Fill the fields - username = self.find('setup_username') - self.easyDevice.type(username, self.username) - - password = self.find('setup_password') - self.easyDevice.type(password, self.password) - - domain = self.find('setup_domain') - self.easyDevice.type(domain, self.domain) - - # Hide the keyboard - self.press_back() - - # Apply config - apply = self.find('setup_apply') - self.easyDevice.touch(apply, MonkeyDevice.DOWN_AND_UP) - - return True - -configTest = ConfigurationTest('Account configuration') -configTest.setAccount('monkey', 'cotcot', 'test.linphone.org') -configTest.run() diff --git a/tests/monkeyrruner/install.py b/tests/monkeyrruner/install.py deleted file mode 100644 index 77a21a02e..000000000 --- a/tests/monkeyrruner/install.py +++ /dev/null @@ -1,28 +0,0 @@ -from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice -from com.android.monkeyrunner.easy import EasyMonkeyDevice - -from lib.LinphoneTest import LinphoneTest - -class InstallTest(LinphoneTest): - def test(self): - # Parameters, must be the same as in the build.xml file - package = 'org.linphone' - appname = 'Linphone' - activity = 'org.linphone.LinphoneLauncherActivity' - - # Installs the Android package. Notice that this method returns a boolean, so you can test - # to see if the installation worked. - self.device.installPackage('../bin/' + appname + '-debug.apk') - - # sets the name of the component to start - runComponent = package + '/' + activity - - # Runs the component and wait for it to be launched - self.device.startActivity(component=runComponent) - MonkeyRunner.sleep(7) - - menu = self.find('menu') - return menu - -installTest = InstallTest('Install') -installTest.run() \ No newline at end of file diff --git a/tests/monkeyrruner/lib/LinphoneTest.py b/tests/monkeyrruner/lib/LinphoneTest.py deleted file mode 100644 index 198a395d5..000000000 --- a/tests/monkeyrruner/lib/LinphoneTest.py +++ /dev/null @@ -1,58 +0,0 @@ -from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice -from com.android.monkeyrunner.easy import EasyMonkeyDevice -from com.android.monkeyrunner.easy import By - -class colors: - OK = '\033[92m' - KO = '\033[91m' - END = '\033[0m' - -class LinphoneTest(): - def __init__(self, test_name): - self.test_name = test_name - - # Connects to the current device - self.device = MonkeyRunner.waitForConnection() - self.easyDevice = EasyMonkeyDevice(self.device) - - def run(self): - self.precond() - - try: - result = self.test() - if result : - self.print_result_ok() - else : - self.print_result_ko() - - except Exception: - self.print_result_ko() - - finally: - self.postcond() - - def find(self, id): - view = By.id('id/' + id) - if not view: - raise Exception("View with id/" + id + " not found") - return view - - def print_result_ok(self): - print self.test_name + colors.OK + ' OK' + colors.END - - def print_result_ko(self): - print self.test_name + colors.KO + ' KO' + colors.END - - def press_back(self): - self.device.press('KEYCODE_BACK', MonkeyDevice.DOWN_AND_UP) - - # Override following methods - def precond(self): - pass - - def test(self): - pass - - def postcond(self): - pass - \ No newline at end of file diff --git a/tests/monkeyrruner/lib/__init__.py b/tests/monkeyrruner/lib/__init__.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/proguard-project.txt b/tests/proguard-project.txt deleted file mode 100644 index f2fe1559a..000000000 --- a/tests/proguard-project.txt +++ /dev/null @@ -1,20 +0,0 @@ -# To enable ProGuard in your project, edit project.properties -# to define the proguard.config property as described in that file. -# -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in ${sdk.dir}/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the ProGuard -# include property in project.properties. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# Add any project specific keep options here: - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} diff --git a/tests/res/values/strings.xml b/tests/res/values/strings.xml deleted file mode 100644 index 1bed75b44..000000000 --- a/tests/res/values/strings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - Linphone-android-testTest - - \ No newline at end of file