import android.content.Context; import junit.framework.TestCase; import org.junit.Test; import org.mockito.Mock; import org.mockito.Mockito; import client.smrtms.com.smrtms_client.controller.GPSTracker; import client.smrtms.com.smrtms_client.controller.JSONParser; import client.smrtms.com.smrtms_client.controller.LoginUser; import client.smrtms.com.smrtms_client.controller.ServerControl; import client.smrtms.com.smrtms_client.tokens.AuthenticationToken; import client.smrtms.com.smrtms_client.tokens.FriendReqToken; /** * Created by effi on 6/9/15. */ public class ServerControlTest extends TestCase { ServerControl testController; @Mock Context t; @Mock GPSTracker gpsTracker; @Test public void testMethodExecutions() { try { t = Mockito.mock(Context.class); gpsTracker = Mockito.mock(GPSTracker.class); LoginUser.createInstance("test@test.com", "", t); }catch(Throwable e) { assertEquals(NullPointerException.class, e.getClass()); //do nothing, catching first one because of Android init } LoginUser.getInstance().serverTask.setGpsTracker(gpsTracker); AuthenticationToken testAToken = new AuthenticationToken("test@test.com", "test"); testAToken.access = true; JSONParser<AuthenticationToken> testParser = new JSONParser<>(); String testInput = testParser.JSONWriter(testAToken); assertTrue(testAToken.email.equals(testParser.readJson(testInput, AuthenticationToken.class).email)); testController = new ServerControl(testInput, testAToken); Thread x = new Thread(testController); x.start(); try { Thread.sleep(1000); } catch (Exception e) { } assertFalse(x.isAlive()); assert(LoginUser.getInstance().isLogin()); } }