New multi calls tests
This commit is contained in:
parent
f5a5f4c2f4
commit
4d630ae59d
1 changed files with 125 additions and 6 deletions
|
@ -3,14 +3,18 @@ package org.linphone.test;
|
|||
import junit.framework.Assert;
|
||||
|
||||
import org.linphone.InCallActivity;
|
||||
import org.linphone.IncomingCallActivity;
|
||||
import org.linphone.LinphoneActivity;
|
||||
import org.linphone.LinphoneManager;
|
||||
import org.linphone.core.LinphoneCall;
|
||||
import org.linphone.core.LinphoneCoreException;
|
||||
import org.linphone.core.LinphoneCore.RegistrationState;
|
||||
|
||||
import android.test.suitebuilder.annotation.LargeTest;
|
||||
import android.test.suitebuilder.annotation.MediumTest;
|
||||
import android.test.suitebuilder.annotation.SmallTest;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.view.View;
|
||||
|
||||
public class ConferenceAndMultiCall extends SampleTest {
|
||||
|
||||
|
@ -64,17 +68,16 @@ public class ConferenceAndMultiCall extends SampleTest {
|
|||
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
|
||||
}
|
||||
|
||||
@SmallTest
|
||||
@MediumTest
|
||||
@SmallTest //TODO REMOVE
|
||||
@LargeTest
|
||||
public void testCChangePausedCall() {
|
||||
startConference();
|
||||
public void testDChangePausedCall() {
|
||||
startTwoCalls();
|
||||
|
||||
solo.sleep(2000);
|
||||
LinphoneCall call1 = LinphoneTestManager.getLc(1).getCalls()[0];
|
||||
LinphoneCall call2 = LinphoneTestManager.getLc(2).getCalls()[0];
|
||||
Assert.assertEquals(LinphoneCall.State.StreamsRunning, call2.getState());
|
||||
Assert.assertEquals(LinphoneCall.State.Paused, call1.getState());
|
||||
Assert.assertEquals(LinphoneCall.State.PausedByRemote, call1.getState());
|
||||
|
||||
solo.clickOnView(solo.getView(org.linphone.R.id.callStatus));
|
||||
solo.sleep(2000);
|
||||
|
@ -87,6 +90,118 @@ public class ConferenceAndMultiCall extends SampleTest {
|
|||
solo.waitForActivity("LinphoneActivity", 5000);
|
||||
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
|
||||
}
|
||||
|
||||
@LargeTest
|
||||
public void testEPauseAllCalls() {
|
||||
startTwoCalls();
|
||||
//TODO
|
||||
}
|
||||
|
||||
@SmallTest //TODO REMOVE
|
||||
@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.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.addCall));
|
||||
|
||||
solo.enterText(0, iContext.getString(org.linphone.test.R.string.conference_account_login) + "@" + iContext.getString(org.linphone.test.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.hangUp));
|
||||
|
||||
solo.sleep(1000);
|
||||
solo.clickOnView(solo.getView(org.linphone.R.id.hangUp));
|
||||
solo.waitForActivity("LinphoneActivity", 5000);
|
||||
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
|
||||
|
||||
LinphoneTestManager.getInstance().autoAnswer = true;
|
||||
}
|
||||
|
||||
@SmallTest //TODO REMOVE
|
||||
@LargeTest
|
||||
public void testGIncomingCallWhileInCallAndDecline() {
|
||||
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.clickOnView(solo.getView(org.linphone.R.id.Call));
|
||||
|
||||
assertCallIsCorrectlyRunning(1);
|
||||
LinphoneTestManager.getInstance().autoAnswer = false;
|
||||
|
||||
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));
|
||||
} catch (LinphoneCoreException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
solo.waitForActivity("IncomingCallActivity", 5000);
|
||||
solo.assertCurrentActivity("Expected Incoming Call Activity", IncomingCallActivity.class);
|
||||
|
||||
solo.sleep(1000);
|
||||
View topLayout = solo.getView(org.linphone.R.id.topLayout);
|
||||
int topLayoutHeigh = topLayout.getMeasuredHeight();
|
||||
DisplayMetrics dm = new DisplayMetrics();
|
||||
getActivity().getWindowManager().getDefaultDisplay().getMetrics(dm);
|
||||
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.hangUp));
|
||||
solo.waitForActivity("LinphoneActivity", 5000);
|
||||
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
|
||||
}
|
||||
|
||||
@SmallTest //TODO REMOVE
|
||||
@LargeTest
|
||||
public void testHIncomingCallWhileInCallAndAccept() {
|
||||
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.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));
|
||||
} catch (LinphoneCoreException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
solo.waitForActivity("IncomingCallActivity", 5000);
|
||||
solo.assertCurrentActivity("Expected Incoming Call Activity", IncomingCallActivity.class);
|
||||
|
||||
solo.sleep(1000);
|
||||
View topLayout = solo.getView(org.linphone.R.id.topLayout);
|
||||
int topLayoutHeigh = topLayout.getMeasuredHeight();
|
||||
DisplayMetrics dm = new DisplayMetrics();
|
||||
getActivity().getWindowManager().getDefaultDisplay().getMetrics(dm);
|
||||
int topOffset = dm.heightPixels - topLayoutHeigh;
|
||||
int slidersTop = topLayoutHeigh - 80 - topOffset; // 80 is the bottom margin set in incoming.xml
|
||||
solo.drag(10, topLayout.getMeasuredWidth() - 10, slidersTop, slidersTop, 10);
|
||||
|
||||
assertCallIsCorrectlyRunning(1);
|
||||
assertCallIsCorrectlyRunning(2);
|
||||
|
||||
solo.clickOnView(solo.getView(org.linphone.R.id.hangUp));
|
||||
solo.sleep(1000);
|
||||
solo.clickOnView(solo.getView(org.linphone.R.id.hangUp));
|
||||
solo.waitForActivity("LinphoneActivity", 5000);
|
||||
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
|
||||
}
|
||||
|
||||
@LargeTest
|
||||
public void testIAddNewCallDeclined() {
|
||||
//TODO
|
||||
}
|
||||
|
||||
private void goToSettings() {
|
||||
solo.waitForActivity("LinphoneActivity", 2000);
|
||||
|
@ -95,7 +210,7 @@ public class ConferenceAndMultiCall extends SampleTest {
|
|||
solo.clickOnView(solo.getView(org.linphone.R.id.settings));
|
||||
}
|
||||
|
||||
private void startConference() {
|
||||
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.clickOnView(solo.getView(org.linphone.R.id.Call));
|
||||
|
||||
|
@ -107,6 +222,10 @@ public class ConferenceAndMultiCall extends SampleTest {
|
|||
solo.clickOnView(solo.getView(org.linphone.R.id.Call));
|
||||
|
||||
assertCallIsCorrectlyRunning(2);
|
||||
}
|
||||
|
||||
private void startConference() {
|
||||
startTwoCalls();
|
||||
|
||||
solo.clickOnView(solo.getView(org.linphone.R.id.conference));
|
||||
solo.sleep(1000);
|
||||
|
|
Loading…
Reference in a new issue