summaryrefslogtreecommitdiffstats
path: root/container-search/src/test/java/com/yahoo/search
diff options
context:
space:
mode:
Diffstat (limited to 'container-search/src/test/java/com/yahoo/search')
-rw-r--r--container-search/src/test/java/com/yahoo/search/query/profile/config/test/QueryProfileIntegrationTestCase.java2
-rw-r--r--container-search/src/test/java/com/yahoo/search/query/profile/test/QueryProfileSubstitutionTestCase.java40
-rw-r--r--container-search/src/test/java/com/yahoo/search/test/QueryTestCase.java43
3 files changed, 46 insertions, 39 deletions
diff --git a/container-search/src/test/java/com/yahoo/search/query/profile/config/test/QueryProfileIntegrationTestCase.java b/container-search/src/test/java/com/yahoo/search/query/profile/config/test/QueryProfileIntegrationTestCase.java
index 67fb5da10a0..67d22fba4a3 100644
--- a/container-search/src/test/java/com/yahoo/search/query/profile/config/test/QueryProfileIntegrationTestCase.java
+++ b/container-search/src/test/java/com/yahoo/search/query/profile/config/test/QueryProfileIntegrationTestCase.java
@@ -80,7 +80,7 @@ public class QueryProfileIntegrationTestCase {
System.setProperty("config.id", configId);
Container container = new Container();
HandlersConfigurerTestWrapper configurer = new HandlersConfigurerTestWrapper(container, configId);
- SearchHandler searchHandler = (SearchHandler) configurer.getRequestHandlerRegistry().getComponent(SearchHandler.class.getName());
+ SearchHandler searchHandler = (SearchHandler)configurer.getRequestHandlerRegistry().getComponent(SearchHandler.class.getName());
// Should get "default" query profile containing the "test" search chain containing the "test" searcher
HttpRequest request = HttpRequest.createTestRequest("search", Method.GET);
diff --git a/container-search/src/test/java/com/yahoo/search/query/profile/test/QueryProfileSubstitutionTestCase.java b/container-search/src/test/java/com/yahoo/search/query/profile/test/QueryProfileSubstitutionTestCase.java
index 7ff120ddc70..9a0063e7f07 100644
--- a/container-search/src/test/java/com/yahoo/search/query/profile/test/QueryProfileSubstitutionTestCase.java
+++ b/container-search/src/test/java/com/yahoo/search/query/profile/test/QueryProfileSubstitutionTestCase.java
@@ -19,7 +19,7 @@ public class QueryProfileSubstitutionTestCase {
@Test
public void testSingleSubstitution() {
- QueryProfile p=new QueryProfile("test");
+ QueryProfile p = new QueryProfile("test");
p.set("message","Hello %{world}!", null);
p.set("world", "world", null);
assertEquals("Hello world!",p.compile(null).get("message"));
@@ -27,7 +27,7 @@ public class QueryProfileSubstitutionTestCase {
QueryProfile p2=new QueryProfile("test2");
p2.addInherited(p);
p2.set("world", "universe", null);
- assertEquals("Hello universe!",p2.compile(null).get("message"));
+ assertEquals("Hello universe!", p2.compile(null).get("message"));
}
@Test
@@ -39,16 +39,16 @@ public class QueryProfileSubstitutionTestCase {
p.set("exclamation","?", null);
assertEquals("Hola local group?",p.compile(null).get("message"));
- QueryProfile p2=new QueryProfile("test2");
+ QueryProfile p2 = new QueryProfile("test2");
p2.addInherited(p);
p2.set("entity","milky way", null);
- assertEquals("Hola milky way?",p2.compile(null).get("message"));
+ assertEquals("Hola milky way?", p2.compile(null).get("message"));
}
@Test
public void testUnclosedSubstitution1() {
try {
- QueryProfile p=new QueryProfile("test");
+ QueryProfile p = new QueryProfile("test");
p.set("message1","%{greeting} %{entity}%{exclamation", null);
fail("Should have produced an exception");
}
@@ -61,7 +61,7 @@ public class QueryProfileSubstitutionTestCase {
@Test
public void testUnclosedSubstitution2() {
try {
- QueryProfile p=new QueryProfile("test");
+ QueryProfile p = new QueryProfile("test");
p.set("message1","%{greeting} %{entity%{exclamation}", null);
fail("Should have produced an exception");
}
@@ -73,26 +73,26 @@ public class QueryProfileSubstitutionTestCase {
@Test
public void testNullSubstitution() {
- QueryProfile p=new QueryProfile("test");
+ QueryProfile p = new QueryProfile("test");
p.set("message","%{greeting} %{entity}%{exclamation}", null);
p.set("greeting","Hola", null);
assertEquals("Hola ", p.compile(null).get("message"));
- QueryProfile p2=new QueryProfile("test2");
+ QueryProfile p2 = new QueryProfile("test2");
p2.addInherited(p);
p2.set("greeting","Hola", null);
p2.set("exclamation", "?", null);
- assertEquals("Hola ?",p2.compile(null).get("message"));
+ assertEquals("Hola ?", p2.compile(null).get("message"));
}
@Test
public void testNoOverridingOfPropertiesSetAtRuntime() {
- QueryProfile p=new QueryProfile("test");
+ QueryProfile p = new QueryProfile("test");
p.set("message","Hello %{world}!", null);
p.set("world","world", null);
p.freeze();
- Properties runtime=new QueryProfileProperties(p.compile(null));
+ Properties runtime = new QueryProfileProperties(p.compile(null));
runtime.set("runtimeMessage","Hello %{world}!");
assertEquals("Hello world!", runtime.get("message"));
assertEquals("Hello %{world}!",runtime.get("runtimeMessage"));
@@ -100,18 +100,18 @@ public class QueryProfileSubstitutionTestCase {
@Test
public void testButPropertiesSetAtRuntimeAreUsedInSubstitutions() {
- QueryProfile p=new QueryProfile("test");
- p.set("message","Hello %{world}!", null);
- p.set("world","world", null);
+ QueryProfile p = new QueryProfile("test");
+ p.set("message", "Hello %{world}!", null);
+ p.set("world", "world", null);
- Properties runtime=new QueryProfileProperties(p.compile(null));
- runtime.set("world","Earth");
- assertEquals("Hello Earth!",runtime.get("message"));
+ Properties runtime = new QueryProfileProperties(p.compile(null));
+ runtime.set("world", "Earth");
+ assertEquals("Hello Earth!", runtime.get("message"));
}
@Test
public void testInspection() {
- QueryProfile p=new QueryProfile("test");
+ QueryProfile p = new QueryProfile("test");
p.set("message", "%{greeting} %{entity}%{exclamation}", null);
assertEquals("message","%{greeting} %{entity}%{exclamation}",
p.declaredContent().entrySet().iterator().next().getValue().toString());
@@ -119,7 +119,7 @@ public class QueryProfileSubstitutionTestCase {
@Test
public void testVariants() {
- QueryProfile p=new QueryProfile("test");
+ QueryProfile p = new QueryProfile("test");
p.set("message","Hello %{world}!", null);
p.set("world","world", null);
p.setDimensions(new String[] {"x"});
@@ -134,7 +134,7 @@ public class QueryProfileSubstitutionTestCase {
@Test
public void testRecursion() {
- QueryProfile p=new QueryProfile("test");
+ QueryProfile p = new QueryProfile("test");
p.set("message","Hello %{world}!", null);
p.set("world","sol planet number %{number}", null);
p.set("number",3, null);
diff --git a/container-search/src/test/java/com/yahoo/search/test/QueryTestCase.java b/container-search/src/test/java/com/yahoo/search/test/QueryTestCase.java
index e60d84db3d0..ce48d000ce8 100644
--- a/container-search/src/test/java/com/yahoo/search/test/QueryTestCase.java
+++ b/container-search/src/test/java/com/yahoo/search/test/QueryTestCase.java
@@ -301,10 +301,10 @@ public class QueryTestCase {
@Test
public void testTimeoutInRequestOverridesQueryProfile() {
- QueryProfile profile = new QueryProfile("test");
- profile.set("timeout", 318, (QueryProfileRegistry)null);
- Query q = new Query(QueryTestCase.httpEncode("/search?timeout=500"), profile.compile(null));
- assertEquals(500000L, q.getTimeout());
+ QueryProfile profile = new QueryProfile("myProfile");
+ profile.set("myField", "Profile: %{queryProfile}", null);
+ Query q = new Query(QueryTestCase.httpEncode("/search?queryProfile=myProfile"), profile.compile(null));
+ assertEquals("Profile: myProfile", q.properties().get("myField"));
}
@Test
@@ -332,6 +332,20 @@ public class QueryTestCase {
}
@Test
+ public void testQueryProfileInSubstitution() {
+ QueryProfile testProfile = new QueryProfile("test");
+ testProfile.setOverridable("u", false, null);
+ testProfile.set("d","e", null);
+ testProfile.set("u","11", null);
+ testProfile.set("foo.bar", "wiz", null);
+ Query q = new Query(QueryTestCase.httpEncode("?query=a:>5&a=b&traceLevel=5&sources=a,b&u=12&foo.bar2=wiz2&c.d=foo&queryProfile=test"),testProfile.compile(null));
+ String trace = q.getContext(false).getTrace().toString();
+ String[] traceLines = trace.split("\n");
+ for (String line : traceLines)
+ System.out.println(line);
+ }
+
+ @Test
public void testDefaultIndex() {
Query q = new Query("?query=hi%20hello%20keyword:kanoo%20" +
"default:munkz%20%22phrases+too%22&default-index=def");
@@ -385,18 +399,15 @@ public class QueryTestCase {
}
public class TestClass {
+
private int testInt = 0;
- public int getTestInt() {
- return testInt;
- }
- public void setTestInt(int testInt) {
- this.testInt = testInt;
- }
+ public int getTestInt() { return testInt; }
+
+ public void setTestInt(int testInt) { this.testInt = testInt; }
+
+ public void setTestInt(String testInt) { this.testInt = Integer.parseInt(testInt); }
- public void setTestInt(String testInt) {
- this.testInt = Integer.parseInt(testInt);
- }
}
@Test
@@ -431,7 +442,6 @@ public class QueryTestCase {
Set<String> traces = new HashSet<>();
for (String trace : q.getContext(true).getTrace().traceNode().descendants(String.class))
traces.add(trace);
- // for (String s : traces) System.out.println(s);
assertTrue(traces.contains("trace1: [select * from sources * where default contains \"foo\";]"));
assertTrue(traces.contains("trace2"));
assertTrue(traces.contains("trace3-1, trace3-2: [select * from sources * where default contains \"foo\";]"));
@@ -444,9 +454,8 @@ public class QueryTestCase {
assertEquals(2, q.getTraceLevel());
q.trace(false,2, "trace2 ", null);
Set<String> traces = new HashSet<>();
- for (String trace : q.getContext(true).getTrace().traceNode().descendants(String.class)) {
+ for (String trace : q.getContext(true).getTrace().traceNode().descendants(String.class))
traces.add(trace);
- }
assertTrue(traces.contains("trace2 null"));
}
@@ -460,8 +469,6 @@ public class QueryTestCase {
Query q = new Query(QueryTestCase.httpEncode("?query=a:>5&a=b&traceLevel=5&sources=a,b&u=12&foo.bar2=wiz2&c.d=foo&queryProfile=test"),testProfile.compile(null));
String trace = q.getContext(false).getTrace().toString();
String[] traceLines = trace.split("\n");
- for (String line : traceLines)
- System.out.println(line);
assertTrue(contains("query=a:>5 (value from request)", traceLines));
assertTrue(contains("traceLevel=5 (value from request)", traceLines));
assertTrue(contains("a=b (value from request)", traceLines));