summaryrefslogtreecommitdiffstats
path: root/configserver/src/test/java/com/yahoo
diff options
context:
space:
mode:
authorHarald Musum <musum@yahooinc.com>2023-03-07 12:53:56 +0100
committerHarald Musum <musum@yahooinc.com>2023-03-07 12:53:56 +0100
commitc49fb0a11c12fad7d87a1d949e1c128767922c61 (patch)
tree92a932277bd40808ab09ddf66b50bb31af273741 /configserver/src/test/java/com/yahoo
parent6a3858bbff93e2075999aebafdc26105f8f21b4b (diff)
Add request property requiredGeneration to http get config requests
Response should be 412 Precondition Failed if config found does not have same generations as property.
Diffstat (limited to 'configserver/src/test/java/com/yahoo')
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java
index a0b5b879e45..401bd1ae55b 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java
@@ -25,6 +25,7 @@ import org.junit.rules.TemporaryFolder;
import java.io.File;
import java.io.IOException;
import java.util.Collections;
+import java.util.Map;
import static com.yahoo.jdisc.Response.Status.BAD_REQUEST;
import static com.yahoo.jdisc.Response.Status.NOT_FOUND;
@@ -131,6 +132,20 @@ public class HttpGetConfigHandlerTest {
assertTrue(renderedString, renderedString.startsWith(expected));
}
+ @Test
+ public void require_that_required_generation_property_works() throws IOException {
+ HttpRequest request = HttpRequest.createTestRequest(configUri, GET, null, Map.of("requiredGeneration", "2"));
+ HttpResponse response = handler.handle(request);
+ String renderedString = SessionHandlerTest.getRenderedString(response);
+ assertTrue(renderedString, renderedString.startsWith(expected));
+
+ request = HttpRequest.createTestRequest(configUri, GET, null, Map.of("requiredGeneration", "3"));
+ response = handler.handle(request);
+ assertEquals(412, response.getStatus());
+ renderedString = SessionHandlerTest.getRenderedString(response);
+ assertEquals("{\"error-code\":\"PRECONDITION_FAILED\",\"message\":\"Config for required generation 3 could not be found.\"}", renderedString);
+ }
+
private PrepareParams prepareParams() {
return new PrepareParams.Builder().applicationId(applicationId).build();
}