DumpRenderTree should report unknown options
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 11 Feb 2019 18:32:42 +0000 (18:32 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 11 Feb 2019 18:32:42 +0000 (18:32 +0000)
https://bugs.webkit.org/show_bug.cgi?id=191303

Patch by Darshan Kadu <dkadu@igalia.com> on 2019-02-11
Reviewed by Frédéric Wang.

Added RELEASE_ASSERT_NOT_REACHED for DumpRenderTree/TestOptions.cpp
to report unknown options.
Added and assigned test options which are currently used in tests.

* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@241269 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/DumpRenderTree/TestOptions.cpp
Tools/DumpRenderTree/TestOptions.h

index 88b9aba..8628851 100644 (file)
@@ -1,3 +1,17 @@
+2019-02-11  Darshan Kadu  <dkadu@igalia.com>
+
+        DumpRenderTree should report unknown options
+        https://bugs.webkit.org/show_bug.cgi?id=191303
+
+        Reviewed by Frédéric Wang.
+
+        Added RELEASE_ASSERT_NOT_REACHED for DumpRenderTree/TestOptions.cpp
+        to report unknown options.
+        Added and assigned test options which are currently used in tests.
+
+        * DumpRenderTree/TestOptions.cpp:
+        (TestOptions::TestOptions):
+
 2019-02-11  Truitt Savell  <tsavell@apple.com>
 
         Unreviewed, rolling out r241229.
index c926612..0dabaed 100644 (file)
@@ -75,7 +75,7 @@ TestOptions::TestOptions(const std::string& pathOrURL, const std::string& absolu
         auto value = pairString.substr(equalsLocation + 1, pairEnd - (equalsLocation + 1));
         if (key == "enableAttachmentElement")
             enableAttachmentElement = parseBooleanTestHeaderValue(value);
-        if (key == "useAcceleratedDrawing")
+        else if (key == "useAcceleratedDrawing")
             useAcceleratedDrawing = parseBooleanTestHeaderValue(value);
         else if (key == "enableIntersectionObserver")
             enableIntersectionObserver = parseBooleanTestHeaderValue(value);
@@ -111,6 +111,52 @@ TestOptions::TestOptions(const std::string& pathOrURL, const std::string& absolu
             enableCSSLogical = parseBooleanTestHeaderValue(value);
         else if (key == "internal:AdClickAttributionEnabled")
             adClickAttributionEnabled = parseBooleanTestHeaderValue(value);
+        else if (key == "applicationManifest")
+            applicationManifest = value;
+        else if (key == "experimental:CSSCustomPropertiesAndValuesEnabled")
+            enableCSSCustomPropertiesAndValues = parseBooleanTestHeaderValue(value);
+        else if (key == "useFlexibleViewport")
+            useFlexibleViewport = parseBooleanTestHeaderValue(value);
+        else if (key == "useThreadedScrolling")
+            useThreadedScrolling  = parseBooleanTestHeaderValue(value);
+        else if (key == "experimental:DarkModeCSSEnabled")
+            enableDarkModeCSS = parseBooleanTestHeaderValue(value);
+        else if (key == "experimental:CSSTypedOMEnabled")
+            enableCSSTypedOM = parseBooleanTestHeaderValue(value);
+        else if (key == "punchOutWhiteBackgrounds")
+            punchOutWhiteBackgrounds = parseBooleanTestHeaderValue(value);
+        else if (key == "enableEditableImages")
+            enableEditableImages = parseBooleanTestHeaderValue(value);
+        else if (key == "useCharacterSelectionGranularity")
+            useCharacterSelectionGranularity = parseBooleanTestHeaderValue(value);
+        else if (key == "spellCheckingDots")
+            spellCheckingDots = parseBooleanTestHeaderValue(value);
+        else if (key == "experimental:CSSPaintingAPIEnabled")
+            enableCSSPaintingAPI = parseBooleanTestHeaderValue(value);
+        else if (key == "experimental:PointerEventsEnabled")
+            enablePointerEvents = parseBooleanTestHeaderValue(value);
+        else if (key =="useMockScrollbars")
+            useMockScrollbars = parseBooleanTestHeaderValue(value);
+        else if (key =="ignoresViewportScaleLimits")
+            ignoresViewportScaleLimits = parseBooleanTestHeaderValue(value);
+        else if (key =="shouldIgnoreMetaViewport")
+            shouldIgnoreMetaViewport = parseBooleanTestHeaderValue(value);
+        else if (key =="enableProcessSwapOnNavigation")
+            enableProcessSwapOnNavigation = parseBooleanTestHeaderValue(value);
+        else if (key =="runSingly")
+            runSingly = parseBooleanTestHeaderValue(value);
+        else if (key =="internal:WebAPIStatisticsEnabled")
+            enableWebAPIStatistics = parseBooleanTestHeaderValue(value);
+        else if (key =="internal:SourceBufferChangeTypeEnabled")
+            enableSourceBufferChangeType = parseBooleanTestHeaderValue(value);
+        else if (key =="needsSiteSpecificQuirks")
+            needsSiteSpecificQuirks = parseBooleanTestHeaderValue(value);
+        else if (key =="modernMediaControls")
+            modernMediaControls = parseBooleanTestHeaderValue(value);
+        else if (key == "experimental:WebGL2Enabled")
+            enableWebGL2 = parseBooleanTestHeaderValue(value);
+        else
+            RELEASE_ASSERT_NOT_REACHED();
         pairStart = pairEnd + 1;
     }
 }
index c27e842..0d45c9f 100644 (file)
@@ -47,6 +47,30 @@ struct TestOptions {
     bool enableCSSLogical { false };
     bool adClickAttributionEnabled { false };
     std::string jscOptions;
+    // FIXME: Implement the following test options,
+    // https://bugs.webkit.org/show_bug.cgi?id=194396
+    bool enableCSSCustomPropertiesAndValues { false };
+    bool useFlexibleViewport { false };
+    bool useThreadedScrolling { true };
+    bool enableDarkModeCSS { true };
+    bool enableCSSTypedOM { false };
+    bool punchOutWhiteBackgrounds { false };
+    bool enableEditableImages { false};
+    bool useCharacterSelectionGranularity { false };
+    bool spellCheckingDots { false };
+    bool enableCSSPaintingAPI { false };
+    bool enablePointerEvents { true };
+    bool useMockScrollbars { false };
+    bool ignoresViewportScaleLimits { true };
+    bool shouldIgnoreMetaViewport { false };
+    bool enableProcessSwapOnNavigation { false };
+    bool runSingly { false };
+    bool enableWebAPIStatistics { false };
+    bool enableSourceBufferChangeType { true };
+    bool needsSiteSpecificQuirks { false };
+    bool modernMediaControls { true };
+    bool enableWebGL2 { false };
+    std::string applicationManifest;
 
     TestOptions(const std::string& pathOrURL, const std::string& absolutePath);
     bool webViewIsCompatibleWithOptions(const TestOptions&) const;