You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficcontrol.apache.org by el...@apache.org on 2018/10/05 19:54:34 UTC
[trafficcontrol] 04/05: Add unit test for parsing
localizationMethods from CRConfig
This is an automated email from the ASF dual-hosted git repository.
elsloo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficcontrol.git
commit 4d3a4430e35bdd26e6e5eb33908ee47efa5abdc1
Author: Rawlin Peters <ra...@comcast.com>
AuthorDate: Thu Oct 4 15:41:14 2018 -0600
Add unit test for parsing localizationMethods from CRConfig
---
.../core/config/ConfigHandlerTest.java | 41 ++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/traffic_router/core/src/test/java/com/comcast/cdn/traffic_control/traffic_router/core/config/ConfigHandlerTest.java b/traffic_router/core/src/test/java/com/comcast/cdn/traffic_control/traffic_router/core/config/ConfigHandlerTest.java
index 0fde4a5..dcb47ad 100644
--- a/traffic_router/core/src/test/java/com/comcast/cdn/traffic_control/traffic_router/core/config/ConfigHandlerTest.java
+++ b/traffic_router/core/src/test/java/com/comcast/cdn/traffic_control/traffic_router/core/config/ConfigHandlerTest.java
@@ -15,9 +15,15 @@
package com.comcast.cdn.traffic_control.traffic_router.core.config;
+import java.util.Arrays;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.Map;
+import java.util.Set;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.comcast.cdn.traffic_control.traffic_router.core.cache.CacheLocation.LocalizationMethod;
import com.comcast.cdn.traffic_control.traffic_router.core.request.HTTPRequest;
import org.junit.Before;
import org.junit.Test;
@@ -241,4 +247,39 @@ public class ConfigHandlerTest {
assertThat(urlType[0], equalTo("DS_URL"));
assertThat(typeUrl[0], equalTo(path));
}
+
+ @Test
+ public void testParseLocalizationMethods() throws Exception {
+ LocalizationMethod[] allMethods = new LocalizationMethod[] {
+ LocalizationMethod.CZ,
+ LocalizationMethod.DEEP_CZ,
+ LocalizationMethod.GEO,
+ };
+ Set<LocalizationMethod> expected = new HashSet<>();
+ expected.addAll(Arrays.asList(allMethods));
+
+ ObjectMapper mapper = new ObjectMapper();
+
+ String allMethodsString = "{\"localizationMethods\": [\"CZ\",\"DEEP_CZ\",\"GEO\"]}";
+ JsonNode allMethodsJson = mapper.readTree(allMethodsString);
+ Set<LocalizationMethod> actual = Whitebox.invokeMethod(handler, "parseLocalizationMethods", "foo", allMethodsJson);
+ assertThat(actual, equalTo(expected));
+
+ String noMethodsString = "{}";
+ JsonNode noMethodsJson = mapper.readTree(noMethodsString);
+ actual = Whitebox.invokeMethod(handler, "parseLocalizationMethods", "foo", noMethodsJson);
+ assertThat(actual, equalTo(expected));
+
+ String nullMethodsString = "{\"localizationMethods\": null}";
+ JsonNode nullMethodsJson = mapper.readTree(nullMethodsString);
+ actual = Whitebox.invokeMethod(handler, "parseLocalizationMethods", "foo", nullMethodsJson);
+ assertThat(actual, equalTo(expected));
+
+ String CZMethodsString = "{\"localizationMethods\": [\"CZ\"]}";
+ JsonNode CZMethodsJson = mapper.readTree(CZMethodsString);
+ expected.clear();
+ expected.add(LocalizationMethod.CZ);
+ actual = Whitebox.invokeMethod(handler, "parseLocalizationMethods", "foo", CZMethodsJson);
+ assertThat(actual, equalTo(expected));
+ }
}