package com.microsoft.live;
import java.util.Arrays;
import java.util.Calendar;
import org.apache.http.client.HttpClient;
import android.content.Context;
import android.test.mock.MockApplication;
/**
* This class has access to default (i.e., internal) classes and methods inside of com.microsoft.live.
* It is used to assist test cases.
*/
public final class TestUtils {
public static LiveAuthClient newMockLiveAuthClient() {
return new LiveAuthClient(new MockApplication() {
@Override
public Context getApplicationContext() {
return this;
}
}, "someclientid");
}
public static LiveConnectSession newMockLiveConnectSession() {
LiveAuthClient authClient = TestUtils.newMockLiveAuthClient();
LiveConnectSession session = new LiveConnectSession(authClient);
session.setAccessToken("access_token");
session.setAuthenticationToken("authentication_token");
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.SECOND, 3600);
session.setExpiresIn(calendar.getTime());
String[] scopes = {"scope"};
session.setScopes(Arrays.asList(scopes));
session.setRefreshToken("refresh_token");
session.setTokenType("token_type");
return session;
}
public static LiveConnectClient newLiveConnectClient(HttpClient client) {
LiveConnectSession session = TestUtils.newMockLiveConnectSession();
LiveConnectClient liveClient = new LiveConnectClient(session);
liveClient.setHttpClient(client);
return liveClient;
}
private TestUtils() { throw new AssertionError(); }
}