Skip to content

Commit 8e6783d

Browse files
committed
revert console message type change
1 parent 1a6bb17 commit 8e6783d

File tree

6 files changed

+19
-83
lines changed

6 files changed

+19
-83
lines changed

playwright/src/main/java/com/microsoft/playwright/ConsoleMessage.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616

1717
package com.microsoft.playwright;
1818

19-
import com.microsoft.playwright.options.*;
2019
import java.util.*;
2120

2221
/**
@@ -78,6 +77,6 @@ public interface ConsoleMessage {
7877
*
7978
* @since v1.8
8079
*/
81-
ConsoleMessageType type();
80+
String type();
8281
}
8382

playwright/src/main/java/com/microsoft/playwright/impl/ConsoleMessageImpl.java

Lines changed: 2 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,6 @@
2020
import com.google.gson.JsonObject;
2121
import com.microsoft.playwright.ConsoleMessage;
2222
import com.microsoft.playwright.JSHandle;
23-
import com.microsoft.playwright.PlaywrightException;
24-
import com.microsoft.playwright.options.ConsoleMessageType;
2523

2624
import java.util.ArrayList;
2725
import java.util.List;
@@ -42,29 +40,8 @@ public ConsoleMessageImpl(Connection connection, JsonObject initializer) {
4240
this.initializer = initializer;
4341
}
4442

45-
public ConsoleMessageType type() {
46-
String value = initializer.get("type").getAsString();
47-
switch (value) {
48-
case "log": return ConsoleMessageType.LOG;
49-
case "debug": return ConsoleMessageType.DEBUG;
50-
case "info": return ConsoleMessageType.INFO;
51-
case "error": return ConsoleMessageType.ERROR;
52-
case "warning": return ConsoleMessageType.WARNING;
53-
case "dir": return ConsoleMessageType.DIR;
54-
case "dirxml": return ConsoleMessageType.DIRXML;
55-
case "table": return ConsoleMessageType.TABLE;
56-
case "trace": return ConsoleMessageType.TRACE;
57-
case "clear": return ConsoleMessageType.CLEAR;
58-
case "startGroup": return ConsoleMessageType.STARTGROUP;
59-
case "startGroupCollapsed": return ConsoleMessageType.STARTGROUPCOLLAPSED;
60-
case "endGroup": return ConsoleMessageType.ENDGROUP;
61-
case "assert": return ConsoleMessageType.ASSERT;
62-
case "profile": return ConsoleMessageType.PROFILE;
63-
case "profileEnd": return ConsoleMessageType.PROFILEEND;
64-
case "count": return ConsoleMessageType.COUNT;
65-
case "timeEnd": return ConsoleMessageType.TIMEEND;
66-
default: throw new PlaywrightException("Unexpected console message type: " + value);
67-
}
43+
public String type() {
44+
return initializer.get("type").getAsString();
6845
}
6946

7047
public String text() {

playwright/src/main/java/com/microsoft/playwright/options/ConsoleMessageType.java

Lines changed: 0 additions & 38 deletions
This file was deleted.

playwright/src/test/java/com/microsoft/playwright/TestBrowserContextEvents.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@
1919
import org.junit.jupiter.api.Test;
2020
import org.junit.jupiter.api.condition.DisabledIf;
2121

22-
import com.microsoft.playwright.options.ConsoleMessageType;
23-
2422
import java.io.OutputStreamWriter;
2523
import java.io.Writer;
2624

@@ -55,7 +53,7 @@ void consoleEventShouldWorkInPopup() {
5553
void consoleEventShouldWorkInPopup2() {
5654
Page[] popup = { null };
5755
ConsoleMessage message = context.waitForConsoleMessage(
58-
new BrowserContext.WaitForConsoleMessageOptions().setPredicate(msg -> msg.type() == ConsoleMessageType.LOG),
56+
new BrowserContext.WaitForConsoleMessageOptions().setPredicate(msg -> "log".equals(msg.type())),
5957
() -> {
6058
popup[0] = context.waitForPage(() -> {
6159
page.evaluate("async () => {\n" +

playwright/src/test/java/com/microsoft/playwright/TestPageEventConsole.java

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@
1919
import org.junit.jupiter.api.Test;
2020
import org.junit.jupiter.api.condition.DisabledIf;
2121

22-
import com.microsoft.playwright.options.ConsoleMessageType;
23-
2422
import java.util.ArrayList;
2523
import java.util.List;
2624

@@ -42,7 +40,7 @@ void shouldWork() {
4240
} else {
4341
assertEquals("hello 5 {foo: bar}", message.text());
4442
}
45-
assertEquals(ConsoleMessageType.LOG, message.type());
43+
assertEquals("log", message.type());
4644
assertEquals("hello", message.args().get(0).jsonValue());
4745
assertEquals(5, message.args().get(1).jsonValue());
4846
assertEquals(mapOf("foo", "bar"), message.args().get(2).jsonValue());
@@ -72,13 +70,7 @@ void shouldWorkForDifferentConsoleAPICalls() {
7270
" console.error('calling console.error');\n" +
7371
" console.log(Promise.resolve('should not wait until resolved!'));\n" +
7472
" }");
75-
assertEquals(asList(
76-
ConsoleMessageType.TIMEEND,
77-
ConsoleMessageType.TRACE,
78-
ConsoleMessageType.DIR,
79-
ConsoleMessageType.WARNING,
80-
ConsoleMessageType.ERROR,
81-
ConsoleMessageType.LOG),
73+
assertEquals(asList("timeEnd", "trace", "dir", "warning", "error", "log"),
8274
messages.stream().map(msg -> msg.type()).collect(toList()));
8375
assertTrue(messages.get(0).text().contains("calling console.time"));
8476

@@ -112,7 +104,7 @@ void shouldTriggerCorrectLog() {
112104
page.evaluate("async url => fetch(url).catch(e => {})", server.EMPTY_PAGE);
113105
});
114106
assertTrue(message.text().contains("Access-Control-Allow-Origin"));
115-
assertEquals(ConsoleMessageType.ERROR, message.type());
107+
assertEquals("error", message.type());
116108
}
117109

118110
@Test
@@ -121,7 +113,7 @@ void shouldHaveLocationForConsoleAPICalls() {
121113
ConsoleMessage message = page.waitForConsoleMessage(
122114
new Page.WaitForConsoleMessageOptions().setPredicate(m -> "yellow".equals(m.text())),
123115
() -> page.navigate(server.PREFIX + "/consolelog.html"));
124-
assertEquals(ConsoleMessageType.LOG, message.type());
116+
assertEquals("log", message.type());
125117
// Engines have different column notion.
126118
assertTrue(message.location().startsWith(server.PREFIX + "/consolelog.html:7:"), message.location());
127119
}
@@ -130,12 +122,12 @@ void shouldHaveLocationForConsoleAPICalls() {
130122
void shouldSupportPredicate() {
131123
page.navigate(server.EMPTY_PAGE);
132124
ConsoleMessage message = page.waitForConsoleMessage(
133-
new Page.WaitForConsoleMessageOptions().setPredicate(m -> m.type() == ConsoleMessageType.INFO),
125+
new Page.WaitForConsoleMessageOptions().setPredicate(m -> "info".equals(m.type())),
134126
() -> {
135127
page.evaluate("console.log(1)");
136128
page.evaluate("console.info(2)");
137129
});
138130
assertEquals("2", message.text());
139-
assertEquals(ConsoleMessageType.INFO, message.type());
131+
assertEquals("info", message.type());
140132
}
141133
}

tools/api-generator/src/main/java/com/microsoft/playwright/tools/ApiGenerator.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -596,6 +596,9 @@ void createEnum(JsonObject jsonObject) {
596596
if (newEnum.jsonName == null) {
597597
throw new RuntimeException("Enum without name: " + jsonObject);
598598
}
599+
if ("ConsoleMessageType".equals(newEnum.jsonName)) {
600+
return;
601+
}
599602
Map<String, TypeDefinition> enumMap = topLevelTypes();
600603
TypeDefinition existing = enumMap.putIfAbsent(newEnum.jsonName, newEnum);
601604
if (existing != null && (!(existing instanceof Enum) || !((Enum) existing).hasSameValues(newEnum))) {
@@ -722,6 +725,11 @@ void writeTo(List<String> output, String offset) {
722725
output.add("");
723726
return;
724727
}
728+
if ("ConsoleMessage.type".equals(jsonPath)) {
729+
writeJavadoc(params, output, offset);
730+
output.add(offset + "String type();");
731+
return;
732+
}
725733
int numOverloads = 1;
726734
for (int i = 0; i < params.size(); i++) {
727735
if (params.get(i).type.isTypeUnion()) {
@@ -986,7 +994,7 @@ void writeTo(List<String> output, String offset) {
986994
if (methods.stream().anyMatch(m -> "create".equals(m.jsonName))) {
987995
output.add("import com.microsoft.playwright.impl." + jsonName + "Impl;");
988996
}
989-
if (asList("Page", "Request", "Response", "APIRequestContext", "APIRequest", "APIResponse", "FileChooser", "Frame", "FrameLocator", "ElementHandle", "Locator", "Browser", "BrowserContext", "BrowserType", "Mouse", "Keyboard", "Tracing", "ConsoleMessage").contains(jsonName)) {
997+
if (asList("Page", "Request", "Response", "APIRequestContext", "APIRequest", "APIResponse", "FileChooser", "Frame", "FrameLocator", "ElementHandle", "Locator", "Browser", "BrowserContext", "BrowserType", "Mouse", "Keyboard", "Tracing").contains(jsonName)) {
990998
output.add("import com.microsoft.playwright.options.*;");
991999
}
9921000
if ("Download".equals(jsonName)) {

0 commit comments

Comments
 (0)