Search in sources :

Example 46 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class XSiteResourceTest method testBackups.

@Test
public void testBackups() {
    RestCacheClient cache = getCacheClient(LON);
    Json status = jsonResponseBody(cache.xsiteBackups());
    assertEquals(ONLINE, status.at(NYC).at("status").asString());
    // add a second node
    TestSite site = site(LON);
    EmbeddedCacheManager cm = site.addCacheManager(null, defaultGlobalConfigurationForSite(site.getSiteIndex()), defaultConfigurationForSite(site.getSiteIndex()), false);
    site.waitForClusterToForm(CACHE_1);
    site.waitForClusterToForm(CACHE_2);
    TakeOfflineManager takeOfflineManager = TestingUtil.extractComponent(cm.getCache(CACHE_1), TakeOfflineManager.class);
    takeOfflineManager.takeSiteOffline(NYC);
    String node1 = String.valueOf(site.cacheManagers().get(0).getAddress());
    String node2 = String.valueOf(cm.getAddress());
    status = jsonResponseBody(cache.xsiteBackups());
    assertEquals("mixed", status.at(NYC).at("status").asString());
    assertEquals(status.at(NYC).at("online").asJsonList().iterator().next().asString(), node1);
    assertEquals(status.at(NYC).at("offline").asJsonList().iterator().next().asString(), node2);
    assertFalse(status.at(NYC).has("mixed"));
    status = jsonResponseBody(cache.backupStatus(NYC));
    assertEquals(ONLINE, status.at(node1).asString());
    assertEquals(OFFLINE, status.at(node2).asString());
    // bring NYC online
    takeOfflineManager.bringSiteOnline(NYC);
    status = jsonResponseBody(cache.xsiteBackups());
    assertEquals(ONLINE, status.at(NYC).at("status").asString());
    status = jsonResponseBody(cache.backupStatus(NYC));
    assertEquals(ONLINE, status.at(node1).asString());
    assertEquals(ONLINE, status.at(node2).asString());
}
Also used : RestCacheClient(org.infinispan.client.rest.RestCacheClient) Json(org.infinispan.commons.dataconversion.internal.Json) EmbeddedCacheManager(org.infinispan.manager.EmbeddedCacheManager) TakeOfflineManager(org.infinispan.xsite.status.TakeOfflineManager) Test(org.testng.annotations.Test) AbstractMultipleSitesTest(org.infinispan.xsite.AbstractMultipleSitesTest)

Example 47 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class CacheResourceTest method testReplaceExistingObject.

@Test
public void testReplaceExistingObject() {
    String initialJson = "{\"" + TYPE + "\":\"org.infinispan.rest.TestClass\",\"name\":\"test\"}";
    String changedJson = "{\"" + TYPE + "\":\"org.infinispan.rest.TestClass\",\"name\":\"test2\"}";
    RestResponse response = writeJsonToCache("key", initialJson, "objectCache");
    assertThat(response).isOk();
    response = writeJsonToCache("key", changedJson, "objectCache");
    assertThat(response).isOk();
    response = join(client.cache("objectCache").get("key", APPLICATION_JSON_TYPE));
    Json jsonNode = Json.read(response.getBody());
    assertEquals(jsonNode.at("name").asString(), "test2");
}
Also used : RestResponse(org.infinispan.client.rest.RestResponse) Util.getResourceAsString(org.infinispan.commons.util.Util.getResourceAsString) Json(org.infinispan.commons.dataconversion.internal.Json) Test(org.testng.annotations.Test)

Example 48 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class CacheResourceV2Test method testCacheFullDetail.

@Test
public void testCacheFullDetail() {
    RestResponse response = join(client.cache("default").details());
    Json document = Json.read(response.getBody());
    assertThat(response).isOk();
    assertThat(document.at("stats")).isNotNull();
    assertThat(document.at("size")).isNotNull();
    assertThat(document.at("configuration")).isNotNull();
    assertThat(document.at("rehash_in_progress")).isNotNull();
    assertThat(document.at("persistent")).isNotNull();
    assertThat(document.at("bounded")).isNotNull();
    assertThat(document.at("indexed")).isNotNull();
    assertThat(document.at("has_remote_backup")).isNotNull();
    assertThat(document.at("secured")).isNotNull();
    assertThat(document.at("indexing_in_progress")).isNotNull();
    assertThat(document.at("queryable")).isNotNull();
    assertThat(document.at("rebalancing_enabled")).isNotNull();
    assertThat(document.at("key_storage").asString()).isEqualTo("application/unknown");
    assertThat(document.at("value_storage").asString()).isEqualTo("application/unknown");
    response = join(client.cache("proto").details());
    document = Json.read(response.getBody());
    assertThat(document.at("key_storage").asString()).isEqualTo("application/x-protostream");
    assertThat(document.at("value_storage").asString()).isEqualTo("application/x-protostream");
}
Also used : RestResponse(org.infinispan.client.rest.RestResponse) Json(org.infinispan.commons.dataconversion.internal.Json) Test(org.testng.annotations.Test)

Example 49 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class CacheResourceV2Test method correctReportNotQueryableCache.

private void correctReportNotQueryableCache(String name, Configuration configuration) {
    createAndWriteToCache(name, configuration);
    RestResponse response = queryCache(name);
    assertThat(response).isBadRequest();
    Json json = Json.read(response.getBody());
    assertTrue(json.at("error").at("cause").toString().matches(".*ISPN028015.*"));
}
Also used : RestResponse(org.infinispan.client.rest.RestResponse) Json(org.infinispan.commons.dataconversion.internal.Json)

Example 50 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class CacheResourceV2Test method testCreateCacheEncoding.

@Test
public void testCreateCacheEncoding() {
    String cacheName = "encoding-test";
    String json = "{\"local-cache\":{\"encoding\":{\"media-type\":\"text/plain\"}}}";
    createCache(json, cacheName);
    String cacheConfig = getCacheConfig(APPLICATION_JSON_TYPE, cacheName);
    Json encoding = Json.read(cacheConfig).at("local-cache").at("encoding");
    Json keyMediaType = encoding.at("key").at("media-type");
    Json valueMediaType = encoding.at("value").at("media-type");
    assertEquals(TEXT_PLAIN_TYPE, keyMediaType.asString());
    assertEquals(TEXT_PLAIN_TYPE, valueMediaType.asString());
}
Also used : Util.getResourceAsString(org.infinispan.commons.util.Util.getResourceAsString) Json(org.infinispan.commons.dataconversion.internal.Json) Test(org.testng.annotations.Test)

Aggregations

Json (org.infinispan.commons.dataconversion.internal.Json)130 RestResponse (org.infinispan.client.rest.RestResponse)51 Test (org.testng.annotations.Test)51 RestClient (org.infinispan.client.rest.RestClient)15 Util.getResourceAsString (org.infinispan.commons.util.Util.getResourceAsString)13 Test (org.junit.Test)13 RestCacheClient (org.infinispan.client.rest.RestCacheClient)12 MultipleCacheManagersTest (org.infinispan.test.MultipleCacheManagersTest)12 AbstractMultipleSitesTest (org.infinispan.xsite.AbstractMultipleSitesTest)7 ArrayList (java.util.ArrayList)6 List (java.util.List)6 Map (java.util.Map)6 NettyRestResponse (org.infinispan.rest.NettyRestResponse)6 ResourceUtil.addEntityAsJson (org.infinispan.rest.resources.ResourceUtil.addEntityAsJson)6 HashMap (java.util.HashMap)5 RestEntity (org.infinispan.client.rest.RestEntity)5 IOException (java.io.IOException)4 HashSet (java.util.HashSet)4 Request (okhttp3.Request)4 RestSchemaClient (org.infinispan.client.rest.RestSchemaClient)4