summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2018-03-20 09:14:14 +0100
committerMartin Polden <mpolden@mpolden.no>2018-03-20 09:14:14 +0100
commit15a8b7e0bc6c3294865247f782b504d2ef4dae28 (patch)
treee7d4ac88d9fe7625ce6a1b548aaec49ae9f37084
parent601b4777257e9d1694bdc6987d2b63ee6ccf52dc (diff)
Less greedy matching
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/ContainerTester.java6
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/RestApiTest.java6
2 files changed, 8 insertions, 4 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/ContainerTester.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/ContainerTester.java
index b36fd41e56d..1a876e6b246 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/ContainerTester.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/ContainerTester.java
@@ -73,9 +73,11 @@ public class ContainerTester {
String responseString = response.getBodyAsString();
if (expectedResponse.contains("(ignore)")) {
// Convert expected response to a literal pattern and replace any ignored field with a pattern that matches
- // anything
+ // until the first stop character
+ String stopCharacters = "[^,:\\\\[\\\\]{}]";
String expectedResponsePattern = Pattern.quote(expectedResponse)
- .replaceAll("\"?\\(ignore\\)\"?", "\\\\E.*\\\\Q");
+ .replaceAll("\"?\\(ignore\\)\"?", "\\\\E" +
+ stopCharacters + "*\\\\Q");
if (!Pattern.matches(expectedResponsePattern, responseString)) {
throw new ComparisonFailure(responseFile.toString() + " (with ignored fields)",
expectedResponsePattern, responseString);
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/RestApiTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/RestApiTest.java
index d17f5d70b06..cbdd4dec3dc 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/RestApiTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/RestApiTest.java
@@ -587,9 +587,11 @@ public class RestApiTest {
String responseString = container.handleRequest(request).getBodyAsString();
if (expectedResponse.contains("(ignore)")) {
// Convert expected response to a literal pattern and replace any ignored field with a pattern that matches
- // anything
+ // until the first stop character
+ String stopCharacters = "[^,:\\\\[\\\\]{}]";
String expectedResponsePattern = Pattern.quote(expectedResponse)
- .replaceAll("\"?\\(ignore\\)\"?", "\\\\E.*\\\\Q");
+ .replaceAll("\"?\\(ignore\\)\"?", "\\\\E" +
+ stopCharacters + "*\\\\Q");
if (!Pattern.matches(expectedResponsePattern, responseString)) {
throw new ComparisonFailure(responseFile + " (with ignored fields)", expectedResponsePattern,
responseString);