use of com.github.vase4kin.teamcityapp.storage.SharedUserStorage in project TeamCityApp by vase4kin.
the class LoginActivityTest method testUserCanCreateUserAccountWithCorrectUrlAndCredentials.
/**
* Verifies that user can be logged in with correct account url and credentials
*/
@Ignore
@Test
public void testUserCanCreateUserAccountWithCorrectUrlAndCredentials() throws Throwable {
doAnswer(new Answer() {
@Override
public Object answer(InvocationOnMock invocation) throws Throwable {
mCallbackArgumentCaptor.getValue().onResponse(mCall, new Response.Builder().request(new Request.Builder().url(URL).build()).protocol(Protocol.HTTP_1_0).code(200).build());
return null;
}
}).when(mCall).enqueue(mCallbackArgumentCaptor.capture());
onView(withId(R.id.teamcity_url)).perform(typeText(INPUT_URL), closeSoftKeyboard());
onView(withId(R.id.user_name)).perform(typeText("user"), pressImeActionButton());
onView(withId(R.id.password)).perform(typeText("pass"), pressImeActionButton());
intended(allOf(hasComponent(RootProjectsActivity.class.getName()), hasExtras(hasEntry(equalTo(BundleExtractorValues.IS_NEW_ACCOUNT_CREATED), equalTo(true)))));
TeamCityApplication app = (TeamCityApplication) InstrumentationRegistry.getInstrumentation().getTargetContext().getApplicationContext();
SharedUserStorage storageUtils = app.getRestApiInjector().sharedUserStorage();
assertThat(storageUtils.hasAccountWithUrl(URL, "user"), is(true));
assertThat(storageUtils.getActiveUser().getTeamcityUrl(), is(URL));
}
use of com.github.vase4kin.teamcityapp.storage.SharedUserStorage in project TeamCityApp by vase4kin.
the class LoginActivityTest method testUserCanCreateAccountWithCorrectUrlWhichContainsPathByImeButton.
/**
* Verifies that user can be logged in as guest with correct account url
*/
@Test
public void testUserCanCreateAccountWithCorrectUrlWhichContainsPathByImeButton() throws Throwable {
doAnswer(new Answer() {
@Override
public Object answer(InvocationOnMock invocation) throws Throwable {
mCallbackArgumentCaptor.getValue().onResponse(mCall, new Response.Builder().request(new Request.Builder().url(URL).build()).protocol(Protocol.HTTP_1_0).message(MESSAGE_EMPTY).code(200).build());
return null;
}
}).when(mCall).enqueue(mCallbackArgumentCaptor.capture());
onView(withId(R.id.guest_user_switch)).perform(click());
onView(withId(R.id.teamcity_url)).perform(typeText(INPUT_URL), pressImeActionButton());
intended(allOf(hasComponent(RootProjectsActivity.class.getName()), hasExtras(hasEntry(equalTo(BundleExtractorValues.IS_NEW_ACCOUNT_CREATED), equalTo(true)))));
TeamCityApplication app = (TeamCityApplication) InstrumentationRegistry.getInstrumentation().getTargetContext().getApplicationContext();
SharedUserStorage storageUtils = app.getRestApiInjector().sharedUserStorage();
assertThat(storageUtils.hasGuestAccountWithUrl(URL), is(true));
assertThat(storageUtils.getActiveUser().getTeamcityUrl(), is(URL));
}
use of com.github.vase4kin.teamcityapp.storage.SharedUserStorage in project TeamCityApp by vase4kin.
the class CreateAccountActivityTest method testUserCanCreateGuestUserAccountWithCorrectUrl.
/**
* Verifies that user can be logged in as guest user with correct account url
*/
@Test
public void testUserCanCreateGuestUserAccountWithCorrectUrl() throws Throwable {
doAnswer(new Answer() {
@Override
public Object answer(InvocationOnMock invocation) throws Throwable {
mCallbackArgumentCaptor.getValue().onResponse(mCall, new Response.Builder().request(new Request.Builder().url(URL).build()).protocol(Protocol.HTTP_1_0).code(200).message("").build());
return null;
}
}).when(mCall).enqueue(mCallbackArgumentCaptor.capture());
onView(withId(R.id.teamcity_url)).perform(typeText(INPUT_URL), closeSoftKeyboard());
onView(withId(R.id.guest_user_switch)).perform(click());
onView(withId(R.id.action_create)).perform(click());
intended(allOf(hasComponent(RootProjectsActivity.class.getName()), hasFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP), hasExtras(allOf(hasEntry(equalTo(BundleExtractorValues.IS_NEW_ACCOUNT_CREATED), equalTo(true)), hasEntry(equalTo(BundleExtractorValues.IS_REQUIRED_TO_RELOAD), equalTo(true)))), toPackage("com.github.vase4kin.teamcityapp.mock.debug")));
SharedUserStorage storageUtils = SharedUserStorage.init(mActivityRule.getActivity(), null);
assertThat(storageUtils.hasGuestAccountWithUrl(URL), is(true));
assertThat(storageUtils.getActiveUser().getTeamcityUrl(), is(URL));
}
use of com.github.vase4kin.teamcityapp.storage.SharedUserStorage in project TeamCityApp by vase4kin.
the class LoginActivityTest method testUserCanCreateAccountWithCorrectUrlByImeButton.
/**
* Verifies that user can be logged in as guest with correct account url
*/
@Test
public void testUserCanCreateAccountWithCorrectUrlByImeButton() throws Throwable {
doAnswer(new Answer() {
@Override
public Object answer(InvocationOnMock invocation) throws Throwable {
mCallbackArgumentCaptor.getValue().onResponse(mCall, new Response.Builder().request(new Request.Builder().url(URL).build()).protocol(Protocol.HTTP_1_0).message(MESSAGE_EMPTY).code(200).build());
return null;
}
}).when(mCall).enqueue(mCallbackArgumentCaptor.capture());
onView(withId(R.id.guest_user_switch)).perform(click());
onView(withId(R.id.teamcity_url)).perform(typeText(INPUT_URL), pressImeActionButton());
intended(allOf(hasComponent(RootProjectsActivity.class.getName()), hasExtras(hasEntry(equalTo(BundleExtractorValues.IS_NEW_ACCOUNT_CREATED), equalTo(true)))));
TeamCityApplication app = (TeamCityApplication) InstrumentationRegistry.getInstrumentation().getTargetContext().getApplicationContext();
SharedUserStorage storageUtils = app.getRestApiInjector().sharedUserStorage();
assertThat(storageUtils.hasGuestAccountWithUrl(URL), is(true));
assertThat(storageUtils.getActiveUser().getTeamcityUrl(), is(URL));
}
use of com.github.vase4kin.teamcityapp.storage.SharedUserStorage in project TeamCityApp by vase4kin.
the class LoginActivityTest method testUserCanCreateGuestUserAccountWithCorrectUrl.
/**
* Verifies that user can be logged in as guest user with correct account url
*/
@Test
public void testUserCanCreateGuestUserAccountWithCorrectUrl() throws Throwable {
final String urlWithPath = "https://teamcity.com/server";
String savedUrl = urlWithPath.concat("/");
doAnswer(new Answer() {
@Override
public Object answer(InvocationOnMock invocation) throws Throwable {
mCallbackArgumentCaptor.getValue().onResponse(mCall, new Response.Builder().request(new Request.Builder().url(urlWithPath).build()).protocol(Protocol.HTTP_1_0).message(MESSAGE_EMPTY).code(200).build());
return null;
}
}).when(mCall).enqueue(mCallbackArgumentCaptor.capture());
onView(withId(R.id.teamcity_url)).perform(typeText(urlWithPath.replace("https://", "")), closeSoftKeyboard());
onView(withId(R.id.guest_user_switch)).perform(click());
onView(withId(R.id.btn_login)).perform(click());
intended(allOf(hasComponent(RootProjectsActivity.class.getName()), hasExtras(hasEntry(equalTo(BundleExtractorValues.IS_NEW_ACCOUNT_CREATED), equalTo(true)))));
TeamCityApplication app = (TeamCityApplication) InstrumentationRegistry.getInstrumentation().getTargetContext().getApplicationContext();
SharedUserStorage storageUtils = app.getRestApiInjector().sharedUserStorage();
assertThat(storageUtils.hasGuestAccountWithUrl(savedUrl), is(true));
assertThat(storageUtils.getActiveUser().getTeamcityUrl(), is(savedUrl));
}
Aggregations