package com.kanshu.kanshu.test.activity; import android.test.ActivityInstrumentationTestCase2; import com.kanshu.kanshu.LoginActivity; import com.kanshu.kanshu.SignupActivity; import com.kanshu.kanshu.test.screen.LoginScreen; import com.kanshu.kanshu.test.screen.SignupScreen; import com.robotium.solo.Solo; import junit.framework.Assert; /** * SignupActivity instrumentation test * @author Victor Sima */ public class SignupActivityTest extends ActivityInstrumentationTestCase2<SignupActivity> { public SignupActivityTest() { super(SignupActivity.class); } private static final int DEFAULT_TIMEOUT = 2000; //2 secs private Solo solo; private SignupActivity signupActivity; private SignupScreen signupScreen; public void setUp() throws Exception { super.setUp(); signupActivity = getActivity(); solo = new Solo(getInstrumentation(), signupActivity); signupScreen = new SignupScreen(signupActivity); } @Override public void tearDown() throws Exception { solo.finishOpenedActivities(); super.tearDown(); } public void testSignupScreenAppeared() throws Exception { Assert.assertTrue(solo.waitForActivity(SignupActivity.class, DEFAULT_TIMEOUT)); Assert.assertTrue(solo.waitForView(signupScreen.getEmailEditText(), DEFAULT_TIMEOUT, true)); Assert.assertTrue(solo.waitForView(signupScreen.getUsernameEditText(), DEFAULT_TIMEOUT, true)); Assert.assertTrue(solo.waitForView(signupScreen.getPasswordEditText(), DEFAULT_TIMEOUT, true)); Assert.assertTrue(solo.waitForView(signupScreen.getSignupButton(), DEFAULT_TIMEOUT, true)); } public void testUserSignup() throws Exception { solo.typeText(signupScreen.getEmailEditText(), "test_email@kansu.com"); solo.typeText(signupScreen.getPasswordEditText(), "my_password"); solo.typeText(signupScreen.getUsernameEditText(), "my_username"); solo.clickOnView(signupScreen.getSignupButton()); } }