Search in sources :

Example 36 with Cookie

use of com.firenio.codec.http11.Cookie in project EhViewer by seven332.

the class CookieRepositoryTest method testUpdate.

@Test
public void testUpdate() {
    Context app = RuntimeEnvironment.application;
    HttpUrl urlEh = HttpUrl.parse("http://www.ehviewer.com/");
    Cookie cookieEh1 = new Cookie.Builder().name("level").value("999").domain("www.ehviewer.com").path("/").expiresAt(System.currentTimeMillis() + 100000).build();
    Cookie cookieEh2 = new Cookie.Builder().name("level").value("0").domain("www.ehviewer.com").path("/").expiresAt(System.currentTimeMillis() + 100000).build();
    CookieRepository repository = new CookieRepository(app, "cookie.db");
    repository.saveFromResponse(urlEh, Collections.singletonList(cookieEh1));
    repository.saveFromResponse(urlEh, Collections.singletonList(cookieEh2));
    Map<String, CookieSet> map = Reflect.on(repository).field("map").get();
    assertEquals(1, map.size());
    equals(map.get("www.ehviewer.com"), Collections.singletonList(cookieEh2));
    repository.close();
    repository = new CookieRepository(app, "cookie.db");
    map = Reflect.on(repository).field("map").get();
    assertEquals(1, map.size());
    equals(map.get("www.ehviewer.com"), Collections.singletonList(cookieEh2));
    repository.close();
}
Also used : Context(android.content.Context) Cookie(okhttp3.Cookie) HttpUrl(okhttp3.HttpUrl) Test(org.junit.Test)

Example 37 with Cookie

use of com.firenio.codec.http11.Cookie in project EhViewer by seven332.

the class CookieRepositoryTest method testClear.

@Test
public void testClear() {
    Context app = RuntimeEnvironment.application;
    HttpUrl url = HttpUrl.parse("http://www.ehviewer.com/");
    Cookie cookie = new Cookie.Builder().name("user").value("1234567890").domain("ehviewer.com").path("/").expiresAt(System.currentTimeMillis() + 3000).build();
    CookieRepository repository = new CookieRepository(app, "cookie.db");
    repository.saveFromResponse(url, Collections.singletonList(cookie));
    Map<String, CookieSet> map = Reflect.on(repository).field("map").get();
    assertEquals(1, map.size());
    equals(map.get("ehviewer.com"), Collections.singletonList(cookie));
    repository.clear();
    map = Reflect.on(repository).field("map").get();
    assertEquals(0, map.size());
    repository.close();
    repository = new CookieRepository(app, "cookie.db");
    map = Reflect.on(repository).field("map").get();
    assertEquals(0, map.size());
    repository.close();
}
Also used : Context(android.content.Context) Cookie(okhttp3.Cookie) HttpUrl(okhttp3.HttpUrl) Test(org.junit.Test)

Example 38 with Cookie

use of com.firenio.codec.http11.Cookie in project EhViewer by seven332.

the class CookieRepositoryTest method testGet.

@Test
public void testGet() throws InterruptedException {
    Context app = RuntimeEnvironment.application;
    HttpUrl urlEh1 = HttpUrl.parse("http://www.ehviewer.com/");
    HttpUrl urlEh2 = HttpUrl.parse("http://ehviewer.com/");
    Cookie cookieEh1 = new Cookie.Builder().name("user").value("1234567890").domain("ehviewer.com").path("/").expiresAt(System.currentTimeMillis() + 3000).build();
    Cookie cookieEh2 = new Cookie.Builder().name("level").value("999").domain("www.ehviewer.com").path("/").build();
    Cookie cookieEh3 = new Cookie.Builder().name("speed").value("10").domain("ehviewer.com").path("/").build();
    HttpUrl urlNMB = HttpUrl.parse("http://h.nimingban.com/");
    Cookie cookieNMB = new Cookie.Builder().name("hash").value("0987654321").domain("nimingban.com").path("/").build();
    CookieRepository repository = new CookieRepository(app, "cookie.db");
    repository.saveFromResponse(urlEh1, Arrays.asList(cookieEh1, cookieEh2));
    repository.saveFromResponse(urlEh1, Collections.singletonList(cookieEh3));
    repository.saveFromResponse(urlNMB, Collections.singletonList(cookieNMB));
    equals(Arrays.asList(cookieEh1, cookieEh3), repository.loadForRequest(null));
    Thread.sleep(3000);
    equals(Collections.singletonList(cookieEh3), repository.loadForRequest(null));
    repository.close();
}
Also used : Context(android.content.Context) Cookie(okhttp3.Cookie) HttpUrl(okhttp3.HttpUrl) Test(org.junit.Test)

Example 39 with Cookie

use of com.firenio.codec.http11.Cookie in project EhViewer by seven332.

the class CookieRepositoryTest method testSort.

@Test
public void testSort() {
    Context app = RuntimeEnvironment.application;
    HttpUrl url = HttpUrl.parse("http://www.ehviewer.com/long/long/long/");
    Cookie cookie1 = new Cookie.Builder().name("user").value("1234567890").domain("ehviewer.com").path("/").build();
    Cookie cookie2 = new Cookie.Builder().name("supersuperme").value("99999").domain("ehviewer.com").path("/long/").build();
    Cookie cookie3 = new Cookie.Builder().name("a").value("b").domain("ehviewer.com").path("/long/long/long/").build();
    Cookie cookie4 = new Cookie.Builder().name("speed").value("100").domain("ehviewer.com").path("/long/long/").build();
    CookieRepository repository = new CookieRepository(app, "cookie.db");
    repository.saveFromResponse(url, Arrays.asList(cookie1, cookie2, cookie3, cookie4));
    List<Cookie> list = repository.loadForRequest(null);
    List<Cookie> expected = Arrays.asList(cookie3, cookie4, cookie2, cookie1);
    assertEquals(expected.size(), list.size());
    for (int i = 0; i < list.size(); i++) {
        assertEquals(expected.get(i), list.get(i));
    }
    repository.close();
}
Also used : Context(android.content.Context) Cookie(okhttp3.Cookie) HttpUrl(okhttp3.HttpUrl) Test(org.junit.Test)

Example 40 with Cookie

use of com.firenio.codec.http11.Cookie in project apps-android-wikipedia by wikimedia.

the class CookieManagerTypeAdapter method write.

@Override
public void write(JsonWriter out, SharedPreferenceCookieManager cookies) throws IOException {
    Map<String, List<Cookie>> map = cookies.getCookieJar();
    out.beginObject();
    for (String key : map.keySet()) {
        out.name(key).beginArray();
        for (Cookie cookie : map.get(key)) {
            out.value(cookie.toString());
        }
        out.endArray();
    }
    out.endObject();
}
Also used : Cookie(okhttp3.Cookie) List(java.util.List) ArrayList(java.util.ArrayList)

Aggregations

Cookie (okhttp3.Cookie)102 ArrayList (java.util.ArrayList)31 IOException (java.io.IOException)20 HttpUrl (okhttp3.HttpUrl)18 ByteArrayInputStream (java.io.ByteArrayInputStream)16 ObjectInputStream (java.io.ObjectInputStream)16 SharedPreferences (android.content.SharedPreferences)12 Context (android.content.Context)8 HashMap (java.util.HashMap)8 List (java.util.List)8 Map (java.util.Map)8 Test (org.junit.Test)8 Response (okhttp3.Response)7 SerializableCookie (com.lzy.okgo.cookie.SerializableCookie)6 Request (okhttp3.Request)6 SuppressLint (android.annotation.SuppressLint)4 CookieManager (android.webkit.CookieManager)4 EhCookieStore (com.hippo.ehviewer.client.EhCookieStore)4 OnClick (butterknife.OnClick)3 SerializableCookie (com.franmontiel.persistentcookiejar.persistence.SerializableCookie)3