package pl.pola_app.helpers; import android.content.Context; import android.preference.PreferenceManager; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RobolectricGradleTestRunner; import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import pl.pola_app.TestApplication; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNotNull; @Config(application = TestApplication.class) @RunWith(RobolectricGradleTestRunner.class) public class SessionIdTest { private final Context context = RuntimeEnvironment.application; @Test public void testGetReturnsNotNullWhenCreated() throws Exception { final String sessionId = SessionId.create(context).get(); assertNotNull(sessionId); } @Test public void testGetReturnsSameValueWhenCalledTwice() throws Exception { final String id1 = SessionId.create(context).get(); final String id2 = SessionId.create(context).get(); assertEquals(id1, id2); } @Test public void testIdIsRefreshedWhenCleared() throws Exception { final String firstId = SessionId.create(context).get(); PreferenceManager.getDefaultSharedPreferences(context).edit().clear().apply(); final String afterClearId = SessionId.create(context).get(); assertNotEquals(firstId, afterClearId); } }