+ public void getPolicies() throws Exception {
+ String url = baseUrl() + "/policies";
+ addPolicy("id1", "type1", "service1");
+ addPolicy("id2", "type2", "service2");
+
+ String rsp = this.restTemplate.getForObject(url, String.class);
+ System.out.println(rsp);
+ assertThat(rsp).contains("id1");
+ assertThat(rsp).contains("id2");
+ }
+
+ @Test
+ public void getPoliciesFilter() throws Exception {
+ addPolicy("id1", "type1", "service1");
+ addPolicy("id2", "type1", "service2");
+ addPolicy("id3", "type2", "service1");
+
+ String url = baseUrl() + "/policies?type=type1";
+ String rsp = this.restTemplate.getForObject(url, String.class);
+ System.out.println(rsp);
+ assertThat(rsp).contains("id1");
+ assertThat(rsp).contains("id2");
+ assertFalse(rsp.contains("id3"));
+
+ url = baseUrl() + "/policies?type=type1&service=service2";
+ rsp = this.restTemplate.getForObject(url, String.class);
+ System.out.println(rsp);
+ assertFalse(rsp.contains("id1"));
+ assertThat(rsp).contains("id2");
+ assertFalse(rsp.contains("id3"));
+ }
+
+ private void putService(String name) {
+ String url = baseUrl() + "/service";
+
+ ServiceRegistrationInfo service = ImmutableServiceRegistrationInfo.builder() //
+ .keepAliveInterval(1) //
+ .name(name) //
+ .build();
+ String json = gson.toJson(service);
+ this.restTemplate.put(url, json);
+ }
+
+ @Test
+ public void putAndGetService() throws Exception {
+ putService("name");
+
+ String url = baseUrl() + "/service?name=name";
+ String rsp = this.restTemplate.getForObject(url, String.class);
+ ServiceStatus status = gson.fromJson(rsp, ImmutableServiceStatus.class);
+ assertThat(status.keepAliveInterval() == 1);
+ assertThat(status.name().equals("name"));
+
+ url = baseUrl() + "/services";
+ rsp = this.restTemplate.getForObject(url, String.class);
+ assertThat(rsp.contains("name"));
+ System.out.println(rsp);
+
+ url = baseUrl() + "/service/ping";
+ this.restTemplate.put(url, "name");