From 2c74b33de6bce6bd756b0a6d1065cc973e35ca97 Mon Sep 17 00:00:00 2001 From: Yury Semikhatsky Date: Wed, 2 Dec 2020 13:38:14 -0800 Subject: [PATCH] fix(request): report raw request headers (#83) --- .../playwright/impl/ResponseImpl.java | 11 +++++------ .../playwright/TestNetworkRequest.java | 19 +++++++++---------- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/playwright/src/main/java/com/microsoft/playwright/impl/ResponseImpl.java b/playwright/src/main/java/com/microsoft/playwright/impl/ResponseImpl.java index 5771f47a..1d1bc76f 100644 --- a/playwright/src/main/java/com/microsoft/playwright/impl/ResponseImpl.java +++ b/playwright/src/main/java/com/microsoft/playwright/impl/ResponseImpl.java @@ -40,12 +40,11 @@ public class ResponseImpl extends ChannelOwner implements Response { } request = connection.getExistingObject(initializer.getAsJsonObject("request").get("guid").getAsString()); -// TODO: uncomment when server changes are published. -// request.headers.clear(); -// for (JsonElement e : initializer.getAsJsonArray("requestHeaders")) { -// JsonObject item = e.getAsJsonObject(); -// request.headers.put(item.get("name").getAsString().toLowerCase(), item.get("value").getAsString()); -// } + request.headers.clear(); + for (JsonElement e : initializer.getAsJsonArray("requestHeaders")) { + JsonObject item = e.getAsJsonObject(); + request.headers.put(item.get("name").getAsString().toLowerCase(), item.get("value").getAsString()); + } } @Override diff --git a/playwright/src/test/java/com/microsoft/playwright/TestNetworkRequest.java b/playwright/src/test/java/com/microsoft/playwright/TestNetworkRequest.java index b2e6ac95..f764848f 100644 --- a/playwright/src/test/java/com/microsoft/playwright/TestNetworkRequest.java +++ b/playwright/src/test/java/com/microsoft/playwright/TestNetworkRequest.java @@ -26,6 +26,7 @@ import java.util.List; import java.util.Map; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; +import java.util.stream.Collectors; import static com.microsoft.playwright.Page.EventType.REQUEST; import static com.microsoft.playwright.Page.EventType.RESPONSE; @@ -113,11 +114,10 @@ public class TestNetworkRequest extends TestBase { writer.write("done"); } }); -// TODO: uncomment when server changes are published -// Response response = page.navigate(server.PREFIX + "/empty.html"); -// Map expectedHeaders = serverRequest.get().headers.entrySet().stream().collect( -// Collectors.toMap(Map.Entry::getKey, e -> e.getValue().get(0))); -// assertEquals(expectedHeaders, response.request().headers()); + Response response = page.navigate(server.PREFIX + "/empty.html"); + Map expectedHeaders = serverRequest.get().headers.entrySet().stream().collect( + Collectors.toMap(e -> e.getKey().toLowerCase(), e -> e.getValue().get(0))); + assertEquals(expectedHeaders, response.request().headers()); } @Test @@ -138,11 +138,10 @@ public class TestNetworkRequest extends TestBase { " return data.text();\n" + "}", server.CROSS_PROCESS_PREFIX + "/something"); assertEquals("done", text); -// TODO: uncomment when server changes are published -// Response response = (Response) responsePromise.get().data(); -// Map expectedHeaders = serverRequest.get().headers.entrySet().stream().collect( -// Collectors.toMap(Map.Entry::getKey, e -> e.getValue().get(0))); -// assertEquals(expectedHeaders, response.request().headers()); + Response response = (Response) responsePromise.get().data(); + Map expectedHeaders = serverRequest.get().headers.entrySet().stream().collect( + Collectors.toMap(e -> e.getKey().toLowerCase(), e -> e.getValue().get(0))); + assertEquals(expectedHeaders, response.request().headers()); } @Test