PSTN gateway test

This commit is contained in:
Sylvain Berfini 2012-10-03 15:01:59 +02:00
parent 6ce5cc920d
commit 9d23369be9
2 changed files with 131 additions and 1 deletions

View file

@ -0,0 +1,130 @@
package org.linphone.test;
import org.linphone.InCallActivity;
import org.linphone.LinphoneActivity;
import org.linphone.R;
import org.linphone.setup.SetupActivity;
import android.content.Context;
import android.test.ActivityInstrumentationTestCase2;
import android.widget.EditText;
import android.widget.ListView;
import com.jayway.android.robotium.solo.Solo;
public class AccountzFreephonieTest extends ActivityInstrumentationTestCase2<LinphoneActivity> {
private static final String numberToCallToTestPSTNGateway = "0952636505";
private Solo solo;
@SuppressWarnings("deprecation")
public AccountzFreephonieTest() {
super("org.linphone", LinphoneActivity.class);
}
private void selectItemInListOnUIThread(final int item) {
solo.sleep(500);
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
ListView list = (ListView) solo.getView(android.R.id.list);
list.setSelection(item);
}
});
}
private void configureFreephonieAccount() {
Context context = getActivity();
solo.waitForActivity("LinphoneActivity", 2000);
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
solo.clickOnView(solo.getView(R.id.settings));
selectItemInListOnUIThread(19);
solo.clickOnText(context.getString(R.string.pref_network_title));
solo.clickOnText(context.getString(R.string.pref_transport_udp));
solo.goBack();
selectItemInListOnUIThread(0);
solo.clickOnText(context.getString(R.string.setup_title));
solo.assertCurrentActivity("Expected Setup Activity", SetupActivity.class);
solo.clickOnView(solo.getView(R.id.setup_next));
solo.clickOnText(context.getString(R.string.setup_login_generic));
solo.enterText((EditText) solo.getView(R.id.setup_username), "0953335419");
solo.enterText((EditText) solo.getView(R.id.setup_password), "jodeeeeeer");
solo.enterText((EditText) solo.getView(R.id.setup_domain), "freephonie.net");
solo.clickOnText(context.getString(R.string.setup_apply));
solo.waitForActivity("LinphoneActivity", 2000);
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
solo.clickOnView(solo.getView(R.id.settings));
solo.clickOnText("0953335419@freephonie.net");
selectItemInListOnUIThread(6);
solo.clickOnText(context.getString(R.string.pref_default_account));
// solo.clickOnText(context.getString(R.string.pref_proxy));
// solo.enterText(0, "sip.linphone.org");
// solo.clickOnText("OK");
// solo.clickOnText(context.getString(R.string.pref_enable_outbound_proxy));
solo.goBack();
solo.goBack();
}
private void deleteFreephonieAccount() {
Context context = getActivity();
solo.waitForActivity("LinphoneActivity", 2000);
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
solo.clickOnView(solo.getView(R.id.settings));
selectItemInListOnUIThread(0);
solo.clickOnText("junit@test.linphone.org");
selectItemInListOnUIThread(6);
solo.clickOnText(context.getString(R.string.pref_default_account));
solo.goBack();
solo.clickOnText("0953335419@freephonie.net");
selectItemInListOnUIThread(7);
solo.clickOnText(context.getString(R.string.pref_delete_account));
selectItemInListOnUIThread(19);
solo.clickOnText(context.getString(R.string.pref_network_title));
solo.clickOnText(context.getString(R.string.pref_transport_tls));
solo.goBack();
solo.goBack();
}
private void goToDialerAndOutgoingCall() {
solo.clickOnView(solo.getView(R.id.dialer));
solo.clickOnView(solo.getView(R.id.Adress));
solo.enterText((EditText) solo.getView(R.id.Adress), numberToCallToTestPSTNGateway);
solo.clickOnView(solo.getView(R.id.Call));
solo.waitForActivity("InCallActivity", 2000);
solo.assertCurrentActivity("Expected InCall Activity", InCallActivity.class);
solo.waitForText("01", 1, 15000);
solo.clickOnView(solo.getView(R.id.hangUp));
solo.waitForActivity("LinphoneActivity", 2000);
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
}
@Override
protected void setUp() throws Exception {
super.setUp();
solo = new Solo(getInstrumentation(), getActivity());
}
public void testAOutgoingCallUsingPSTNGatewayAndFreephonieNetwork() {
configureFreephonieAccount();
goToDialerAndOutgoingCall();
deleteFreephonieAccount();
}
@Override
public void tearDown() throws Exception {
solo.finishOpenedActivities();
}
}

View file

@ -40,7 +40,7 @@ public class SignalingTest extends ActivityInstrumentationTestCase2<LinphoneActi
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
solo.clickOnView(solo.getView(R.id.settings)); solo.clickOnView(solo.getView(R.id.settings));
selectItemInListOnUIThread(18); selectItemInListOnUIThread(19);
solo.clickOnText(context.getString(R.string.pref_network_title)); solo.clickOnText(context.getString(R.string.pref_network_title));
solo.sleep(500); solo.sleep(500);
} }