diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2019-12-14 18:07:34 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-12-14 18:07:34 -0500 |
commit | 2a54d41295241c2ad90fb8973985c7cc235ceb13 (patch) | |
tree | 77563fbdb7440e2e27ace35d1ab2688bbde8df85 | |
parent | e8b93d3af3b936ec5280c9cb07a363c69508306a (diff) | |
parent | a4c7e9b00a9324c24be7427d17d22be6dc5b2c3e (diff) | |
download | servo-2a54d41295241c2ad90fb8973985c7cc235ceb13.tar.gz servo-2a54d41295241c2ad90fb8973985c7cc235ceb13.zip |
Auto merge of #25291 - servo-wpt-sync:wpt_update_14-12-2019, r=jdm
Sync WPT with upstream (14-12-2019)
Automated downstream sync of changes from upstream as of 14-12-2019.
[no-wpt-sync]
r? @servo-wpt-sync
76 files changed, 3392 insertions, 6472 deletions
diff --git a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini index 76b398963ae..a9e46713244 100644 --- a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini +++ b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini @@ -7,7 +7,7 @@ expected: FAIL [Opening a blob URL in a new window immediately before revoking it works.] - expected: FAIL + expected: TIMEOUT [Opening a blob URL in a noopener about:blank window immediately before revoking it works.] expected: FAIL diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json index 71444b429b4..6b57417e226 100644 --- a/tests/wpt/metadata/MANIFEST.json +++ b/tests/wpt/metadata/MANIFEST.json @@ -271164,6 +271164,9 @@ "html/cross-origin-embedder-policy/require-corp-about-srcdoc.html.headers": [ [] ], + "html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html.headers": [ + [] + ], "html/cross-origin-embedder-policy/require-corp-sw-from-require-corp.https.html.headers": [ [] ], @@ -271200,6 +271203,9 @@ "html/cross-origin-embedder-policy/resources/script-factory.js": [ [] ], + "html/cross-origin-embedder-policy/resources/sw-store-to-cache-storage.js": [ + [] + ], "html/cross-origin-embedder-policy/resources/sw.js": [ [] ], @@ -275292,6 +275298,9 @@ "html/semantics/embedded-content/the-iframe-element/support/blank.htm": [ [] ], + "html/semantics/embedded-content/the-iframe-element/support/document-with-embedded-svg.html": [ + [] + ], "html/semantics/embedded-content/the-iframe-element/support/download_stash.py": [ [] ], @@ -275424,6 +275433,9 @@ "html/semantics/embedded-content/the-iframe-element/support/standalone-pass.htm": [ [] ], + "html/semantics/embedded-content/the-iframe-element/support/svg.svg": [ + [] + ], "html/semantics/embedded-content/the-img-element/3.jpg": [ [] ], @@ -275712,6 +275724,33 @@ "html/semantics/scripting-1/the-script-element/cacheable-script-throw.py": [ [] ], + "html/semantics/scripting-1/the-script-element/css-module/resources/bad-import.css": [ + [] + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/basic.css": [ + [] + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/css-module-at-import-iframe.html": [ + [] + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/css-module-basic-iframe.html": [ + [] + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/malformed-iframe.html": [ + [] + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/malformed.css": [ + [] + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/utf8.css": [ + [] + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/worker-dynamic-import.js": [ + [] + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/worker.js": [ + [] + ], "html/semantics/scripting-1/the-script-element/defer.js": [ [] ], @@ -313141,6 +313180,12 @@ {} ] ], + "clipboard-apis/async-raw-write-read.tentative.https.html": [ + [ + "clipboard-apis/async-raw-write-read.tentative.https.html", + {} + ] + ], "clipboard-apis/clipboard-events-synthetic.html": [ [ "clipboard-apis/clipboard-events-synthetic.html", @@ -358373,6 +358418,12 @@ {} ] ], + "html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html": [ + [ + "html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html", + {} + ] + ], "html/cross-origin-embedder-policy/none-sw-from-none.https.html": [ [ "html/cross-origin-embedder-policy/none-sw-from-none.https.html", @@ -358405,6 +358456,12 @@ {} ] ], + "html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html": [ + [ + "html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html", + {} + ] + ], "html/cross-origin-embedder-policy/require-corp-sw-from-none.https.html": [ [ "html/cross-origin-embedder-policy/require-corp-sw-from-none.https.html", @@ -363332,6 +363389,18 @@ {} ] ], + "html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js": [ + [ + "html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.html", + {} + ] + ], + "html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js": [ + [ + "html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.html", + {} + ] + ], "html/semantics/embedded-content/the-iframe-element/cross_origin_parentage.sub.html": [ [ "html/semantics/embedded-content/the-iframe-element/cross_origin_parentage.sub.html", @@ -365684,6 +365753,24 @@ {} ] ], + "html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html": [ + [ + "html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html", + {} + ] + ], + "html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html": [ + [ + "html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html", + {} + ] + ], + "html/semantics/scripting-1/the-script-element/css-module/utf8.tentative.html": [ + [ + "html/semantics/scripting-1/the-script-element/css-module/utf8.tentative.html", + {} + ] + ], "html/semantics/scripting-1/the-script-element/data-url.html": [ [ "html/semantics/scripting-1/the-script-element/data-url.html", @@ -461350,19 +461437,19 @@ "support" ], ".github/workflows/detect_pull_request_preview.yml": [ - "d35105d9e3e8841e135bd56e9c387fcba0d86a9a", + "02870d8c7d223a371c09a97b5906610af191a5e4", "support" ], ".github/workflows/documentation.yml": [ - "9352fb81e2c5fbdc64f20c202b386c66795a6083", + "b8bf7972b0f7666f8a01a81b05e8dec432732225", "support" ], ".github/workflows/epochs.yml": [ - "a93a1e8defb4fdeeb9f7740db1cc5c520aa07e5e", + "a605a818c5f390212b5962c270ae0e9e33663b96", "support" ], ".github/workflows/manifest.yml": [ - "e4708873c0d5e415a171ed2598a0b94f22c272b6", + "84983a57e077b7e9e7f34515e4bca01a9cc214a7", "support" ], ".gitignore": [ @@ -472509,6 +472596,10 @@ "706093af61314dc0de57ff8fa5415011c13089ee", "testharness" ], + "clipboard-apis/async-raw-write-read.tentative.https.html": [ + "6cfa2dbcca79f57db3fa57aeaff33c688423ff87", + "testharness" + ], "clipboard-apis/async-write-blobs-read-blobs-manual.https.html": [ "b5f0f3d9dc13d2b67264b3a61b9f0f8be0cd6ecd", "manual" @@ -472522,7 +472613,7 @@ "testharness" ], "clipboard-apis/clipboard-item.https.html": [ - "9218ee299e2b66a3bd7e70b6ac58c6cb26fdfaac", + "fe5e76ccbb4379ed3a29bdea43d56d882b5d041b", "testharness" ], "clipboard-apis/events/copy-event-manual.html": [ @@ -561498,15 +561589,15 @@ "testharness" ], "css/css-color-adjust/parsing/color-scheme-computed.html": [ - "80b9803981f7123d22c637ee9056c04ba3108818", + "a5ad4d534056973883f47c615d50f8dff854ece8", "testharness" ], "css/css-color-adjust/parsing/color-scheme-invalid.html": [ - "48fa4d1d1f3a1f6d172f650e2452bf29921314c7", + "6c7075c3b465d54f4b8fec2fa9160ce8b6c7e323", "testharness" ], "css/css-color-adjust/parsing/color-scheme-valid.html": [ - "2ba01da394ebc63c9b6b87ea53714d1567032f9b", + "5fb481783f0134b3b233ceb17ea4a0897eeee403", "testharness" ], "css/css-color/LICENSE": [ @@ -648461,6 +648552,10 @@ "6604450991a122e3e241e40b1b9e0516c525389d", "support" ], + "html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html": [ + "e0b84568bd3e4e854bf2890c8de27bed0675b406", + "testharness" + ], "html/cross-origin-embedder-policy/none-sw-from-none.https.html": [ "5298347fd9d3f36220c03149d49d9f7ea63615cb", "testharness" @@ -648497,6 +648592,14 @@ "8df98474b589d070992677cb0134bd47bd0509c4", "support" ], + "html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html": [ + "b10b2f0b73cca9ef3f6bea4df03bf60aa2fe4409", + "testharness" + ], + "html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html.headers": [ + "8df98474b589d070992677cb0134bd47bd0509c4", + "support" + ], "html/cross-origin-embedder-policy/require-corp-sw-from-none.https.html": [ "896ea46ff08000dae262187268b7d8f57ccd1573", "testharness" @@ -648510,7 +648613,7 @@ "support" ], "html/cross-origin-embedder-policy/require-corp.https.html": [ - "5f01022338c248b7a053f3b4918a0c3a564008a0", + "446003723a19a1db88569bb3b0bf07540dfb98c8", "testharness" ], "html/cross-origin-embedder-policy/require-corp.https.html.headers": [ @@ -648557,6 +648660,10 @@ "9db755226020479fd87e87f42ea622c999b38f7d", "support" ], + "html/cross-origin-embedder-policy/resources/sw-store-to-cache-storage.js": [ + "00b9e9395a7ec2171b3fee9d75f6ccb1d46ee60f", + "support" + ], "html/cross-origin-embedder-policy/resources/sw.js": [ "57f0b41ba5b5ff6318e1e4913dfd13bdb1f237a4", "support" @@ -658477,6 +658584,14 @@ "b657f26158a9c6526e3c734afb9ce2731e1b3dd4", "testharness" ], + "html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js": [ + "c88158d267f373d35a683b6777241c7c1da66816", + "testharness" + ], + "html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js": [ + "a1e592d8f8951c9d6e820238d55c9e76a1a283ff", + "testharness" + ], "html/semantics/embedded-content/the-iframe-element/cross_origin_child.html": [ "8b44fe805fb6d2408dab8f53c14ea70531104607", "support" @@ -658849,6 +658964,10 @@ "18ecdcb795c33d6ab7bbb43f647947defca5634d", "support" ], + "html/semantics/embedded-content/the-iframe-element/support/document-with-embedded-svg.html": [ + "a81d13d9a8b6386d4584f12648f3a1d42ce74b81", + "support" + ], "html/semantics/embedded-content/the-iframe-element/support/download_stash.py": [ "24e1dfd58f760e1fa99846e0fac063a32a258e58", "support" @@ -659025,6 +659144,10 @@ "9d1b2530fe68308a050b8b92b804176fb72057d6", "support" ], + "html/semantics/embedded-content/the-iframe-element/support/svg.svg": [ + "1570afcadc238042614d35b7f2f4a49e580f5a68", + "support" + ], "html/semantics/embedded-content/the-img-element/3.jpg": [ "d30ac2ac36c66bf735036baa755f836b00fa47a6", "support" @@ -661117,6 +661240,54 @@ "5df883c07be307fb2f6ff6b14354a5bc816ce662", "support" ], + "html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html": [ + "1618f40eb6119c6b9c20047d0463daa2ef27d0f0", + "testharness" + ], + "html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html": [ + "902430d0779e3b9e34f95db1da4d4b96c2b24bbb", + "testharness" + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/bad-import.css": [ + "796446b525ca03bf287e2abbdbbdae593b658bac", + "support" + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/basic.css": [ + "3ea2ef45339c41dc5a39b1f8494fe2d2d4eae0d1", + "support" + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/css-module-at-import-iframe.html": [ + "86e7af7d51db98fd7e22c01954ced16683c4f0e7", + "support" + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/css-module-basic-iframe.html": [ + "3a555c392716c0ee915f1aa65cd5a1dae42f0c52", + "support" + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/malformed-iframe.html": [ + "471edd680cf656661bcc713656aaa23e49386ba7", + "support" + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/malformed.css": [ + "fb20336584e7745c495676c05e605e8d216037a0", + "support" + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/utf8.css": [ + "35d16cd1c5b0d6972ddfa888a2f81cc9a042eb9d", + "support" + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/worker-dynamic-import.js": [ + "9a3b0bb105b3ddc9d4e416ecfc3606c2442ba6ab", + "support" + ], + "html/semantics/scripting-1/the-script-element/css-module/resources/worker.js": [ + "397a12c3b53c60634417a67bef839af9aef07e6e", + "support" + ], + "html/semantics/scripting-1/the-script-element/css-module/utf8.tentative.html": [ + "f71339b4d591853e5abb19b694b880395bfc9f81", + "testharness" + ], "html/semantics/scripting-1/the-script-element/data-url.html": [ "6fad50527177e756db35842e054bf19d6e4dfbe4", "testharness" @@ -666638,11 +666809,11 @@ "support" ], "infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseFirstPoint.html.ini": [ - "b41ec996e2f3097bf6fe89bf351d50764d406447", + "68ccafcec2a1dd55184d234071c809ce1fcc73d8", "support" ], "infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseSecondPoint.html.ini": [ - "ad46c7be498ab7db2e3c65b147ce708d15157843", + "5d714dd77733edd0199535f0f1cb20a46237d6dd", "support" ], "infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsTwoTouchStarts.html.ini": [ @@ -667022,7 +667193,7 @@ "support" ], "interfaces/IndexedDB.idl": [ - "2af9eb2a3245d2229dc5b7505713795405ff0ba9", + "33925d614238d6850c196381df0f60ac14bd4e4f", "support" ], "interfaces/InputDeviceCapabilities.idl": [ @@ -668346,7 +668517,7 @@ "testharness" ], "lint.whitelist": [ - "a1b3f63650cb91393439224b3def6daf4c3775aa", + "d06f4c59bca28d01632cf693062a7d30ecbd5cc8", "support" ], "loading/lazyload/common.js": [ @@ -670094,7 +670265,7 @@ "testharness" ], "media-source/mediasource-getvideoplaybackquality.html": [ - "bce01733391fedb2644be203b83fd2dfd79480ad", + "54b2a5579956f43288a2aba0485037751fdccadf", "testharness" ], "media-source/mediasource-invalid-codec.html": [ @@ -707358,7 +707529,7 @@ "support" ], "tools/ci/run_tc.py": [ - "482de1ad336a1824d2335c9e6d7996063f71a78e", + "f9086a31bd93baf72819fc450f90a290d65674fd", "support" ], "tools/ci/taskcluster-run.py": [ @@ -707386,7 +707557,7 @@ "support" ], "tools/ci/tc/tasks/test.yml": [ - "101d0aa1c16b6ef99ca2ea25790723a1ae9d9cd6", + "e80e794203edca3c8d5f19ea9833a4f79e979f08", "support" ], "tools/ci/tc/testdata/epochs_daily_push_event.json": [ @@ -707414,7 +707585,7 @@ "support" ], "tools/ci/tc/tests/test_valid.py": [ - "05477ed0bd42d7c2ce8aa5fdd6629da0e3e03aa1", + "b170928b290a27f75eada66162ea404a1dbae9f9", "support" ], "tools/ci/tests/test_jobs.py": [ @@ -707502,11 +707673,11 @@ "support" ], "tools/lint/lint.py": [ - "17fb988834a01a1b1cd22394df19b8d335704813", + "a050cfa8a8e4e2699db44ce9e52f8f230a34a869", "support" ], "tools/lint/rules.py": [ - "b3d125f8dd63c04df149cea07681a45e1cc2044a", + "faa285fd7cdbcc406f8c02ab03ed6beb36eb0bef", "support" ], "tools/lint/tests/__init__.py": [ @@ -707690,7 +707861,7 @@ "support" ], "tools/manifest/manifest.py": [ - "a8f571967ab5afbc65fed7a53baee2724d8b375e", + "2ad7fccf48675bdcc7b544747e1d1824a598542f", "support" ], "tools/manifest/sourcefile.py": [ @@ -707714,7 +707885,7 @@ "support" ], "tools/manifest/tests/test_manifest.py": [ - "8e008be091181dda3a08673a38e4faaebfb119c1", + "733cafdcbe9dc9ce07cb3e843bd956d02c6fd2fe", "support" ], "tools/manifest/tests/test_sourcefile.py": [ @@ -712562,7 +712733,7 @@ "support" ], "tools/wptrunner/wptrunner/browsers/servo.py": [ - "bb1f172cd5e69ff17e649f0f12a796919191fb9b", + "5b657993f1900cd34a1460c5bc3a9093fcc7f13c", "support" ], "tools/wptrunner/wptrunner/browsers/servodriver.py": [ @@ -712626,7 +712797,7 @@ "support" ], "tools/wptrunner/wptrunner/executors/executorservo.py": [ - "365a1a08653b0175fc4df4050eb9d9aaf8b1d34c", + "9cef1fb2d7f78e8729e51ff400b3df2402a2e94e", "support" ], "tools/wptrunner/wptrunner/executors/executorservodriver.py": [ @@ -712814,7 +712985,7 @@ "support" ], "tools/wptrunner/wptrunner/tests/test_wpttest.py": [ - "69f22ebcb68b62b6c54f7874f55146b46f94d838", + "9bb3e1fd34e37c4430f752b87e4bb4e3bfa7f959", "support" ], "tools/wptrunner/wptrunner/update/__init__.py": [ @@ -719458,7 +719629,7 @@ "support" ], "webaudio/js/worklet-recorder.js": [ - "3bf3bc23b20764ba54d5ff125699df91fffe741a", + "913ab742aa1bfd77ca3d4ba6c3421ad198be2b17", "support" ], "webaudio/resources/4ch-440.wav": [ @@ -719486,7 +719657,7 @@ "support" ], "webaudio/resources/audit.js": [ - "2aac1fffb492ea46e737257df08a09e65f6d3415", + "fe6fc45b1400ac7526e37a53a54ec3ac52fde528", "support" ], "webaudio/resources/biquad-filters.js": [ @@ -719966,7 +720137,7 @@ "testharness" ], "webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html": [ - "a8a7f5ed1de78b90432641d617e60a1b58dd893f", + "8dafa2f8111a8b522be5540a2fbf4f9a3ee5cd6e", "testharness" ], "webaudio/the-audio-api/the-audioworklet-interface/audioworkletprocessor-options.https.html": [ @@ -727906,7 +728077,7 @@ "testharness" ], "webxr/xrSession_requestReferenceSpace.https.html": [ - "51aa8885f5e853ca4bf225134dee120b71d28011", + "be97396041e17b6d3aa1ae746ea35c3f7b50eb5b", "testharness" ], "webxr/xrSession_requestReferenceSpace_features.https.html": [ @@ -731751,5 +731922,5 @@ ] }, "url_base": "/", - "version": 6 + "version": 7 } diff --git a/tests/wpt/metadata/css/css-animations/keyframes-remove-documentElement-crash.html.ini b/tests/wpt/metadata/css/css-animations/keyframes-remove-documentElement-crash.html.ini new file mode 100644 index 00000000000..1e6c290abb7 --- /dev/null +++ b/tests/wpt/metadata/css/css-animations/keyframes-remove-documentElement-crash.html.ini @@ -0,0 +1,2 @@ +[keyframes-remove-documentElement-crash.html] + expected: TIMEOUT diff --git a/tests/wpt/metadata/css/cssom-view/MediaQueryList-addListener-removeListener.html.ini b/tests/wpt/metadata/css/cssom-view/MediaQueryList-addListener-removeListener.html.ini index 628b1fab770..c884dc82eab 100644 --- a/tests/wpt/metadata/css/cssom-view/MediaQueryList-addListener-removeListener.html.ini +++ b/tests/wpt/metadata/css/cssom-view/MediaQueryList-addListener-removeListener.html.ini @@ -2,3 +2,6 @@ [listeners are called when <iframe> is resized] expected: FAIL + [listeners are called correct number of times] + expected: FAIL + diff --git a/tests/wpt/metadata/css/cssom-view/elementFromPoint-001.html.ini b/tests/wpt/metadata/css/cssom-view/elementFromPoint-001.html.ini deleted file mode 100644 index e38782d8c85..00000000000 --- a/tests/wpt/metadata/css/cssom-view/elementFromPoint-001.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[elementFromPoint-001.html] - [CSSOM View - 5 - extensions to the Document interface] - expected: FAIL - diff --git a/tests/wpt/metadata/fetch/content-type/response.window.js.ini b/tests/wpt/metadata/fetch/content-type/response.window.js.ini index 8b6084afcae..a5264c1cebc 100644 --- a/tests/wpt/metadata/fetch/content-type/response.window.js.ini +++ b/tests/wpt/metadata/fetch/content-type/response.window.js.ini @@ -312,18 +312,21 @@ [<iframe>: separate response Content-Type: text/html */*;charset=gbk] expected: FAIL - [<iframe>: separate response Content-Type: text/html */*] + [<iframe>: combined response Content-Type: text/html;" text/plain] expected: FAIL - [<iframe>: separate response Content-Type: text/html;" \\" text/plain] + [<iframe>: separate response Content-Type: text/plain */*] expected: FAIL - [<iframe>: combined response Content-Type: text/html;x=" text/plain] + [<iframe>: combined response Content-Type: */* text/html] expected: FAIL - [<iframe>: combined response Content-Type: text/html;" text/plain] + [<iframe>: combined response Content-Type: text/html */*] expected: FAIL - [<iframe>: separate response Content-Type: text/plain */*] + [<iframe>: separate response Content-Type: text/html;" text/plain] + expected: FAIL + + [<iframe>: combined response Content-Type: text/html */*;charset=gbk] expected: FAIL diff --git a/tests/wpt/metadata/fetch/content-type/script.window.js.ini b/tests/wpt/metadata/fetch/content-type/script.window.js.ini index d2df9b78483..2d5faa72ac7 100644 --- a/tests/wpt/metadata/fetch/content-type/script.window.js.ini +++ b/tests/wpt/metadata/fetch/content-type/script.window.js.ini @@ -53,6 +53,6 @@ [combined text/javascript ] expected: FAIL - [separate text/javascript x/x] + [separate text/javascript;charset=windows-1252 error text/javascript] expected: FAIL diff --git a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini index 7a0a6c44aad..e1053e48ee8 100644 --- a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini +++ b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini @@ -11,5 +11,8 @@ [X-Content-Type-Options%3A%20nosniff%0C] expected: FAIL - [X-Content-Type-Options%3A%20%2Cnosniff] + [X-Content-Type-Options%3A%20no%0D%0AX-Content-Type-Options%3A%20nosniff] + expected: FAIL + + [Content-Type-Options%3A%20nosniff] expected: FAIL diff --git a/tests/wpt/metadata/fetch/security/embedded-credentials.tentative.sub.html.ini b/tests/wpt/metadata/fetch/security/embedded-credentials.tentative.sub.html.ini index 80ebd73cb00..62068b05a2f 100644 --- a/tests/wpt/metadata/fetch/security/embedded-credentials.tentative.sub.html.ini +++ b/tests/wpt/metadata/fetch/security/embedded-credentials.tentative.sub.html.ini @@ -8,14 +8,8 @@ expected: FAIL [Embedded credentials are treated as network errors in new windows.] - expected: TIMEOUT + expected: FAIL [Embedded credentials matching the top-level are treated as network errors for cross-origin URLs.] expected: TIMEOUT - [Embedded credentials matching the top-level are not treated as network errors for same-origin URLs.] - expected: TIMEOUT - - [Embedded credentials matching the top-level are not treated as network errors for relative URLs.] - expected: TIMEOUT - diff --git a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini new file mode 100644 index 00000000000..87b07c3e670 --- /dev/null +++ b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini @@ -0,0 +1,4 @@ +[traverse_the_history_1.html] + [Multiple history traversals from the same task] + expected: FAIL + diff --git a/tests/wpt/metadata/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html.ini b/tests/wpt/metadata/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html.ini deleted file mode 100644 index 16fa2c5cfc1..00000000000 --- a/tests/wpt/metadata/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[creating_browsing_context_test_01.html] - [first argument: absolute url] - expected: FAIL - diff --git a/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/skip-another-top-level-browsing-context.html.ini b/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/skip-another-top-level-browsing-context.html.ini new file mode 100644 index 00000000000..5105aa291b2 --- /dev/null +++ b/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/skip-another-top-level-browsing-context.html.ini @@ -0,0 +1,5 @@ +[skip-another-top-level-browsing-context.html] + expected: TIMEOUT + [Autofocus elements queued in another top-level browsing context's documents should be skipped.] + expected: TIMEOUT + diff --git a/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini b/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini index 6b68e9094e4..8b743f36e1d 100644 --- a/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini +++ b/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini @@ -1,16 +1,20 @@ [supported-elements.html] + expected: TIMEOUT [Contenteditable element should support autofocus] expected: FAIL [Element with tabindex should support autofocus] - expected: FAIL + expected: TIMEOUT [Host element with delegatesFocus including no focusable descendants should be skipped] - expected: FAIL + expected: NOTRUN [Area element should support autofocus] - expected: FAIL + expected: NOTRUN [Host element with delegatesFocus should support autofocus] - expected: FAIL + expected: NOTRUN + + [Non-HTMLElement should not support autofocus] + expected: NOTRUN diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js.ini new file mode 100644 index 00000000000..75d6edb19b4 --- /dev/null +++ b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js.ini @@ -0,0 +1,4 @@ +[cross-origin-to-whom-part-2.window.html] + [Test embed/frame/iframe/object nested document APIs for same origin-domain and cross origin-domain embedder document] + expected: FAIL + diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js.ini new file mode 100644 index 00000000000..e2c01cc497d --- /dev/null +++ b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js.ini @@ -0,0 +1,4 @@ +[cross-origin-to-whom.window.html] + [Test embed/frame/iframe/object nested document APIs for same origin-domain and cross origin-domain current settings object] + expected: FAIL + diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html.ini index f6a7aca3306..5f60c78e73c 100644 --- a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html.ini +++ b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html.ini @@ -1,5 +1,6 @@ [iframe_sandbox_popups_escaping-3.html] type: testharness + expected: TIMEOUT [Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used] - expected: FAIL + expected: TIMEOUT diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini index e440b1e38c6..dc856a3d5a3 100644 --- a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini +++ b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini @@ -1,6 +1,5 @@ [iframe_sandbox_popups_nonescaping-3.html] type: testharness - expected: TIMEOUT [Check that popups from a sandboxed iframe do not escape the sandbox] - expected: NOTRUN + expected: FAIL diff --git a/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html.ini b/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html.ini new file mode 100644 index 00000000000..7eb1a57cb67 --- /dev/null +++ b/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html.ini @@ -0,0 +1,5 @@ +[css-module-worker-test.html] + expected: TIMEOUT + [A dynamic import CSS Module within a web worker should not load.] + expected: TIMEOUT + diff --git a/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html.ini b/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html.ini new file mode 100644 index 00000000000..301f21b8ba2 --- /dev/null +++ b/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html.ini @@ -0,0 +1,7 @@ +[import-css-module-basic.html] + [An @import CSS Module should not load] + expected: FAIL + + [A CSS Module should load] + expected: FAIL + diff --git a/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/css-module/utf8.tentative.html.ini b/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/css-module/utf8.tentative.html.ini new file mode 100644 index 00000000000..8ee01faecbd --- /dev/null +++ b/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/css-module/utf8.tentative.html.ini @@ -0,0 +1,14 @@ +[utf8.tentative.html] + expected: TIMEOUT + [windows-1252] + expected: NOTRUN + + [utf-7] + expected: NOTRUN + + [shift-jis] + expected: NOTRUN + + [utf-8] + expected: NOTRUN + diff --git a/tests/wpt/metadata/resource-timing/crossorigin-sandwich-TAO.sub.html.ini b/tests/wpt/metadata/resource-timing/crossorigin-sandwich-TAO.sub.html.ini index b4090ef9fe2..1c7ec9ce1db 100644 --- a/tests/wpt/metadata/resource-timing/crossorigin-sandwich-TAO.sub.html.ini +++ b/tests/wpt/metadata/resource-timing/crossorigin-sandwich-TAO.sub.html.ini @@ -1,5 +1,4 @@ [crossorigin-sandwich-TAO.sub.html] - expected: ERROR [There should be one entry.] expected: FAIL diff --git a/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini b/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini index dbd8f7e4603..9b06086f2d2 100644 --- a/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini +++ b/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini @@ -98,3 +98,9 @@ [X SNR (19.538850442082673 dB) is not greater than or equal to 65.737. Got 19.538850442082673.] expected: FAIL + [X SNR (19.49992782894456 dB) is not greater than or equal to 65.737. Got 19.49992782894456.] + expected: FAIL + + [X Stitched sine-wave buffers at sample rate 43800 does not equal [0,0.06264832615852356,0.12505052983760834,0.18696144223213196,0.24813786149024963,0.308339387178421,0.36732959747314453,0.4248766601085663,0.480754554271698,0.5347436666488647,0.5866320133209229,0.6362156271934509,0.6832997798919678,0.7276994585990906,0.7692402601242065,0.8077589869499207...\] with an element-wise tolerance of {"absoluteThreshold":0.0038986,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[30\]\t1.9724091887474060e-1\t9.5236867666244507e-1\t7.5512775778770447e-1\t7.9289436569253091e-1\t3.8985999999999999e-3\n\t[60\]\t-2.2450675070285797e-1\t-5.8084785938262939e-1\t3.5634110867977142e-1\t6.1348441407448528e-1\t3.8985999999999999e-3\n\t[90\]\t-3.7808802723884583e-1\t-5.9811043739318848e-1\t2.2002241015434265e-1\t3.6786251568070089e-1\t3.8985999999999999e-3\n\t[120\]\t7.6881676912307739e-1\t9.4563448429107666e-1\t1.7681771516799927e-1\t1.8698315057805445e-1\t3.8985999999999999e-3\n\t[151\]\t5.4644601186737418e-4\t-4.1306272149085999e-2\t4.1852718160953373e-2\t1.0132291292202573e+0\t3.8985999999999999e-3\n\t...and 1421 more errors.\n\tMax AbsError of 9.8619294445961714e-1 at index of 1178.\n\t[1178\]\t-1.3593670912086964e-2\t-9.9978661537170410e-1\t9.8619294445961714e-1\t9.8640342778840562e-1\t3.8985999999999999e-3\n\tMax RelError of 1.0132291292202573e+0 at index of 151.\n] + expected: FAIL + diff --git a/tests/wpt/metadata/webdriver/tests/execute_script/cyclic.py.ini b/tests/wpt/metadata/webdriver/tests/execute_script/cyclic.py.ini index 3f63d871850..d7071b6bcee 100644 --- a/tests/wpt/metadata/webdriver/tests/execute_script/cyclic.py.ini +++ b/tests/wpt/metadata/webdriver/tests/execute_script/cyclic.py.ini @@ -3,6 +3,5 @@ expected: FAIL [test_element_in_collection] - expected: - if os == "mac": FAIL + expected: FAIL diff --git a/tests/wpt/metadata/webmessaging/with-ports/018.html.ini b/tests/wpt/metadata/webmessaging/with-ports/018.html.ini deleted file mode 100644 index 663a1f8fa30..00000000000 --- a/tests/wpt/metadata/webmessaging/with-ports/018.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[018.html] - expected: TIMEOUT - [origin of the script that invoked the method, javascript:] - expected: TIMEOUT - diff --git a/tests/wpt/metadata/webmessaging/without-ports/018.html.ini b/tests/wpt/metadata/webmessaging/without-ports/018.html.ini deleted file mode 100644 index 663a1f8fa30..00000000000 --- a/tests/wpt/metadata/webmessaging/without-ports/018.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[018.html] - expected: TIMEOUT - [origin of the script that invoked the method, javascript:] - expected: TIMEOUT - diff --git a/tests/wpt/mozilla/meta/MANIFEST.json b/tests/wpt/mozilla/meta/MANIFEST.json index e307cd256f2..b259b7bc24d 100644 --- a/tests/wpt/mozilla/meta/MANIFEST.json +++ b/tests/wpt/mozilla/meta/MANIFEST.json @@ -1,11 +1,5 @@ { "items": { - "conformancechecker": { - "css/blockify_inline_element.html": [] - }, - "manual": { - "css/blockify_inline_element.html": [] - }, "reftest": { "css/abs-overflow-stackingcontext.html": [ [ @@ -7911,7 +7905,6 @@ "css/block_replaced_content_ref.html": [ [] ], - "css/blockify_inline_element.html": [], "css/blockify_inline_element_ref.html": [ [] ], @@ -11148,7 +11141,6 @@ {} ] ], - "css/blockify_inline_element.html": [], "css/bug_1345483.html": [ [ "css/bug_1345483.html", @@ -12600,12 +12592,6 @@ {} ] ] - }, - "visual": { - "css/blockify_inline_element.html": [] - }, - "wdspec": { - "css/blockify_inline_element.html": [] } }, "paths": { @@ -19847,5 +19833,5 @@ ] }, "url_base": "/_mozilla/", - "version": 6 + "version": 7 } diff --git a/tests/wpt/web-platform-tests/.github/workflows/detect_pull_request_preview.yml b/tests/wpt/web-platform-tests/.github/workflows/detect_pull_request_preview.yml index d35105d9e3e..02870d8c7d2 100644 --- a/tests/wpt/web-platform-tests/.github/workflows/detect_pull_request_preview.yml +++ b/tests/wpt/web-platform-tests/.github/workflows/detect_pull_request_preview.yml @@ -1,4 +1,5 @@ name: pr-preview-detect +# This workflow triggers on deployment, which can never happen on a fork. on: deployment jobs: detect-deployment: diff --git a/tests/wpt/web-platform-tests/.github/workflows/documentation.yml b/tests/wpt/web-platform-tests/.github/workflows/documentation.yml index 9352fb81e2c..b8bf7972b0f 100644 --- a/tests/wpt/web-platform-tests/.github/workflows/documentation.yml +++ b/tests/wpt/web-platform-tests/.github/workflows/documentation.yml @@ -21,6 +21,8 @@ jobs: with: fetch-depth: 50 - name: Run website_build.sh + # Use a conditional step instead of a conditional job to work around #20700. + if: github.repository == 'web-platform-tests/wpt' uses: ./tools/docker/documentation env: DEPLOY_TOKEN: ${{ secrets.DEPLOY_TOKEN }} diff --git a/tests/wpt/web-platform-tests/.github/workflows/epochs.yml b/tests/wpt/web-platform-tests/.github/workflows/epochs.yml index a93a1e8defb..a605a818c5f 100644 --- a/tests/wpt/web-platform-tests/.github/workflows/epochs.yml +++ b/tests/wpt/web-platform-tests/.github/workflows/epochs.yml @@ -6,13 +6,13 @@ on: - cron: 10 */3 * * * jobs: update: - # Do not run this job on forks. - if: github.repository == 'web-platform-tests/wpt' runs-on: ubuntu-18.04 steps: - name: Checkout uses: actions/checkout@v1 - name: Run epochs_update.sh + # Use a conditional step instead of a conditional job to work around #20700. + if: github.repository == 'web-platform-tests/wpt' run: ./tools/ci/epochs_update.sh env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/tests/wpt/web-platform-tests/.github/workflows/manifest.yml b/tests/wpt/web-platform-tests/.github/workflows/manifest.yml index e4708873c0d..84983a57e07 100644 --- a/tests/wpt/web-platform-tests/.github/workflows/manifest.yml +++ b/tests/wpt/web-platform-tests/.github/workflows/manifest.yml @@ -8,8 +8,6 @@ on: - 'tools/**' jobs: build-and-tag: - # Do not run this job on forks. - if: github.repository == 'web-platform-tests/wpt' runs-on: ubuntu-18.04 steps: - name: Checkout @@ -21,6 +19,8 @@ jobs: sudo apt-get -qqy install zstd pip install -r tools/wpt/requirements.txt - name: Run manifest_build.py + # Use a conditional step instead of a conditional job to work around #20700. + if: github.repository == 'web-platform-tests/wpt' run: tools/docker/retry.py --delay 60 python tools/ci/manifest_build.py env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/tests/wpt/web-platform-tests/clipboard-apis/async-raw-write-read.tentative.https.html b/tests/wpt/web-platform-tests/clipboard-apis/async-raw-write-read.tentative.https.html new file mode 100644 index 00000000000..6cfa2dbcca7 --- /dev/null +++ b/tests/wpt/web-platform-tests/clipboard-apis/async-raw-write-read.tentative.https.html @@ -0,0 +1,26 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title> Async Clipboard raw write -> Async Clipboard raw read tests </title> +<link rel="help" href="https://w3c.github.io/clipboard-apis/#async-clipboard-api"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +async function readWriteTest(rawInput) { + promise_test(async t => { + const blobInput = new Blob([rawInput], {type: 'chromium/x-test-format'}); + const clipboardItem = new ClipboardItem( + {'chromium/x-test-format': blobInput}, {raw: true}); + + await navigator.clipboard.write([clipboardItem]); + // TODO(https://crbug.com/897289): Implement raw clipboard read. + + }, 'Verify write and read clipboard given arbitrary raw input: ' + rawInput); +} + +readWriteTest('Async Clipboard raw write -> Async Clipboard raw read tests'); +</script> +<p> + Note: This is a manual test because it writes/reads to the shared system + clipboard and thus cannot be run async with other tests that might interact + with the clipboard. +</p> diff --git a/tests/wpt/web-platform-tests/clipboard-apis/clipboard-item.https.html b/tests/wpt/web-platform-tests/clipboard-apis/clipboard-item.https.html index 9218ee299e2..fe5e76ccbb4 100644 --- a/tests/wpt/web-platform-tests/clipboard-apis/clipboard-item.https.html +++ b/tests/wpt/web-platform-tests/clipboard-apis/clipboard-item.https.html @@ -47,6 +47,20 @@ test(() => { assert_equals(types2[1], 'not a/real type'); }, "types() returns correct values"); +test(() => { + const item = new ClipboardItem({'text/plain': blob}); + assert_equals(item.raw, false); + + const item2 = new ClipboardItem({'text/plain': blob}, {}); + assert_equals(item2.raw, false); + + const item3 = new ClipboardItem({'text/plain': blob}, {raw: false}); + assert_equals(item3.raw, false); + + const item4 = new ClipboardItem({'text/plain': blob}, {raw: true}); + assert_equals(item4.raw, true); +}, "raw() returns correct values, defaulting to false"); + promise_test(async () => { const item = new ClipboardItem({'text/plain': blob, 'not a/real type': blob2}); diff --git a/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-computed.html b/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-computed.html index 80b9803981f..a5ad4d53405 100644 --- a/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-computed.html +++ b/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-computed.html @@ -6,7 +6,6 @@ <script src="/css/support/computed-testcommon.js"></script> <div id="target"></div> <script> - test_computed_value("color-scheme", "", "normal"); test_computed_value("color-scheme", "normal"); test_computed_value("color-scheme", "light dark"); test_computed_value("color-scheme", "dark light"); @@ -14,11 +13,10 @@ test_computed_value("color-scheme", "only light"); test_computed_value("color-scheme", "light light"); test_computed_value("color-scheme", "light only"); + test_computed_value("color-scheme", "none"); // reserved and css-wide keywords. test_computed_value("color-scheme", "initial", "normal"); test_computed_value("color-scheme", "inherit", "normal"); test_computed_value("color-scheme", "unset", "normal"); test_computed_value("color-scheme", "revert", "normal"); - test_computed_value("color-scheme", "default", "normal"); - test_computed_value("color-scheme", "none", "normal"); </script> diff --git a/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-invalid.html b/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-invalid.html index 48fa4d1d1f3..6c7075c3b46 100644 --- a/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-invalid.html +++ b/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-invalid.html @@ -5,21 +5,21 @@ <script src="/resources/testharnessreport.js"></script> <script src="/css/support/parsing-testcommon.js"></script> <script> - test_invalid_value("color-scheme", "none"); test_invalid_value("color-scheme", "only"); test_invalid_value("color-scheme", "only only"); test_invalid_value("color-scheme", "only normal"); test_invalid_value("color-scheme", "only light dark"); test_invalid_value("color-scheme", "only light light"); test_invalid_value("color-scheme", "only light purple"); + test_invalid_value("color-scheme", "only none"); test_invalid_value("color-scheme", "normal dark"); test_invalid_value("color-scheme", "normal purple"); test_invalid_value("color-scheme", "light normal"); - test_invalid_value("color-scheme", "light none"); test_invalid_value("color-scheme", "light, dark"); test_invalid_value("color-scheme", "light inherit"); test_invalid_value("color-scheme", "light initial"); test_invalid_value("color-scheme", "light unset"); test_invalid_value("color-scheme", "light revert"); + test_invalid_value("color-scheme", "default"); test_invalid_value("color-scheme", "light default"); </script> diff --git a/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-valid.html b/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-valid.html index 2ba01da394e..5fb481783f0 100644 --- a/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-valid.html +++ b/tests/wpt/web-platform-tests/css/css-color-adjust/parsing/color-scheme-valid.html @@ -16,6 +16,8 @@ test_valid_value("color-scheme", "dark dark"); test_valid_value("color-scheme", "light purple"); test_valid_value("color-scheme", "purple dark interesting"); + test_valid_value("color-scheme", "none"); + test_valid_value("color-scheme", "light none"); test_valid_value("color-scheme", "inherit"); test_valid_value("color-scheme", "initial"); test_valid_value("color-scheme", "unset"); diff --git a/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html new file mode 100644 index 00000000000..e0b84568bd3 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/none-load-from-cache-storage.https.html @@ -0,0 +1,172 @@ +<!doctype html> +<html> +<title> Retrieve resources from CacheStorage with Cross-Origin-Embedder-Policy: require-corp</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/service-workers/service-worker/resources/test-helpers.sub.js"></script> +<script> + +/* + This document does NOT define the Cross-Origin-Embedder-Policy header. + Cross-Origin Embedder Policy Editor's draft: https://mikewest.github.io/corpp/ + + This test is retrieving same-origin and cross-origin resources from the + CacheStorage. The resources are generated from the ServiceWorker or from the + network with the header Cross-Origin-Resource-Policy being one of: + - 'same-origin' + - 'cross-origin' + - <undefined> +*/ + +promise_test(async (t) => { + const SCOPE = new URL(location.href).pathname; + const SCRIPT = + 'resources/sw-store-to-cache-storage.js?' + + `pipe=header(service-worker-allowed,${SCOPE})`; + + const reg = await service_worker_unregister_and_register(t, SCRIPT, SCOPE); + add_completion_callback(() => reg.unregister()); + await new Promise(resolve => { + navigator.serviceWorker.addEventListener('controllerchange', resolve); + }); +}, 'setting up'); + +function remote(path) { + const REMOTE_ORIGIN = get_host_info().HTTPS_REMOTE_ORIGIN; + return new URL(path, REMOTE_ORIGIN); +} + +function local(path) { + return new URL(path, location.origin); +} + +// Send a message to the currently active ServiceWorker and wait for its +// response. +function executeCommandInServiceWorker(command) { + return new Promise(resolve => { + navigator.serviceWorker.addEventListener('message', e => resolve(e.data)); + navigator.serviceWorker.controller.postMessage(command); + }); +} + +// Try loading an image from a |response|. Return a Promise resolving or +// rejecting depending on the image loading result. +function readImageFromResponse(response) { + return new Promise((resolve, reject) => { + const img = document.createElement("img"); + img.onload = resolve.bind(this, ""); + img.onerror = reject.bind(this, {name: "Image.onerror"}); + response.blob().then(blob => { + img.src = URL.createObjectURL(blob); + document.body.appendChild(img); + }) + }) +} + +const image_path = "/images/blue.png?pipe="; + +const corp_header = { + "":"", + "corp-undefined": "", + "corp-same-origin": "|header(Cross-Origin-Resource-Policy,same-origin)", + "corp-cross-origin": "|header(Cross-Origin-Resource-Policy,cross-origin)", +} + +const cors_header = { + "":"", + "cors-disabled": "", + "cors-enabled": "|header(Access-Control-Allow-Origin,*)", +} + +function test( + // Test parameters: + request_source, request_origin, request_mode, response_cors, response_corp, + // Test expectations: + response_stored, response_type) { + promise_test(async (t) => { + // 0. Start from an empty CacheStorage. + await caches.delete("v1"); + + // 1. Make the ServiceWorker to request the ressource and store it into the + // CacheStorage. + const path = image_path + + corp_header[response_corp] + + cors_header[response_cors]; + const url = (request_origin === "same-origin" ? local : remote)(path); + const command = { + url: url.href, + mode: request_mode, + source: request_source, + }; + + assert_equals(await executeCommandInServiceWorker(command), response_stored); + if (response_stored === "not-stored") { + return; + } + + // 2. Make this document to retrieve it from the CacheStorage. + const cache = await caches.open('v1'); + const response = await cache.match(url); + + assert_equals(response.type, response_type); + + if (request_source === "service-worker") { + assert_equals("foo", await response.text()); + return; + } + + // Opaque response are not readable. + if (response_type === "opaque") { + await promise_rejects(t, {name: "Image.onerror"}, readImageFromResponse(response)); + return; + } + + await readImageFromResponse(response); + }, `Fetch ${request_origin} ${request_mode} ${response_cors} ${response_corp} from ${request_source} and CacheStorage.`) +} + +// Responses generated from the ServiceWorker. +{ + test("service-worker", "cross-origin", "cors", "", "", "stored", "default"); + test("service-worker", "cross-origin", "no-cors", "", "", "stored", "default"); + test("service-worker", "same-origin", "cors", "", "", "stored", "default"); + test("service-worker", "same-origin", "no-cors", "", "", "stored", "default"); +} + +// Responses generated from a same-origin server. +{ + const t = test.bind(this, "network", "same-origin"); + t("cors", "cors-disabled", "corp-cross-origin", "stored", "basic"); + t("cors", "cors-disabled", "corp-same-origin", "stored", "basic"); + t("cors", "cors-disabled", "corp-undefined", "stored", "basic"); + t("cors", "cors-enabled", "corp-cross-origin", "stored", "basic"); + t("cors", "cors-enabled", "corp-same-origin", "stored", "basic"); + t("cors", "cors-enabled", "corp-undefined", "stored", "basic"); + t("no-cors", "cors-disabled", "corp-cross-origin", "stored", "basic"); + t("no-cors", "cors-disabled", "corp-same-origin", "stored", "basic"); + t("no-cors", "cors-disabled", "corp-undefined", "stored", "basic"); + t("no-cors", "cors-enabled", "corp-cross-origin", "stored", "basic"); + t("no-cors", "cors-enabled", "corp-same-origin", "stored", "basic"); + t("no-cors", "cors-enabled", "corp-undefined", "stored", "basic"); +} + +// Responses generated from a cross-origin server. +{ + const t = test.bind(this, "network", "cross-origin"); + t("cors", "cors-disabled", "corp-cross-origin", "not-stored"); + t("cors", "cors-disabled", "corp-same-origin", "not-stored"); + t("cors", "cors-disabled", "corp-undefined", "not-stored"); + t("cors", "cors-enabled", "corp-cross-origin", "stored", "cors"); + t("cors", "cors-enabled", "corp-same-origin", "stored", "cors"); + t("cors", "cors-enabled", "corp-undefined", "stored", "cors"); + t("no-cors", "cors-disabled", "corp-cross-origin", "stored", "opaque"); + t("no-cors", "cors-disabled", "corp-same-origin", "not-stored"); + t("no-cors", "cors-disabled", "corp-undefined", "stored", "opaque"); + t("no-cors", "cors-enabled", "corp-cross-origin", "stored", "opaque"); + t("no-cors", "cors-enabled", "corp-same-origin", "not-stored"); + t("no-cors", "cors-enabled", "corp-undefined", "stored", "opaque"); +} + +</script> +</html> diff --git a/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html new file mode 100644 index 00000000000..b10b2f0b73c --- /dev/null +++ b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html @@ -0,0 +1,178 @@ +<!doctype html> +<html> +<title> Retrieve resources from CacheStorage with Cross-Origin-Embedder-Policy: require-corp</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<script src="/service-workers/service-worker/resources/test-helpers.sub.js"></script> +<script> + +/* + This document has the header Cross-Origin-Embedder-Policy: require-corp. + Cross-Origin Embedder Policy Editor's draft: https://mikewest.github.io/corpp/ + + This test is retrieving same-origin and cross-origin resources from the + CacheStorage. The resources are generated from the ServiceWorker or from the + network with the header Cross-Origin-Resource-Policy being one of: + - 'same-origin' + - 'cross-origin' + - <undefined> +*/ + +promise_test(async (t) => { + const SCOPE = new URL(location.href).pathname; + const SCRIPT = + 'resources/sw-store-to-cache-storage.js?' + + `pipe=header(service-worker-allowed,${SCOPE})`; + + const reg = await service_worker_unregister_and_register(t, SCRIPT, SCOPE); + add_completion_callback(() => reg.unregister()); + await new Promise(resolve => { + navigator.serviceWorker.addEventListener('controllerchange', resolve); + }); +}, 'setting up'); + +function remote(path) { + const REMOTE_ORIGIN = get_host_info().HTTPS_REMOTE_ORIGIN; + return new URL(path, REMOTE_ORIGIN); +} + +function local(path) { + return new URL(path, location.origin); +} + +// Send a message to the currently active ServiceWorker and wait for its +// response. +function executeCommandInServiceWorker(command) { + return new Promise(resolve => { + navigator.serviceWorker.addEventListener('message', e => resolve(e.data)); + navigator.serviceWorker.controller.postMessage(command); + }); +} + +// Try loading an image from a |response|. Return a Promise resolving or +// rejecting depending on the image loading result. +function readImageFromResponse(response) { + return new Promise((resolve, reject) => { + const img = document.createElement("img"); + img.onload = resolve.bind(this, ""); + img.onerror = reject.bind(this, {name: "Image.onerror"}); + response.blob().then(blob => { + img.src = URL.createObjectURL(blob); + document.body.appendChild(img); + }) + }) +} + +const image_path = "/images/blue.png?pipe="; + +const corp_header = { + "":"", + "corp-undefined": "", + "corp-same-origin": "|header(Cross-Origin-Resource-Policy,same-origin)", + "corp-cross-origin": "|header(Cross-Origin-Resource-Policy,cross-origin)", +} + +const cors_header = { + "":"", + "cors-disabled": "", + "cors-enabled": "|header(Access-Control-Allow-Origin,*)", +} + +function test( + // Test parameters: + request_source, request_origin, request_mode, response_cors, response_corp, + // Test expectations: + response_stored, response_type) { + promise_test(async (t) => { + // 0. Start from an empty CacheStorage. + await caches.delete("v1"); + + // 1. Store a cross-origin no-cors response generated from the SW into the + // CacheStorage. + const path = image_path + + corp_header[response_corp] + + cors_header[response_cors]; + const url = (request_origin === "same-origin" ? local : remote)(path); + const command = { + url: url.href, + mode: request_mode, + source: request_source, + }; + + assert_equals(await executeCommandInServiceWorker(command), response_stored); + if (response_stored === "not-stored") { + return; + } + + // 2. Retrieve it from the CacheStorage. + const cache = await caches.open('v1'); + + if (response_type === 'error') { + await promise_rejects(t, new TypeError(), cache.match(url)); + return; + } + + const response = await cache.match(url); + + assert_equals(response.type, response_type); + + if (request_source === "service-worker") { + assert_equals("foo", await response.text()); + return; + } + + // Opaque response can't be read from the document. + if (response_type === "opaque") { + await promise_rejects(t, {name: "Image.onerror"}, readImageFromResponse(response)); + return; + } + + await readImageFromResponse(response); + }, `Fetch ${request_origin} ${request_mode} ${response_cors} ${response_corp} from ${request_source} and CacheStorage.`) +} + +// Responses generated from the ServiceWorker. +{ + test("service-worker", "cross-origin", "cors", "", "", "stored", "default"); + test("service-worker", "cross-origin", "no-cors", "", "", "stored", "default"); + test("service-worker", "same-origin", "cors", "", "", "stored", "default"); + test("service-worker", "same-origin", "no-cors", "", "", "stored", "default"); +} + +// Responses generated from a same-origin server. +{ + const t = test.bind(this, "network", "same-origin"); + t("cors", "cors-disabled", "corp-cross-origin", "stored", "basic"); + t("cors", "cors-disabled", "corp-same-origin", "stored", "basic"); + t("cors", "cors-disabled", "corp-undefined", "stored", "basic"); + t("cors", "cors-enabled", "corp-cross-origin", "stored", "basic"); + t("cors", "cors-enabled", "corp-same-origin", "stored", "basic"); + t("cors", "cors-enabled", "corp-undefined", "stored", "basic"); + t("no-cors", "cors-disabled", "corp-cross-origin", "stored", "basic"); + t("no-cors", "cors-disabled", "corp-same-origin", "stored", "basic"); + t("no-cors", "cors-disabled", "corp-undefined", "stored", "basic"); + t("no-cors", "cors-enabled", "corp-cross-origin", "stored", "basic"); + t("no-cors", "cors-enabled", "corp-same-origin", "stored", "basic"); + t("no-cors", "cors-enabled", "corp-undefined", "stored", "basic"); +} + +// Responses generated from a cross-origin server. +{ + const t = test.bind(this, "network", "cross-origin"); + t("cors", "cors-disabled", "corp-cross-origin", "not-stored"); + t("cors", "cors-disabled", "corp-same-origin", "not-stored"); + t("cors", "cors-disabled", "corp-undefined", "not-stored"); + t("cors", "cors-enabled", "corp-cross-origin", "stored", "cors"); + t("cors", "cors-enabled", "corp-same-origin", "stored", "cors"); + t("cors", "cors-enabled", "corp-undefined", "stored", "cors"); + t("no-cors", "cors-disabled", "corp-cross-origin", "stored", "opaque"); + t("no-cors", "cors-disabled", "corp-same-origin", "not-stored"); + t("no-cors", "cors-disabled", "corp-undefined", "stored", "error"); + t("no-cors", "cors-enabled", "corp-cross-origin", "stored", "opaque"); + t("no-cors", "cors-enabled", "corp-same-origin", "not-stored"); + t("no-cors", "cors-enabled", "corp-undefined", "stored", "error"); +} + +</script> +</html> diff --git a/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html.headers b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html.headers new file mode 100644 index 00000000000..8df98474b58 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-load-from-cache-storage.https.html.headers @@ -0,0 +1 @@ +cross-origin-embedder-policy: require-corp diff --git a/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp.https.html b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp.https.html index 5f01022338c..446003723a1 100644 --- a/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp.https.html +++ b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp.https.html @@ -75,7 +75,7 @@ async_test(t => { t.step_timeout(() => { assert_equals(pageLoaded, true); t.done(); - }, 500); + }, 2000); }, `"require-corp" top-level: creating a "none" popup should succeed.`); [ diff --git a/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/resources/sw-store-to-cache-storage.js b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/resources/sw-store-to-cache-storage.js new file mode 100644 index 00000000000..00b9e9395a7 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/resources/sw-store-to-cache-storage.js @@ -0,0 +1,31 @@ +self.addEventListener('activate', (e) => { + e.waitUntil(clients.claim()); +}); + +self.addEventListener('message', (e) => { + e.waitUntil((async () => { + + const url = new URL(e.data.url); + const request = new Request(url, {mode: e.data.mode}); + const cache = await caches.open('v1'); + + let response; + switch(e.data.source) { + case "service-worker": + response = new Response('foo'); + break; + + case "network": + try { + response = await fetch(request); + } catch(error) { + e.source.postMessage('not-stored'); + return; + } + break; + } + + await cache.put(request, response); + e.source.postMessage('stored'); + })()); +}) diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js new file mode 100644 index 00000000000..c88158d267f --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.js @@ -0,0 +1,59 @@ +async_test(t => { + const frame = document.body.appendChild(document.createElement("iframe")); + frame.src = "support/document-with-embedded-svg.html"; + const elements = { + "embed": ["getSVGDocument"], + "frame": ["contentDocument"], + "iframe": ["getSVGDocument", "contentDocument"], + "object": ["getSVGDocument", "contentDocument"] + }; + function element_to_document(element, api) { + return api === "getSVGDocument" ? element[api]() : element[api]; + } + function assert_apis(instance, assertNull = false) { + const name = instance.localName; + let priorPossibleDocument = null; + elements[name].forEach(api => { + const assertReason = `${name}.${api}`; + const possibleDocument = element_to_document(instance, api); + if (assertNull) { + assert_equals(possibleDocument, null, assertReason); + return; + } else { + assert_not_equals(possibleDocument, null, assertReason); + + // This needs standardizing still + // assert_class_string(possibleDocument, "XMLDocument"); + } + + // Ensure getSVGDocument() and contentDocument if both available return the same + if (priorPossibleDocument === null) { + priorPossibleDocument = possibleDocument; + } else { + assert_equals(priorPossibleDocument, possibleDocument); + } + }); + } + frame.onload = t.step_func_done(() => { + const instances = Object.keys(elements).map(element => frame.contentDocument.querySelector(element)); + // Everything is same origin and same origin-domain, no sweat + instances.forEach(instance => assert_apis(instance)); + // Make the SVG cross origin-domain (its container and the current settings object are not + // affected) + instances.forEach(instance => { + const svgDocument = element_to_document(instance, elements[instance.localName][0]); + svgDocument.domain = svgDocument.domain; + }); + instances.forEach(instance => assert_apis(instance, true)); + const svgContainer = frame.contentDocument; + // Make the current settings object same origin-domain with the SVG and cross origin-domain with + // SVG's container (SVG's container is not affected) + document.domain = document.domain; + assert_equals(frame.contentDocument, null); + instances.forEach(instance => assert_apis(instance, true)); + // Make everything same origin-domain once more + svgContainer.domain = svgContainer.domain; + instances.forEach(instance => assert_apis(instance)); + }); + document.body.appendChild(frame); +}, "Test embed/frame/iframe/object nested document APIs for same origin-domain and cross origin-domain embedder document"); diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js new file mode 100644 index 00000000000..a1e592d8f89 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.js @@ -0,0 +1,37 @@ +async_test(t => { + const frame = document.body.appendChild(document.createElement("iframe")); + frame.src = "support/document-with-embedded-svg.html"; + const elements = { + "embed": ["getSVGDocument"], + "frame": ["contentDocument"], + "iframe": ["getSVGDocument", "contentDocument"], + "object": ["getSVGDocument", "contentDocument"] + }; + function assert_apis(instance) { + const name = instance.localName; + let priorPossibleDocument = null; + elements[name].forEach(api => { + const possibleDocument = api == "getSVGDocument" ? instance[api]() : instance[api]; + assert_not_equals(possibleDocument, null, `${name}.${api}`); + // This needs standardizing still + // assert_class_string(possibleDocument, "XMLDocument"); + + // Ensure getSVGDocument() and contentDocument if both available return the same + if (priorPossibleDocument === null) { + priorPossibleDocument = possibleDocument; + } else { + assert_equals(priorPossibleDocument, possibleDocument); + } + }); + } + frame.onload = t.step_func_done(() => { + const instances = Object.keys(elements).map(element => frame.contentDocument.querySelector(element)); + // Everything is same origin and same origin-domain, no sweat + instances.forEach(instance => assert_apis(instance)); + // Make the current settings object cross origin-domain (SVG and its container are not affected) + document.domain = document.domain; + assert_equals(frame.contentDocument, null); + instances.forEach(instance => assert_apis(instance)); + }); + document.body.appendChild(frame); +}, "Test embed/frame/iframe/object nested document APIs for same origin-domain and cross origin-domain current settings object"); diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/document-with-embedded-svg.html b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/document-with-embedded-svg.html new file mode 100644 index 00000000000..a81d13d9a8b --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/document-with-embedded-svg.html @@ -0,0 +1,9 @@ +<!doctype html> +<body> +<script> +["embed", "frame", "iframe", "object"].forEach(name => { + const frame = document.body.appendChild(document.createElement(name)); + const attr = name !== "object" ? "src" : "data"; + frame[attr] = "svg.svg"; +}); +</script> diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/svg.svg b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/svg.svg new file mode 100644 index 00000000000..1570afcadc2 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/svg.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg"><rect height="100" width="100"/></svg> diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html new file mode 100644 index 00000000000..1618f40eb61 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html @@ -0,0 +1,37 @@ +<!doctype html> + +<head> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> +</head> + +<body> + <script> + setup({allow_uncaught_exception: true}); + async_test(function (test) { + const worker = new Worker("./resources/worker.js", { + type: "module" + }); + worker.onmessage = test.unreached_func("A CSS Module within a web worker should not load."); + worker.onerror = test.step_func_done(); + }, "A static import CSS Module within a web worker should not load."); + + async_test(function (test) { + const worker = new Worker("./resources/worker-dynamic-import.js", { + type: "module" + }); + worker.onmessage = test.step_func_done(e => { + assert_equals(e.data, "NOT LOADED"); + }); + }, "A dynamic import CSS Module within a web worker should not load."); + + async_test(function (test) { + const worker = new Worker("./resources/basic.css", { + type: "module" + }); + worker.onerror = test.step_func_done(); + }, "A CSS Module within a web worker should not load."); + + </script> + +</body>
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html new file mode 100644 index 00000000000..902430d0779 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html @@ -0,0 +1,44 @@ +<!doctype html> + +<head> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> +</head> + +<body> + <script> + async_test(function (test) { + const iframe = document.createElement("iframe"); + iframe.src = "resources/css-module-basic-iframe.html"; + iframe.onload = test.step_func_done(function () { + assert_equals(getComputedStyle(iframe.contentDocument.querySelector('#test')) + .backgroundColor, "rgb(255, 0, 0)", + "CSS module import should succeed"); + }); + document.body.appendChild(iframe); + }, "A CSS Module should load"); + + async_test(function (test) { + const iframe = document.createElement("iframe"); + iframe.src = "resources/css-module-at-import-iframe.html"; + iframe.onload = test.step_func_done(function () { + assert_equals(iframe.contentDocument.load_error, "NotAllowedError"); + assert_not_equals(getComputedStyle(iframe.contentDocument.querySelector('#test')) + .backgroundColor, "rgb(255, 0, 0)", + "CSS module @import should not succeed"); + }); + document.body.appendChild(iframe); + }, "An @import CSS Module should not load"); + + async_test(function (test) { + const iframe = document.createElement("iframe"); + iframe.src = "resources/malformed-iframe.html"; + iframe.onload = test.step_func_done(function () { + assert_not_equals(getComputedStyle(iframe.contentDocument.querySelector('#test')) + .backgroundColor, "rgb(255, 0, 0)", + "Malformed CSS should not load"); + }); + document.body.appendChild(iframe); + }, "Malformed CSS should not load"); + </script> +</body>
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/bad-import.css b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/bad-import.css new file mode 100644 index 00000000000..796446b525c --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/bad-import.css @@ -0,0 +1 @@ +@import "basic.css"
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/basic.css b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/basic.css new file mode 100644 index 00000000000..3ea2ef45339 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/basic.css @@ -0,0 +1,3 @@ +#test { + background-color:red; +}
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/css-module-at-import-iframe.html b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/css-module-at-import-iframe.html new file mode 100644 index 00000000000..86e7af7d51d --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/css-module-at-import-iframe.html @@ -0,0 +1,18 @@ +<!DOCTYPE html> +<body> + <script> + window.onerror = function (errorMsg, url, lineNumber, column, errorObj) + { + document.load_error = errorObj.name; + return true; + }; + </script> + <script type="module"> + import v from "./bad-import.css"; + document.adoptedStyleSheets = [v]; + </script> + + <div id="test"> + I am a test div. + </div> +</body>
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/css-module-basic-iframe.html b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/css-module-basic-iframe.html new file mode 100644 index 00000000000..3a555c39271 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/css-module-basic-iframe.html @@ -0,0 +1,18 @@ +<!DOCTYPE html> +<body> + <script> + window.onerror = function (errorMsg, url, lineNumber, column, errorObj) + { + document.load_error = errorObj.name; + return true; + }; + </script> + <script type="module"> + import v from "./basic.css"; + document.adoptedStyleSheets = [v]; + </script> + + <div id="test"> + I am a test div. + </div> +</body>
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/malformed-iframe.html b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/malformed-iframe.html new file mode 100644 index 00000000000..471edd680cf --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/malformed-iframe.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<body> + <script type="module"> + import v from "./malformed.css"; + document.adoptedStyleSheets = [v]; + </script> + + <div id="test"> + I am a test div. + </div> +</body>
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/malformed.css b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/malformed.css new file mode 100644 index 00000000000..fb20336584e --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/malformed.css @@ -0,0 +1,3 @@ +#test {{ + background-color:red; +}
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/utf8.css b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/utf8.css new file mode 100644 index 00000000000..35d16cd1c5b --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/utf8.css @@ -0,0 +1,3 @@ +#test { + content: "…"; +}
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/worker-dynamic-import.js b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/worker-dynamic-import.js new file mode 100644 index 00000000000..9a3b0bb105b --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/worker-dynamic-import.js @@ -0,0 +1,3 @@ +import("./basic.css") + .then(() => postMessage("LOADED")) + .catch(e => postMessage("NOT LOADED"));
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/worker.js b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/worker.js new file mode 100644 index 00000000000..397a12c3b53 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/resources/worker.js @@ -0,0 +1,2 @@ +import "./basic.css"; +postMessage("Unexpectedly loaded");
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/utf8.tentative.html b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/utf8.tentative.html new file mode 100644 index 00000000000..f71339b4d59 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/utf8.tentative.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>CSS modules: UTF-8 decoding</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +function check(t, v) { + t.step(() => { + assert_equals(typeof v, "object"); + assert_equals(v.rules[0].style.content, "\"…\""); + t.done(); + }); +} +const t1 = async_test("utf-8"); +const t2 = async_test("shift-jis"); +const t3 = async_test("windows-1252"); +const t4 = async_test("utf-7"); +</script> +<script type="module" onerror="t1.step(() => assert_unreached(event))"> +import v from "../serve-with-content-type.py?fn=css-module/resources/utf8.css&ct=text/css%3Bcharset=utf-8"; +check(t1, v); +</script> +<script type="module" onerror="t2.step(() => assert_unreached(event))"> +import v from "../serve-with-content-type.py?fn=css-module/resources/utf8.css&ct=text/css%3Bcharset=shift-jis"; +check(t2, v); +</script> +<script type="module" onerror="t3.step(() => assert_unreached(event))"> +import v from "../serve-with-content-type.py?fn=css-module/resources/utf8.css&ct=text/css%3Bcharset=windows-1252"; +check(t3, v); +</script> +<script type="module" onerror="t4.step(() => assert_unreached(event))"> +import v from "../serve-with-content-type.py?fn=css-module/resources/utf8.css&ct=text/css%3Bcharset=utf-7"; +check(t4, v); +</script> diff --git a/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseFirstPoint.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseFirstPoint.html.ini index b41ec996e2f..68ccafcec2a 100644 --- a/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseFirstPoint.html.ini +++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseFirstPoint.html.ini @@ -1,6 +1,3 @@ [multiTouchPointsReleaseFirstPoint.html] expected: if product == "firefox" or product == "safari": ERROR - [TestDriver actions: two touch points with one moving one pause] - expected: - if product == "chrome": FAIL diff --git a/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseSecondPoint.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseSecondPoint.html.ini index ad46c7be498..5d714dd7773 100644 --- a/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseSecondPoint.html.ini +++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsReleaseSecondPoint.html.ini @@ -1,6 +1,3 @@ [multiTouchPointsReleaseSecondPoint.html] expected: if product == "firefox" or product == "safari": ERROR - [TestDriver actions: two touch points with one moving one pause] - expected: - if product == "chrome": FAIL diff --git a/tests/wpt/web-platform-tests/interfaces/IndexedDB.idl b/tests/wpt/web-platform-tests/interfaces/IndexedDB.idl index 2af9eb2a324..33925d61423 100644 --- a/tests/wpt/web-platform-tests/interfaces/IndexedDB.idl +++ b/tests/wpt/web-platform-tests/interfaces/IndexedDB.idl @@ -199,7 +199,7 @@ interface IDBTransaction : EventTarget { readonly attribute DOMStringList objectStoreNames; readonly attribute IDBTransactionMode mode; [SameObject] readonly attribute IDBDatabase db; - readonly attribute DOMException error; + readonly attribute DOMException? error; IDBObjectStore objectStore(DOMString name); void commit(); diff --git a/tests/wpt/web-platform-tests/lint.whitelist b/tests/wpt/web-platform-tests/lint.whitelist index a1b3f63650c..d06f4c59bca 100644 --- a/tests/wpt/web-platform-tests/lint.whitelist +++ b/tests/wpt/web-platform-tests/lint.whitelist @@ -711,3 +711,42 @@ AHEM SYSTEM FONT: resource-timing/resources/iframe-reload-TAO.sub.html AHEM SYSTEM FONT: infrastructure/assumptions/ahem-ref.html AHEM SYSTEM FONT: infrastructure/assumptions/ahem.html +# Existing crashtests using testharness +TESTHARNESS-IN-OTHER-TYPE: 2dcontext/wide-gamut-canvas/imagedata-no-color-settings-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/CSS2/floats-clear/adjoining-float-new-fc-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/CSS2/floats/floats-saturated-position-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/CSS2/linebox/video-needs-layout-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-animations/keyframes-remove-documentElement-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-break/break-before-with-no-fragmentation-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-multicol/abspos-in-multicol-with-spanner-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-multicol/extremely-tall-multicol-with-extremely-tall-child-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-multicol/with-custom-layout-on-same-element-crash.https.html +TESTHARNESS-IN-OTHER-TYPE: css/css-overflow/outline-with-opacity-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-overflow/shrink-to-fit-auto-overflow-relayout-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-position/position-absolute-in-inline-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-pseudo/first-letter-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-pseudo/first-line-first-letter-insert-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-tables/visibility-collapse-colspan-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-tables/visibility-collapse-rowspan-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-text/overflow-wrap/overflow-wrap-break-word-long-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-text/overflow-wrap/overflow-wrap-break-word-white-space-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-text/text-indent/text-indent-long-line-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-text/white-space/nowrap-wbr-and-space-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-text/white-space/pre-line-br-with-whitespace-child-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-text/white-space/pre-with-whitespace-crash.html +TESTHARNESS-IN-OTHER-TYPE: css/css-writing-modes/bidi-inline-fragment-crash.html +TESTHARNESS-IN-OTHER-TYPE: dom/svg-insert-crash.html +TESTHARNESS-IN-OTHER-TYPE: editing/run/first-letter-crossing-engine-boundary-crash.html +TESTHARNESS-IN-OTHER-TYPE: html/semantics/embedded-content/the-object-element/block-object-with-ruby-crash.html +TESTHARNESS-IN-OTHER-TYPE: html/semantics/forms/the-input-element/time-datalist-crash.html +TESTHARNESS-IN-OTHER-TYPE: html/semantics/forms/the-input-element/type-change-file-to-text-crash.html +TESTHARNESS-IN-OTHER-TYPE: html/semantics/interactive-elements/the-details-element/display-table-with-rt-crash.html +TESTHARNESS-IN-OTHER-TYPE: html/semantics/interactive-elements/the-summary-element/display-table-with-rt-crash.html +TESTHARNESS-IN-OTHER-TYPE: html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html +TESTHARNESS-IN-OTHER-TYPE: portals/portals-no-frame-crash.html +TESTHARNESS-IN-OTHER-TYPE: quirks/table-replaced-descendant-percentage-height-crash.html +TESTHARNESS-IN-OTHER-TYPE: svg/extensibility/foreignObject/foreign-object-circular-filter-reference-crash.html +TESTHARNESS-IN-OTHER-TYPE: svg/extensibility/foreignObject/foreign-object-under-clip-path-crash.html +TESTHARNESS-IN-OTHER-TYPE: svg/extensibility/foreignObject/foreign-object-under-defs-crash.html +TESTHARNESS-IN-OTHER-TYPE: svg/svg-in-svg/svg-in-svg-circular-filter-reference-crash.html diff --git a/tests/wpt/web-platform-tests/media-source/mediasource-getvideoplaybackquality.html b/tests/wpt/web-platform-tests/media-source/mediasource-getvideoplaybackquality.html index bce01733391..54b2a557995 100644 --- a/tests/wpt/web-platform-tests/media-source/mediasource-getvideoplaybackquality.html +++ b/tests/wpt/web-platform-tests/media-source/mediasource-getvideoplaybackquality.html @@ -40,12 +40,6 @@ assert_less_than_equal(newQuality.droppedVideoFrames, newQuality.totalVideoFrames, "droppedVideoFrames is only a portion of totalVideoFrames"); - assert_greater_than_equal(newQuality.corruptedVideoFrames, 0, "corruptedVideoFrames >= 0"); - assert_greater_than_equal(newQuality.corruptedVideoFrames, previousQuality.corruptedVideoFrames, - "corruptedVideoFrames increases monotonically"); - assert_less_than_equal(newQuality.corruptedVideoFrames, newQuality.totalVideoFrames, - "corruptedVideoFrames is only a portion of totalVideoFrames"); - previousQuality = newQuality; timeUpdateCount++; })); diff --git a/tests/wpt/web-platform-tests/tools/ci/run_tc.py b/tests/wpt/web-platform-tests/tools/ci/run_tc.py index 482de1ad336..f9086a31bd9 100755 --- a/tests/wpt/web-platform-tests/tools/ci/run_tc.py +++ b/tests/wpt/web-platform-tests/tools/ci/run_tc.py @@ -300,11 +300,12 @@ def setup_repository(args): if task_head != expected_head: if not is_pr: try: - run(["git", "fetch", "origin", "%s:task_head" % expected_head]) + run(["git", "fetch", "origin", expected_head]) + run(["git", "reset", "--hard", expected_head]) except subprocess.CalledProcessError: print("CRITICAL: task_head points at %s, expected %s and " "unable to fetch expected commit.\n" - "This may be because the branch was updated" % (task_head, args.rev)) + "This may be because the branch was updated" % (task_head, expected_head)) sys.exit(1) else: # Convert the refs/pulls/<id>/merge to refs/pulls/<id>/head @@ -317,7 +318,7 @@ def setup_repository(args): sys.exit(1) if remote_head != args.head_rev: print("CRITICAL: task_head points at %s, expected %s. " - "This may be because the branch was updated" % (task_head, args.rev)) + "This may be because the branch was updated" % (task_head, expected_head)) sys.exit(1) print("INFO: Merge commit changed from %s to %s due to base branch changes. " "Running task anyway." % (expected_head, task_head)) diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml b/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml index 101d0aa1c16..e80e794203e 100644 --- a/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml +++ b/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml @@ -177,8 +177,8 @@ tasks: browser: servo channel: nightly use: + - trigger-daily - trigger-push - do: - ${vars.browser}-${vars.channel}-${vars.suite}: use: diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py index 05477ed0bd4..b170928b290 100644 --- a/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py +++ b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py @@ -214,7 +214,30 @@ def test_verify_payload(): 'wpt-webkitgtk_minibrowser-nightly-testharness-8', 'wpt-webkitgtk_minibrowser-nightly-testharness-9', 'wpt-webkitgtk_minibrowser-nightly-wdspec-1', - 'wpt-webkitgtk_minibrowser-nightly-crashtest-1'}) + 'wpt-webkitgtk_minibrowser-nightly-crashtest-1', + 'wpt-servo-nightly-reftest-1', + 'wpt-servo-nightly-reftest-2', + 'wpt-servo-nightly-reftest-3', + 'wpt-servo-nightly-reftest-4', + 'wpt-servo-nightly-reftest-5', + 'wpt-servo-nightly-testharness-1', + 'wpt-servo-nightly-testharness-10', + 'wpt-servo-nightly-testharness-11', + 'wpt-servo-nightly-testharness-12', + 'wpt-servo-nightly-testharness-13', + 'wpt-servo-nightly-testharness-14', + 'wpt-servo-nightly-testharness-15', + 'wpt-servo-nightly-testharness-16', + 'wpt-servo-nightly-testharness-2', + 'wpt-servo-nightly-testharness-3', + 'wpt-servo-nightly-testharness-4', + 'wpt-servo-nightly-testharness-5', + 'wpt-servo-nightly-testharness-6', + 'wpt-servo-nightly-testharness-7', + 'wpt-servo-nightly-testharness-8', + 'wpt-servo-nightly-testharness-9', + 'wpt-servo-nightly-wdspec-1', + 'wpt-servo-nightly-crashtest-1',}) ]) def test_schedule_tasks(event_path, is_pr, files_changed, expected): with mock.patch("tools.ci.tc.decision.get_fetch_rev", return_value=(None, None, None)): diff --git a/tests/wpt/web-platform-tests/tools/lint/lint.py b/tests/wpt/web-platform-tests/tools/lint/lint.py index 17fb988834a..a050cfa8a8e 100644 --- a/tests/wpt/web-platform-tests/tools/lint/lint.py +++ b/tests/wpt/web-platform-tests/tools/lint/lint.py @@ -392,6 +392,7 @@ regexps = [item() for item in # type: ignore rules.MissingDepsRegexp, rules.SpecialPowersRegexp]] + def check_regexp_line(repo_root, path, f): # type: (str, str, IO[bytes]) -> List[rules.Error] errors = [] # type: List[rules.Error] @@ -405,6 +406,7 @@ def check_regexp_line(repo_root, path, f): return errors + def check_parsed(repo_root, path, f): # type: (str, str, IO[bytes]) -> List[rules.Error] source_file = SourceFile(repo_root, path, "/", contents=f.read()) @@ -474,6 +476,9 @@ def check_parsed(repo_root, path, f): errors.append(rules.InvalidTimeout.error(path, (timeout_value,))) if source_file.testharness_nodes: + test_type = source_file.manifest_items()[0] + if test_type not in ("testharness", "manual"): + errors.append(rules.TestharnessInOtherType.error(path, (test_type,))) if len(source_file.testharness_nodes) > 1: errors.append(rules.MultipleTestharness.error(path)) diff --git a/tests/wpt/web-platform-tests/tools/lint/rules.py b/tests/wpt/web-platform-tests/tools/lint/rules.py index b3d125f8dd6..faa285fd7cd 100644 --- a/tests/wpt/web-platform-tests/tools/lint/rules.py +++ b/tests/wpt/web-platform-tests/tools/lint/rules.py @@ -317,6 +317,11 @@ class BrokenMetadata(Rule): description = "Metadata comment is not formatted correctly" +class TestharnessInOtherType(Rule): + name = "TESTHARNESS-IN-OTHER-TYPE" + description = "testharness.js included in a %s test" + + class Regexp(six.with_metaclass(abc.ABCMeta)): @abc.abstractproperty def pattern(self): @@ -355,6 +360,7 @@ class TabsRegexp(Regexp): description = "Test-file line starts with one or more tab characters" to_fix = "use spaces to replace any tab characters at beginning of lines" + class CRRegexp(Regexp): pattern = b"\r$" name = "CR AT EOL" @@ -364,6 +370,7 @@ class CRRegexp(Regexp): cross-platform "Unix" line endings instead of, e.g., DOS line endings). """ + class SetTimeoutRegexp(Regexp): pattern = br"setTimeout\s*\(" name = "SET TIMEOUT" @@ -373,6 +380,7 @@ class SetTimeoutRegexp(Regexp): replace all `setTimeout(...)` calls with `step_timeout(...)` calls """ + class W3CTestOrgRegexp(Regexp): pattern = br"w3c\-test\.org" name = "W3C-TEST.ORG" @@ -382,16 +390,19 @@ class W3CTestOrgRegexp(Regexp): `{{host}}:{{ports[http][0]}}` or a generic hostname like `example.org` """ + class WebPlatformTestRegexp(Regexp): pattern = br"web\-platform\.test" name = "WEB-PLATFORM.TEST" description = "Internal web-platform.test domain used" + class Webidl2Regexp(Regexp): pattern = br"webidl2\.js" name = "WEBIDL2.JS" description = "Legacy webidl2.js script used" + class ConsoleRegexp(Regexp): pattern = br"console\.[a-zA-Z]+\s*\(" name = "CONSOLE" @@ -402,6 +413,7 @@ class ConsoleRegexp(Regexp): `assert_*` of some kind in place of it) """ + class GenerateTestsRegexp(Regexp): pattern = br"generate_tests\s*\(" name = "GENERATE_TESTS" @@ -409,6 +421,7 @@ class GenerateTestsRegexp(Regexp): description = "Test file line has a generate_tests call" to_fix = "remove the call and call `test()` a number of times instead" + class PrintRegexp(Regexp): pattern = br"print(?:\s|\s*\()" name = "PRINT STATEMENT" @@ -421,12 +434,14 @@ class PrintRegexp(Regexp): achieves the intended effect (e.g., a logging call) """ + class LayoutTestsRegexp(Regexp): pattern = br"(eventSender|testRunner|internals)\." name = "LAYOUTTESTS APIS" file_extensions = [".html", ".htm", ".js", ".xht", ".xhtml", ".svg"] description = "eventSender/testRunner/internals used; these are LayoutTests-specific APIs (WebKit/Blink)" + class MissingDepsRegexp(Regexp): pattern = br"[^\w]/gen/" name = "MISSING DEPENDENCY" @@ -434,12 +449,14 @@ class MissingDepsRegexp(Regexp): description = "Chromium-specific content referenced" to_fix = "Reimplement the test to use well-documented testing interfaces" + class SpecialPowersRegexp(Regexp): pattern = b"SpecialPowers" name = "SPECIALPOWERS API" file_extensions = [".html", ".htm", ".js", ".xht", ".xhtml", ".svg"] description = "SpecialPowers used; this is gecko-specific and not supported in wpt" + class TrailingWhitespaceRegexp(Regexp): name = "TRAILING WHITESPACE" description = "Whitespace at EOL" diff --git a/tests/wpt/web-platform-tests/tools/manifest/manifest.py b/tests/wpt/web-platform-tests/tools/manifest/manifest.py index a8f571967ab..2ad7fccf486 100644 --- a/tests/wpt/web-platform-tests/tools/manifest/manifest.py +++ b/tests/wpt/web-platform-tests/tools/manifest/manifest.py @@ -36,7 +36,7 @@ try: except ImportError: fast_json = json # type: ignore -CURRENT_VERSION = 6 +CURRENT_VERSION = 7 class ManifestError(Exception): @@ -471,14 +471,6 @@ class Manifest(object): self._path_hash = {to_os_path(k): v for k, v in iteritems(obj["paths"])} for test_type, type_paths in iteritems(obj["items"]): - # Drop "stub" items, which are no longer supported but may be - # present when doing an incremental manifest update. - # See https://github.com/web-platform-tests/rfcs/pull/27 for background. - # - # TODO(MANIFESTv7): remove this condition - if test_type == "stub": - continue - if test_type not in item_classes: raise ManifestError diff --git a/tests/wpt/web-platform-tests/tools/manifest/tests/test_manifest.py b/tests/wpt/web-platform-tests/tools/manifest/tests/test_manifest.py index 8e008be0911..733cafdcbe9 100644 --- a/tests/wpt/web-platform-tests/tools/manifest/tests/test_manifest.py +++ b/tests/wpt/web-platform-tests/tools/manifest/tests/test_manifest.py @@ -115,7 +115,7 @@ def test_manifest_to_json_forwardslash(): 'paths': { 'a/b': ('0000000000000000000000000000000000000000', 'testharness') }, - 'version': 6, + 'version': 7, 'url_base': '/', 'items': { 'testharness': { @@ -137,7 +137,7 @@ def test_manifest_to_json_backslash(): 'paths': { 'a/b': ('0000000000000000000000000000000000000000', 'testharness') }, - 'version': 6, + 'version': 7, 'url_base': '/', 'items': { 'testharness': { @@ -152,7 +152,7 @@ def test_manifest_from_json_backslash(): 'paths': { 'a\\b': ('0000000000000000000000000000000000000000', 'testharness') }, - 'version': 6, + 'version': 7, 'url_base': '/', 'items': { 'testharness': { @@ -398,5 +398,5 @@ def test_update_from_json_modified(): 'paths': {'test1': ('1111111111111111111111111111111111111111', 'testharness')}, 'url_base': '/', - 'version': 6 + 'version': 7 } diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/servo.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/servo.py index bb1f172cd5e..5b657993f19 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/servo.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/servo.py @@ -3,7 +3,10 @@ import os from .base import NullBrowser, ExecutorBrowser, require_arg from .base import get_timeout_multiplier # noqa: F401 from ..executors import executor_kwargs as base_executor_kwargs -from ..executors.executorservo import ServoTestharnessExecutor, ServoRefTestExecutor, ServoWdspecExecutor # noqa: F401 +from ..executors.executorservo import (ServoCrashtestExecutor, # noqa: F401 + ServoTestharnessExecutor, # noqa: F401 + ServoRefTestExecutor, # noqa: F401 + ServoWdspecExecutor) # noqa: F401 here = os.path.join(os.path.split(__file__)[0]) @@ -12,6 +15,7 @@ __wptrunner__ = { "check_args": "check_args", "browser": "ServoBrowser", "executor": { + "crashtest": "ServoCrashtestExecutor", "testharness": "ServoTestharnessExecutor", "reftest": "ServoRefTestExecutor", "wdspec": "ServoWdspecExecutor", diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py index 365a1a08653..9cef1fb2d7f 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py @@ -5,6 +5,7 @@ import os import subprocess import tempfile import threading +import traceback import uuid from mozprocess import ProcessHandler @@ -13,8 +14,10 @@ from tools.serve.serve import make_hosts_file from .base import (ConnectionlessProtocol, RefTestImplementation, + crashtest_result_converter, testharness_result_converter, reftest_result_converter, + TimedRunner, WdspecExecutor, WebDriverProtocol) from .process import ProcessTestExecutor @@ -32,6 +35,30 @@ def write_hosts_file(config): return hosts_path +def build_servo_command(test, test_url_func, browser, binary, pause_after_test, debug_info, + extra_args=None, debug_opts="replace-surrogates"): + args = [ + "--hard-fail", "-u", "Servo/wptrunner", + "-z", test_url_func(test), + ] + if debug_opts: + args += ["-Z", debug_opts] + for stylesheet in browser.user_stylesheets: + args += ["--user-stylesheet", stylesheet] + for pref, value in test.environment.get('prefs', {}).iteritems(): + args += ["--pref", "%s=%s" % (pref, value)] + if browser.ca_certificate_path: + args += ["--certificate-path", browser.ca_certificate_path] + if extra_args: + args += extra_args + args += browser.binary_args + debug_args, command = browser_command(binary, args, debug_info) + if pause_after_test: + command.remove("-z") + return debug_args + command + + + class ServoTestharnessExecutor(ProcessTestExecutor): convert_result = testharness_result_converter @@ -57,25 +84,12 @@ class ServoTestharnessExecutor(ProcessTestExecutor): self.result_data = None self.result_flag = threading.Event() - args = [ - "--hard-fail", "-u", "Servo/wptrunner", - "-Z", "replace-surrogates", "-z", self.test_url(test), - ] - for stylesheet in self.browser.user_stylesheets: - args += ["--user-stylesheet", stylesheet] - for pref, value in test.environment.get('prefs', {}).iteritems(): - args += ["--pref", "%s=%s" % (pref, value)] - if self.browser.ca_certificate_path: - args += ["--certificate-path", self.browser.ca_certificate_path] - args += self.browser.binary_args - debug_args, command = browser_command(self.binary, args, self.debug_info) - - self.command = command - - if self.pause_after_test: - self.command.remove("-z") - - self.command = debug_args + self.command + self.command = build_servo_command(test, + self.test_url, + self.browser, + self.binary, + self.pause_after_test, + self.debug_info) env = os.environ.copy() env["HOST_FILE"] = self.hosts_path @@ -192,37 +206,23 @@ class ServoRefTestExecutor(ProcessTestExecutor): ProcessTestExecutor.teardown(self) def screenshot(self, test, viewport_size, dpi): - full_url = self.test_url(test) - with TempFilename(self.tempdir) as output_path: - debug_args, command = browser_command( - self.binary, - [ - "--hard-fail", "--exit", - "-u", "Servo/wptrunner", - "-Z", "disable-text-aa,load-webfonts-synchronously,replace-surrogates", - "--output=%s" % output_path, full_url - ] + self.browser.binary_args, - self.debug_info) - - for stylesheet in self.browser.user_stylesheets: - command += ["--user-stylesheet", stylesheet] - - for pref, value in test.environment.get('prefs', {}).iteritems(): - command += ["--pref", "%s=%s" % (pref, value)] - - command += ["--resolution", viewport_size or "800x600"] - - if self.browser.ca_certificate_path: - command += ["--certificate-path", self.browser.ca_certificate_path] + extra_args = ["--exit", + "--output=%s" % output_path, + "--resolution", viewport_size or "800x600"] + debug_opts = "disable-text-aa,load-webfonts-synchronously,replace-surrogates" if dpi: - command += ["--device-pixel-ratio", dpi] - - # Run ref tests in headless mode - command += ["-z"] + extra_args += ["--device-pixel-ratio", dpi] - self.command = debug_args + command + self.command = build_servo_command(test, + self.test_url, + self.browser, + self.binary, + False, + self.debug_info, + extra_args, + debug_opts) env = os.environ.copy() env["HOST_FILE"] = self.hosts_path @@ -283,3 +283,82 @@ class ServoDriverProtocol(WebDriverProtocol): class ServoWdspecExecutor(WdspecExecutor): protocol_cls = ServoDriverProtocol + + +class ServoTimedRunner(TimedRunner): + def run_func(self): + try: + self.result = True, self.func(self.protocol, self.url, self.timeout) + except Exception as e: + message = getattr(e, "message", "") + if message: + message += "\n" + message += traceback.format_exc(e) + self.result = False, ("INTERNAL-ERROR", message) + finally: + self.result_flag.set() + + def set_timeout(self): + pass + + +class ServoCrashtestExecutor(ProcessTestExecutor): + convert_result = crashtest_result_converter + + def __init__(self, browser, server_config, binary=None, timeout_multiplier=1, + screenshot_cache=None, debug_info=None, pause_after_test=False, + **kwargs): + ProcessTestExecutor.__init__(self, + browser, + server_config, + timeout_multiplier=timeout_multiplier, + debug_info=debug_info) + + self.pause_after_test = pause_after_test + self.protocol = ConnectionlessProtocol(self, browser) + self.tempdir = tempfile.mkdtemp() + self.hosts_path = write_hosts_file(server_config) + + def do_test(self, test): + timeout = (test.timeout * self.timeout_multiplier if self.debug_info is None + else None) + + test_url = self.test_url(test) + # We want to pass the full test object into build_servo_command, + # so stash it in the class + self.test = test + success, data = ServoTimedRunner(self.logger, self.do_crashtest, self.protocol, + test_url, timeout, self.extra_timeout).run() + + if success: + return self.convert_result(test, data) + + return (test.result_cls(*data), []) + + def do_crashtest(self, protocol, url, timeout): + env = os.environ.copy() + env["HOST_FILE"] = self.hosts_path + env["RUST_BACKTRACE"] = "1" + + command = build_servo_command(self.test, + self.test_url, + self.browser, + self.binary, + False, + self.debug_info, + extra_args=["-x"]) + + if not self.interactive: + self.proc = ProcessHandler(command, + env=env, + storeOutput=False) + self.proc.run() + else: + self.proc = subprocess.Popen(command, env=env) + + self.proc.wait() + + if self.proc.poll() >= 0: + return {"status": "PASS", "message": None} + + return {"status": "CRASH", "message": None} diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/tests/test_wpttest.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/tests/test_wpttest.py index 69f22ebcb68..9bb3e1fd34e 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/tests/test_wpttest.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/tests/test_wpttest.py @@ -225,7 +225,7 @@ def test_metadata_fuzzy(): {"fuzzy": [[["/a/fuzzy.html", '/a/fuzzy-ref.html', '=='], [[2, 3], [10, 15]]]]}]]}}, "paths": {"a/fuzzy.html": ["0"*40, "reftest"]}, - "version": 6, + "version": 7, "url_base": "/"} manifest = wptmanifest.Manifest.from_json(".", manifest_data) test_metadata = manifestexpected.static.compile(BytesIO(test_fuzzy), diff --git a/tests/wpt/web-platform-tests/webaudio/js/worklet-recorder.js b/tests/wpt/web-platform-tests/webaudio/js/worklet-recorder.js index 3bf3bc23b20..913ab742aa1 100644 --- a/tests/wpt/web-platform-tests/webaudio/js/worklet-recorder.js +++ b/tests/wpt/web-platform-tests/webaudio/js/worklet-recorder.js @@ -30,6 +30,7 @@ class RecorderProcessor extends AudioWorkletProcessor { type: 'recordfinished', recordBuffer: this._recordBuffer }); + this.port.close(); return false; } diff --git a/tests/wpt/web-platform-tests/webaudio/resources/audit.js b/tests/wpt/web-platform-tests/webaudio/resources/audit.js index 2aac1fffb49..fe6fc45b140 100644 --- a/tests/wpt/web-platform-tests/webaudio/resources/audit.js +++ b/tests/wpt/web-platform-tests/webaudio/resources/audit.js @@ -51,6 +51,12 @@ window.Audit = (function() { }, message); } + function _logException(message, exception) { + test(function() { + throw exception; + }, message); + } + function _throwException(message) { throw new Error(message); } @@ -1191,11 +1197,12 @@ window.Audit = (function() { // that wheel, but since it's been reinvented... At least make sure that // an exception while running a task doesn't preclude us running all the // _other_ tasks for the test. + let testName = `Executing "${this.label}"`; try { this._taskFunction(this, this.should.bind(this)); + _logPassed(testName); } catch (e) { - // Log the failure. - test(() => { throw e; }, `Executing "${this.label}"`); + _logException(testName, e); if (this.state != TaskState.FINISHED) { // We threw before calling done(), so do that manually to run our // other tasks. diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html index a8a7f5ed1de..8dafa2f8111 100644 --- a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html +++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html @@ -13,9 +13,9 @@ const audit = Audit.createTaskRunner(); const context = new AudioContext(); - setup(async function () { - await context.audioWorklet.addModule( - 'processors/channel-count-processor.js'); + setup(function () { + context.audioWorklet.addModule( + 'processors/channel-count-processor.js').then(() => audit.run()); // Test if the output channe count dynamically changes if the input // and output is 1. @@ -74,8 +74,6 @@ // if the specified channel count is kept correctly. node.connect(context.destination); }); - - audit.run(); }); </script> </body> diff --git a/tests/wpt/web-platform-tests/webxr/xrSession_requestReferenceSpace.https.html b/tests/wpt/web-platform-tests/webxr/xrSession_requestReferenceSpace.https.html index 51aa8885f5e..be97396041e 100644 --- a/tests/wpt/web-platform-tests/webxr/xrSession_requestReferenceSpace.https.html +++ b/tests/wpt/web-platform-tests/webxr/xrSession_requestReferenceSpace.https.html @@ -43,13 +43,13 @@ }) ])) .then(() => { - if (!session.immersive) { + if (session.mode == 'inline') { // Bounded reference spaces are not allowed in inline sessions. return promise_rejects(t, "NotSupportedError", session.requestReferenceSpace('bounded-floor')) } }) .then(() => { - if (!session.immersive) { + if (session.mode == 'inline') { // Unbounded reference spaces are not allowed in inline sessions. return promise_rejects(t, "NotSupportedError", session.requestReferenceSpace('unbounded')) } diff --git a/tests/wpt/webgl/meta/MANIFEST.json b/tests/wpt/webgl/meta/MANIFEST.json index b7b54c924bd..e88697417c6 100644 --- a/tests/wpt/webgl/meta/MANIFEST.json +++ b/tests/wpt/webgl/meta/MANIFEST.json @@ -1,10355 +1,6298 @@ { "items": { - "support": { - ".gitignore": [ + "crashtest": { + "conformance/glsl/bugs/complex-glsl-does-not-crash.html": [ [ + "conformance/glsl/bugs/complex-glsl-does-not-crash.html", {} ] ], - "00_test_list.txt": [ + "conformance/glsl/bugs/long-expressions-should-not-crash.html": [ [ + "conformance/glsl/bugs/long-expressions-should-not-crash.html", {} ] ], - "CONFORMANCE_RULES.txt": [ + "conformance/glsl/bugs/nested-functions-should-not-crash.html": [ [ + "conformance/glsl/bugs/nested-functions-should-not-crash.html", {} ] ], - "README.md": [ + "conformance/glsl/bugs/pow-with-constant-exponent-should-not-crash.html": [ [ + "conformance/glsl/bugs/pow-with-constant-exponent-should-not-crash.html", {} ] ], - "closure-library/AUTHORS": [ + "conformance/glsl/bugs/qualcomm-crash.html": [ [ + "conformance/glsl/bugs/qualcomm-crash.html", {} ] ], - "closure-library/CONTRIBUTING": [ + "conformance/glsl/bugs/qualcomm-loop-with-continue-crash.html": [ [ + "conformance/glsl/bugs/qualcomm-loop-with-continue-crash.html", {} ] ], - "closure-library/LICENSE": [ + "conformance/glsl/bugs/sketchfab-lighting-shader-crash.html": [ [ + "conformance/glsl/bugs/sketchfab-lighting-shader-crash.html", {} ] ], - "closure-library/README-Khronos.txt": [ + "conformance/glsl/bugs/temp-expressions-should-not-crash.html": [ [ + "conformance/glsl/bugs/temp-expressions-should-not-crash.html", {} ] ], - "closure-library/README.md": [ + "conformance/glsl/bugs/undefined-index-should-not-crash.html": [ [ + "conformance/glsl/bugs/undefined-index-should-not-crash.html", {} ] ], - "closure-library/closure/bin/build/closurebuilder.py": [ + "conformance/textures/misc/copy-tex-image-crash.html": [ [ + "conformance/textures/misc/copy-tex-image-crash.html", {} ] ], - "closure-library/closure/bin/build/depstree.py": [ + "conformance/typedarrays/array-buffer-crash.html": [ [ + "conformance/typedarrays/array-buffer-crash.html", {} ] ], - "closure-library/closure/bin/build/depswriter.py": [ + "conformance/typedarrays/array-buffer-view-crash.html": [ [ + "conformance/typedarrays/array-buffer-view-crash.html", {} ] ], - "closure-library/closure/bin/build/jscompiler.py": [ + "conformance/typedarrays/data-view-crash.html": [ [ + "conformance/typedarrays/data-view-crash.html", {} ] ], - "closure-library/closure/bin/build/source.py": [ + "conformance2/textures/misc/compressed-tex-from-pbo-crash.html": [ [ + "conformance2/textures/misc/compressed-tex-from-pbo-crash.html", {} ] + ] + }, + "support": { + ".gitignore": [ + [] + ], + "00_test_list.txt": [ + [] + ], + "CONFORMANCE_RULES.txt": [ + [] + ], + "README.md": [ + [] + ], + "closure-library/AUTHORS": [ + [] + ], + "closure-library/CONTRIBUTING": [ + [] + ], + "closure-library/LICENSE": [ + [] + ], + "closure-library/README-Khronos.txt": [ + [] + ], + "closure-library/README.md": [ + [] + ], + "closure-library/closure/bin/build/closurebuilder.py": [ + [] + ], + "closure-library/closure/bin/build/depstree.py": [ + [] + ], + "closure-library/closure/bin/build/depswriter.py": [ + [] + ], + "closure-library/closure/bin/build/jscompiler.py": [ + [] + ], + "closure-library/closure/bin/build/source.py": [ + [] ], "closure-library/closure/bin/build/treescan.py": [ - [ - {} - ] + [] ], "closure-library/closure/bin/calcdeps.py": [ - [ - {} - ] + [] ], "closure-library/closure/bin/scopify.py": [ - [ - {} - ] + [] ], "closure-library/closure/goog/base.js": [ - [ - {} - ] + [] ], "closure-library/closure/goog/deps.js": [ - [ - {} - ] + [] ], "conformance/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/attribs/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/buffers/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/canvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/context/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/context/resources/context-release-child-with-worker.html": [ - [ - {} - ] + [] ], "conformance/context/resources/context-release-upon-reload-child.html": [ - [ - {} - ] + [] ], "conformance/context/resources/context-release-worker.js": [ - [ - {} - ] + [] ], "conformance/extensions/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/bugs/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/bugs/README.md": [ - [ - {} - ] + [] ], "conformance/glsl/constructors/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/functions/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/implicit/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/literals/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/matrices/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/misc/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/misc/include.vs": [ - [ - {} - ] + [] ], "conformance/glsl/preprocessor/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/reserved/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/samplers/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/glsl/variables/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/limits/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/misc/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/more/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/more/README.md": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-A.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-B1.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-B2.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-B3.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-B4.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-C.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-D_G.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-G_I.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-L_S.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/argGenerators-S_V.js": [ - [ - {} - ] + [] ], "conformance/more/conformance/quickCheckAPI.js": [ - [ - {} - ] + [] ], "conformance/more/unit.css": [ - [ - {} - ] + [] ], "conformance/more/unit.js": [ - [ - {} - ] + [] ], "conformance/more/util.js": [ - [ - {} - ] + [] ], "conformance/offscreencanvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/offscreencanvas/context-creation-worker.js": [ - [ - {} - ] + [] ], "conformance/offscreencanvas/context-lost-restored-worker.js": [ - [ - {} - ] + [] ], "conformance/offscreencanvas/context-lost-worker.js": [ - [ - {} - ] + [] ], "conformance/offscreencanvas/methods-worker.js": [ - [ - {} - ] + [] ], "conformance/ogles/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/abs_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/abs/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/acos_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/acos/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/all/all_bvec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/all/all_bvec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/all/all_bvec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/all/all_bvec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/all/all_bvec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/all/all_bvec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/all/all_bvec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/all/all_bvec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/all/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/any/any_bvec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/any/any_bvec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/any/any_bvec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/any/any_bvec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/any/any_bvec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/any/any_bvec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/any/any_bvec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/any/any_bvec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/any/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/array/empty_empty_array_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/array/empty_empty_array_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/array/empty_uniform_array_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/array/empty_uniform_array_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/array/initfunc_empty_array_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/array/initfunc_empty_array_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/array/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/asin_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/asin/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_float_frag_xvaryyvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_float_frag_xvaryyvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_float_vert_xvaryyvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_float_vert_xvaryyvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec2_frag_xvaryyvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec2_frag_xvaryyvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec2_vert_xvaryyvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec2_vert_xvaryyvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec3_frag_xvaryyvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec3_frag_xvaryyvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec3_vert_xvaryyvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/atan_vec3_vert_xvaryyvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/atan/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxCombinedTextureImageUnits_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxCombinedTextureImageUnits_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxDrawBuffers_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxDrawBuffers_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxFragmentUniformVectors_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxFragmentUniformVectors_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxTextureImageUnits_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxTextureImageUnits_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxVaryingVectors_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxVaryingVectors_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxVertexAttribs_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxVertexAttribs_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxVertexTextureImageUnits_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxVertexTextureImageUnits_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxVertexUniformVectors_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/gl_MaxVertexUniformVectors_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biConstants/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biuDepthRange/DepthRange_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biuDepthRange/DepthRange_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/biuDepthRange/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CG_Data_Types_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CG_Standard_Library_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectBuiltInOveride_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectComma_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectConstFolding1_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectConstFolding2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectConstruct_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectExtension10_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectExtension1_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectExtension4_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectFull_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectFuncOverload_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectFuncOverload_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectFunction1_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectModule_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectParse1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectParse2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectParse2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectParseTest1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectParseTest_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectPreprocess5_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectPreprocess8_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectPreprocess9_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectSwizzle1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectSwizzle1_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectSwizzle2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectSwizzle2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectSwizzle3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/CorrectVersion_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/DuplicateVersion1_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/FunctionParam_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/Include_Preprocessor_Directive_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/Low_Level_Assembly_Reserved_Words_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/Main_Parameters_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/ParseTest3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/ParseTest4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/Permissive_Constant_Conversions_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/Permissive_Scalar_Vector_Expressions_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/TernaryOp_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/Texture_Rectangle_Samplers_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array10_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array11_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array5_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array6_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array7_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array8_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/array9_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/attribute1_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/attribute2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/attribute_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/attribute_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/break_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/comma1_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/comma2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/comma2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/comma3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/comment_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/conditional1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/conditional2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/conditional3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/constFunc_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/constructor1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/constructor2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/constructor3_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/continue_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType10_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType11_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType12_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType13_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType19_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType5_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType6_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType7_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType8_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dataType9_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/default.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/default.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dowhile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dvec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dvec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/dvec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/extension2_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/extension3_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/extension5_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/extension6_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/extension7_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/extension8_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/extension9_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/float2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/float3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/float4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/fragmentOnly1_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/fragmentOnly2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/fragmentOnly3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/fragmentOnly4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/fragmentOnly_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/function10_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/function1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/function2_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/function3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/function4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/function6_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/function7_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/function8_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/function9_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/hvec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/hvec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/hvec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/identifier1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/identifier2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/identifier3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/if1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/if2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/increment1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/increment2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/increment3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/increment4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/increment6_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/main1_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/main2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/main3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/matrix_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/normal_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/parser10_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/parser1_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/parser3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/parser4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/parser5_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/parser6_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/parser7_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/parser8_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/parser9_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/preprocess0_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/preprocess10_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/preprocess1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/preprocess2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/preprocess3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/preprocess4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/preprocess6_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/preprocess7_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/scoping1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/scoping2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct10_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct11_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct5_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct6_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct7_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct8_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/struct9_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/swizzle1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/swizzle2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/swizzle3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/typecast_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/uniform1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/uniform_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/varying1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/varying2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/varying3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/varying_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/vector_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/version2_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/version3_V100_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/vertexOnly2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/vertexOnly_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/vertex_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/while1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/while2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/build/while_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/built_in_varying_array_out_of_bounds/gl_Color_array_index_out_of_bounds_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/built_in_varying_array_out_of_bounds/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/ceil_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/ceil/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_float_frag_xvary_yconstquarter.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_float_frag_xvary_yconstquarter_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_float_vert_xvary_yconstquarter.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_float_vert_xvary_yconstquarter_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_vec2_frag_xvary_yconstquarter.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_vec2_frag_xvary_yconstquarter_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_vec2_vert_xvary_yconstquarter.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_vec2_vert_xvary_yconstquarter_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_vec3_frag_xvary_yconstquarter.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_vec3_frag_xvary_yconstquarter_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_vec3_vert_xvary_yconstquarter.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/clamp_vec3_vert_xvary_yconstquarter_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/clamp/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/for_break_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/for_break_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/for_continue_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/for_continue_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/for_nested_break_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/for_nested_break_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/for_nested_continue_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/for_nested_continue_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/nested_if_else_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/control_flow/nested_if_else_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/cos_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cos/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cross/cross_vec3_frag_xvaryyconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cross/cross_vec3_frag_xvaryyconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cross/cross_vec3_vert_xvaryyconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cross/cross_vec3_vert_xvaryyconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/cross/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/default/default.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/default/default.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/default/default_textured.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/default/default_textured.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/default/expected.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/default/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/degrees_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/degrees/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/discard/discard_cond_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/discard/discard_cond_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/discard/discard_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/discard/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_float_frag_xvaryyhalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_float_frag_xvaryyhalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_float_vert_xvaryyhalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_float_vert_xvaryyhalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_vec2_frag_xvaryyhalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_vec2_frag_xvaryyhalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_vec2_vert_xvaryyhalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_vec2_vert_xvaryyhalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_vec3_frag_xvaryyhalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_vec3_frag_xvaryyhalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_vec3_vert_xvaryyhalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/distance_vec3_vert_xvaryyhalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/distance/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_float_frag_xvaryyone.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_float_frag_xvaryyone_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_float_vert_xvaryyone.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_float_vert_xvaryyone_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_vec2_frag_xvaryyhalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_vec2_frag_xvaryyhalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_vec2_vert_xvaryyhalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_vec2_vert_xvaryyhalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_vec3_frag_xvaryythird.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_vec3_frag_xvaryythird_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_vec3_vert_xvaryythird.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/dot_vec3_vert_xvaryythird_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/dot/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_bvec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_bvec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_bvec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_bvec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_bvec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_bvec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_bvec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_bvec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_ivec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_ivec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_ivec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_ivec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_ivec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_ivec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_ivec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_ivec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_vec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_vec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_vec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/equal_vec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/equal/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_float_frag_xvaryneg.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_float_frag_xvaryneg_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_float_vert_xvaryneg.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_float_vert_xvaryneg_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec2_frag_xvaryneg.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec2_frag_xvaryneg_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec2_vert_xvaryneg.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec2_vert_xvaryneg_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec3_frag_xvaryneg.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec3_frag_xvaryneg_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec3_vert_xvaryneg.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/exp_vec3_vert_xvaryneg_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_float_frag_xvaryneg.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_float_frag_xvaryneg_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_float_vert_xvaryneg.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_float_vert_xvaryneg_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec2_frag_xvaryneg.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec2_frag_xvaryneg_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec2_vert_xvaryneg.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec2_vert_xvaryneg_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec3_frag_xvaryneg.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec3_frag_xvaryneg_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec3_vert_xvaryneg.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/exp2_vec3_vert_xvaryneg_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/exp2/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_float_frag_nvaryiconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_float_frag_nvaryiconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_float_vert_nvaryiconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_float_vert_nvaryiconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_vec2_frag_nvaryiconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_vec2_frag_nvaryiconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_vec2_vert_nvaryiconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_vec2_vert_nvaryiconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_vec3_frag_nvaryiconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_vec3_frag_nvaryiconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_vec3_vert_nvaryiconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/faceforward_vec3_vert_nvaryiconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/faceforward/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/floor_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/floor/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/fract_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/fract/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/array_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/array_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_empty_bool_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_empty_bool_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_empty_bool_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_empty_bool_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_in_bool_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_in_bool_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_in_bool_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_in_bool_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_inout_bool_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_inout_bool_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_inout_bool_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_inout_bool_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_out_bool_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_out_bool_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_out_bool_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bool_empty_out_bool_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_empty_bvec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_empty_bvec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_empty_bvec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_empty_bvec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_in_bvec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_in_bvec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_in_bvec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_in_bvec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_inout_bvec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_inout_bvec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_inout_bvec4_bigarray_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_inout_bvec4_bigarray_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_inout_bvec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_inout_bvec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_out_bvec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_out_bvec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_out_bvec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/bvec4_empty_out_bvec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_empty_float_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_empty_float_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_empty_float_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_empty_float_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_in_float_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_in_float_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_in_float_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_in_float_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_inout_float_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_inout_float_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_inout_float_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_inout_float_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_out_float_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_out_float_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_out_float_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/float_empty_out_float_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_empty_int_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_empty_int_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_empty_int_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_empty_int_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_in_int_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_in_int_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_in_int_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_in_int_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_inout_int_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_inout_int_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_inout_int_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_inout_int_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_out_int_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_out_int_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_out_int_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/int_empty_out_int_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_empty_ivec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_empty_ivec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_empty_ivec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_empty_ivec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_in_ivec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_in_ivec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_in_ivec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_in_ivec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_inout_ivec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_inout_ivec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_inout_ivec4_bigarray_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_inout_ivec4_bigarray_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_inout_ivec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_inout_ivec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_out_ivec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_out_ivec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_out_ivec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/ivec4_empty_out_ivec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_empty_mat4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_empty_mat4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_empty_mat4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_empty_mat4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_in_mat4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_in_mat4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_in_mat4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_in_mat4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_inout_mat4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_inout_mat4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_inout_mat4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_inout_mat4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_out_mat4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_out_mat4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_out_mat4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/mat4_empty_out_mat4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/qualifiers_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/qualifiers_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/qualifiers_struct_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/qualifiers_struct_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_empty_vec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_empty_vec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_empty_vec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_empty_vec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_in_vec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_in_vec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_in_vec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_in_vec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_inout_vec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_inout_vec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_inout_vec4_bigarray_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_inout_vec4_bigarray_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_inout_vec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_inout_vec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_out_vec4_array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_out_vec4_array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_out_vec4_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/vec4_empty_out_vec4_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/void_empty_empty_void_empty_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/functions/void_empty_empty_void_empty_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/gl_FragCoord/gl_FragCoord_w_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/gl_FragCoord/gl_FragCoord_xy_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/gl_FragCoord/gl_FragCoord_xy_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/gl_FragCoord/gl_FragCoord_z_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/gl_FragCoord/gl_FragCoord_z_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/gl_FragCoord/gl_FragCoord_z_frag_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/gl_FragCoord/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/gl_FrontFacing/gl_FrontFacing_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/gl_FrontFacing/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_ivec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_ivec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_ivec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_ivec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_ivec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_ivec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_ivec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_ivec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_vec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_vec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_vec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/greaterThan_vec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThan/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_ivec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_ivec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_ivec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_ivec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_ivec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_ivec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_ivec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_ivec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_vec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_vec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_vec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/greaterThanEqual_vec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/greaterThanEqual/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/inversesqrt/inversesqrt_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/length/length_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_ivec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_ivec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_ivec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_ivec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_ivec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_ivec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_ivec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_ivec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_vec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_vec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_vec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThan/lessThan_vec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_ivec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_ivec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_ivec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_ivec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_ivec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_ivec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_ivec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_ivec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_vec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_vec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_vec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/lessThanEqual/lessThanEqual_vec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_float_frag_xvary01.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_float_frag_xvary01_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_float_vert_xvary01.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_float_vert_xvary01_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec2_frag_xvary01.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec2_frag_xvary01_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec2_vert_xvary01.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec2_vert_xvary01_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec3_frag_xvary01.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec3_frag_xvary01_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec3_vert_xvary01.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec3_vert_xvary01_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log/log_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_float_frag_xvary01.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_float_frag_xvary01_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_float_vert_xvary01.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_float_vert_xvary01_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec2_frag_xvary01.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec2_frag_xvary01_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec2_vert_xvary01.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec2_vert_xvary01_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec3_frag_xvary01.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec3_frag_xvary01_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec3_vert_xvary01.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec3_vert_xvary01_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/log2/log2_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/array_const_mat2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/array_const_mat2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/array_const_mat3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/array_const_mat3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/array_const_mat4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/array_const_mat4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat2_copy_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat2_copy_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat3_copy_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat3_copy_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat4_copy_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat4_copy_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/const_mat4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_4float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_4float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_copy_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_copy_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_3vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_3vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_9float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_9float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_copy_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_copy_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat4_16float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat4_16float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat4_4vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat4_4vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat4_copy_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat4_copy_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat/mat4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat3/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat3/mat3arrayindirect0_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat3/mat3arrayindirect0_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat3/mat3arrayindirect1_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat3/mat3arrayindirect1_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat3/mat3arraysimple_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mat3/mat3arraysimple_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/matrixCompMult/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/matrixCompMult/matrixMultComp_mat2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/matrixCompMult/matrixMultComp_mat2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/matrixCompMult/matrixMultComp_mat2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/matrixCompMult/matrixMultComp_mat2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/matrixCompMult/matrixMultComp_mat3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/matrixCompMult/matrixMultComp_mat3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/matrixCompMult/matrixMultComp_mat3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/matrixCompMult/matrixMultComp_mat3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_float_frag_xvary_yconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_float_frag_xvary_yconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_float_vert_xvary_yconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_float_vert_xvary_yconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_vec2_frag_xvary_yconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_vec2_frag_xvary_yconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_vec2_vert_xvary_yconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_vec2_vert_xvary_yconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_vec3_frag_xvary_yconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_vec3_frag_xvary_yconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_vec3_vert_xvary_yconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/max/max_vec3_vert_xvary_yconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_float_frag_xvary_yconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_float_frag_xvary_yconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_float_vert_xvary_yconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_float_vert_xvary_yconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_vec2_frag_xvary_yconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_vec2_frag_xvary_yconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_vec2_vert_xvary_yconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_vec2_vert_xvary_yconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_vec3_frag_xvary_yconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_vec3_frag_xvary_yconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_vec3_vert_xvary_yconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/min/min_vec3_vert_xvary_yconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_float_frag_xvary_yconsthalf_aconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_float_frag_xvary_yconsthalf_aconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_float_vert_xvary_yconsthalf_aconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_float_vert_xvary_yconsthalf_aconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_vec2_frag_xvary_yconsthalf_aconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_vec2_frag_xvary_yconsthalf_aconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_vec2_vert_xvary_yconsthalf_aconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_vec2_vert_xvary_yconsthalf_aconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_vec3_frag_xvary_yconsthalf_aconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_vec3_frag_xvary_yconsthalf_aconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_vec3_vert_xvary_yconsthalf_aconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mix/mix_vec3_vert_xvary_yconsthalf_aconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_float_frag_xvary_yconst1.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_float_frag_xvary_yconst1_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_float_vert_xvary_yconst1.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_float_vert_xvary_yconst1_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_vec2_frag_xvary_yconst1.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_vec2_frag_xvary_yconst1_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_vec2_vert_xvary_yconst1.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_vec2_vert_xvary_yconst1_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_vec3_frag_xvary_yconst1.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_vec3_frag_xvary_yconst1_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_vec3_vert_xvary_yconst1.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_vec3_vert_xvary_yconst1_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_x_large_y_large_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/mod/mod_x_large_y_large_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/normalize/normalize_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/not/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/not/not_bvec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/not/not_bvec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/not/not_bvec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/not/not_bvec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/not/not_bvec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/not/not_bvec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/not/not_bvec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/not/not_bvec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_bvec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_bvec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_bvec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_bvec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_bvec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_bvec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_bvec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_bvec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_ivec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_ivec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_ivec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_ivec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_ivec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_ivec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_ivec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_ivec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_vec2_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_vec2_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_vec3_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/notEqual/notEqual_vec3_vert_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/addsubtract_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/addsubtract_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/assignments_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/assignments_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/division_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/division_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/equality_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/equality_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/logical_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/logical_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/multiplicative_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/multiplicative_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/postfixdecrement_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/postfixdecrement_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/postfixincrement_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/postfixincrement_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/prefixdecrement_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/prefixdecrement_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/prefixincrement_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/prefixincrement_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/relational_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/relational_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/selection_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/selection_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/unary_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/operators/unary_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_frag_xconst2_yvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_frag_xconst2_yvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_frag_xconsthalf_yvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_frag_xconsthalf_yvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_frag_xvary_yconst2.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_frag_xvary_yconst2_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_frag_xvary_yconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_frag_xvary_yconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_vert_xconst2_yvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_vert_xconst2_yvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_vert_xconsthalf_yvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_vert_xconsthalf_yvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_vert_xvary_yconst2.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_vert_xvary_yconst2_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_vert_xvary_yconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_float_vert_xvary_yconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_frag_xconst2_yvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_frag_xconst2_yvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_frag_xconsthalf_yvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_frag_xconsthalf_yvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_frag_xvary_yconst2.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_frag_xvary_yconst2_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_frag_xvary_yconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_frag_xvary_yconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_vert_xconst2_yvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_vert_xconst2_yvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_vert_xconsthalf_yvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_vert_xconsthalf_yvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_vert_xvary_yconst2.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_vert_xvary_yconst2_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_vert_xvary_yconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec2_vert_xvary_yconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_frag_xconst2_yvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_frag_xconst2_yvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_frag_xconsthalf_yvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_frag_xconsthalf_yvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_frag_xvary_yconst2.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_frag_xvary_yconst2_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_frag_xvary_yconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_frag_xvary_yconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_vert_xconst2_yvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_vert_xconst2_yvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_vert_xconsthalf_yvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_vert_xconsthalf_yvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_vert_xvary_yconst2.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_vert_xvary_yconst2_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_vert_xvary_yconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/pow/pow_vec3_vert_xvary_yconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/radians/radians_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_float_frag_ivarynconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_float_frag_ivarynconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_float_vert_ivarynconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_float_vert_ivarynconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_vec2_frag_ivarynconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_vec2_frag_ivarynconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_vec2_vert_ivarynconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_vec2_vert_ivarynconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_vec3_frag_ivarynconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_vec3_frag_ivarynconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_vec3_vert_ivarynconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/reflect/reflect_vec3_vert_ivarynconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_float_frag_ivarynconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_float_frag_ivarynconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_float_vert_ivarynconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_float_vert_ivarynconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_vec2_frag_ivarynconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_vec2_frag_ivarynconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_vec2_vert_ivarynconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_vec2_vert_ivarynconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_vec3_frag_ivarynconst.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_vec3_frag_ivarynconst_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_vec3_vert_ivarynconst.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/refract/refract_vec3_vert_ivarynconst_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sign/sign_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sin/sin_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_float_frag_xvary_edgeconstquarter.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_float_frag_xvary_edgeconstquarter_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_float_vert_xvary_edgeconstquarter.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_float_vert_xvary_edgeconstquarter_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_vec2_frag_xvary_edgeconstquarter.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_vec2_frag_xvary_edgeconstquarter_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_vec2_vert_xvary_edgeconstquarter.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_vec2_vert_xvary_edgeconstquarter_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_vec3_frag_xvary_edgeconstquarter.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_vec3_frag_xvary_edgeconstquarter_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_vec3_vert_xvary_edgeconstquarter.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/smoothstep/smoothstep_vec3_vert_xvary_edgeconstquarter_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/sqrt/sqrt_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_float_frag_xvary_edgeconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_float_frag_xvary_edgeconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_float_vert_xvary_edgeconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_float_vert_xvary_edgeconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_vec2_frag_xvary_edgeconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_vec2_frag_xvary_edgeconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_vec2_vert_xvary_edgeconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_vec2_vert_xvary_edgeconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_vec3_frag_xvary_edgeconsthalf.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_vec3_frag_xvary_edgeconsthalf_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_vec3_vert_xvary_edgeconsthalf.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/step/step_vec3_vert_xvary_edgeconsthalf_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/nestedstructcomb_various_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/nestedstructcomb_various_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_bool_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_bool_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_bvec2bvec3bvec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_bvec2bvec3bvec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_mat2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_mat2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_mat3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_mat3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_mat4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_mat4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/struct_vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_bool_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_bool_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_bvec2bvec3bvec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_bvec2bvec3bvec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_mat2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_mat2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_mat3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_mat3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_mat4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_mat4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structcopy_vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_bool_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_bool_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_bvec2bvec3bvec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_bvec2bvec3bvec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_mat2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_mat2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_mat3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_mat3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_mat4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_mat4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/struct/structnest_vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_bgr_1vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_bgr_1vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_br_g_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_br_g_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_gb_r_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_gb_r_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_grb_1vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_grb_1vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_ps_t_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_ps_t_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_pts_1vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_pts_1vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_rb_g_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_rb_g_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_rg_b_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_rg_b_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_rgb_1vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_rgb_1vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_sp_t_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_sp_t_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_st_p_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_st_p_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_stp_1vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_stp_1vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_tp_s_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_tp_s_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_tsp_1vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_tsp_1vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_xy_z_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_xy_z_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_xyz_1vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_xyz_1vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_xz_y_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_xz_y_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_yxz_1vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_yxz_1vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_yz_x_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_yz_x_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_zx_y_1vec2_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_zx_y_1vec2_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_zyx_1vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec3_zyx_1vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_ar_bg_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_ar_bg_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_arb_g_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_arb_g_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_arbg_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_arbg_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_bar_g_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_bar_g_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_barg_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_barg_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_br_ag_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_br_ag_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_gr_ab_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_gr_ab_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_gra_b_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_gra_b_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_grab_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_grab_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_pqs_t_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_pqs_t_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_pqst_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_pqst_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_ps_qt_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_ps_qt_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_qs_pt_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_qs_pt_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_qsp_t_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_qsp_t_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_qspt_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_qspt_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_r_g_b_a_4float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_r_g_b_a_4float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_rg_ba_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_rg_ba_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_rgb_a_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_rgb_a_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_rgba_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_rgba_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_s_t_p_q_4float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_s_t_p_q_4float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_st_pq_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_st_pq_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_stp_q_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_stp_q_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_stpq_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_stpq_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_ts_qp_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_ts_qp_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_tsq_p_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_tsq_p_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_tsqp_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_tsqp_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_wx_zy_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_wx_zy_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_wxz_y_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_wxz_y_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_wxzy_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_wxzy_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_x_y_z_w_4float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_x_y_z_w_4float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_xy_zw_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_xy_zw_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_xyz_w_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_xyz_w_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_xyzw_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_xyzw_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_yx_wz_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_yx_wz_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_yxw_z_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_yxw_z_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_yxwz_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_yxwz_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_zwx_y_1vec3_1float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_zwx_y_1vec3_1float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_zwxy_1vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_zwxy_1vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_zx_wy_2vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/swizzlers/vec4_zx_wy_2vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_float_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_float_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_float_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_float_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_vec2_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_vec2_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_vec2_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_vec2_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_vec3_frag_xvary.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_vec3_frag_xvary_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_vec3_vert_xvary.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/tan/tan_vec3_vert_xvary_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/bvec4_2int_2float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/bvec4_2int_2float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/ivec3_3int_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/ivec3_3int_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec2_2float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec2_2float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec2_vec3_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec2_vec3_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec3_float_vec2_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec3_float_vec2_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec3_vec2_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec3_vec2_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec3_vec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec3_vec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec4_ivec4_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec4_ivec4_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec4_vec3_float_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec/vec4_vec3_float_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec3/input.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec3/vec3array_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec3/vec3array_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec3/vec3arraydirect_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec3/vec3arraydirect_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec3/vec3arrayindirect_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec3/vec3arrayindirect_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec3/vec3single_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL/vec3/vec3single_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/compressed_paletted_texture/compressed_paletted_texture.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/compressed_paletted_texture/compressed_paletted_texture.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/dFdx/dFdx_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/dFdx/dFdx_frag.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/dFdx/dFdx_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/dFdx/dFdx_frag_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/dFdy/dFdy_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/dFdy/dFdy_frag.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/dFdy/dFdy_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/dFdy/dFdy_frag_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/default_shaders/default.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/default_shaders/default.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/default_shaders/default_textured.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/default_shaders/default_textured.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_dx.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_dx.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_dy.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_dy.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_ref_dx.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_ref_dx.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_ref_dy.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2ExtensionTests/fwidth/fwidth_frag_ref_dy.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/buffer_objects/buffer_objects.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/buffer_objects/buffer_objects.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/buffer_objects/buffer_objects_multitexturing.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/buffer_objects/buffer_objects_multitexturing.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/buffer_objects/buffer_objects_pointSize.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/buffer_objects/buffer_objects_pointSize.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/copy_texture/copy_texture.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/default_shaders/default.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/default_shaders/default.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/default_shaders/default_textured.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/default_shaders/default_textured.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/lighting_diffuse/lighting_diffuse.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/lighting_diffuse/lighting_diffuse.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/lighting_diffuse/lighting_diffuse_ref.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/lighting_diffuse/lighting_diffuse_ref.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/point_rasterization/point_rasterization.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/point_rasterization/point_rasterization.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/point_sprites/point_sprites.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/point_sprites/point_sprites.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/user_clip_planes/user_clip_planes.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2FixedTests/user_clip_planes/user_clip_planes.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/attach_shader/successfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/attach_shader/successfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/attach_shader/unsuccessfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/attach_shader/unsuccessfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/bind_attribute_location/brick.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/bind_attribute_location/brick.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/compile_shader/brick.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/compile_shader/texture.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/compile_shader/wood.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/compile_shader/wood.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/delete_object/successfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/delete_object/successfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/detach_shader/successfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/detach_shader/successfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/framebuffer_objects/fboShader0.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/framebuffer_objects/fboShader0.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_active_attribute/brick.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_active_attribute/brick_mat2.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_active_attribute/brick_mat3.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_active_attribute/brick_mat4.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_active_attribute/brick_vec.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_active_uniform/brick.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_active_uniform/brick.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_attribute_location/brick.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_attribute_location/brick.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_handle/successfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_handle/successfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_uniform_location/brick.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/get_uniform_location/brick.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetProgramInfoLog_2.0/simple.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetProgramInfoLog_2.0/simple.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetProgramiv_2.0/brick.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetProgramiv_2.0/brick.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetShaderInfoLog_2.0/simple.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetShaderInfoLog_2.0/simple.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetUniform/bvec_tests.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetUniform/bvec_tests.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetUniform/ivec_tests.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetUniform/ivec_tests.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetUniform/mat_tests.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetUniform/mat_tests.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetUniform/vec_tests.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetUniform/vec_tests.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetVertexAttrib/mat_tests.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetVertexAttrib/mat_tests2.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glGetVertexAttrib/vec_tests.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/1b_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/1b_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/1b_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/1f_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/1f_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/1f_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/1i_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/1i_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/1i_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/21f_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/21i_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/22f_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/22i_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/23f_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/23i_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/24f_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/24i_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2b_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2b_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2b_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2f_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2f_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2f_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2i_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2i_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2i_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/2m_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3b_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3b_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3b_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3f_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3f_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3f_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3i_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3i_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3i_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/3m_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4b_firstthree_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4b_firstthree_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4b_lastthree_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4b_lastthree_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4b_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4f_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4f_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4f_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4i_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4i_vert.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4i_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/4m_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/default.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/matrix2VSU.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/matrix2VSU.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/matrix2arrayVSU.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/matrix2arrayVSU.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/matrixVSU.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/glUniform/matrixVSU.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/link_program/successfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/link_program/successfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/link_program/unsuccessfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/link_program/unsuccessfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/precision_specifiers/precision_specifiers.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/precision_specifiers/precision_specifiers.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/relink_program/simple.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/relink_program/simple.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/shader_source/successfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/shader_source/successfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/shader_source/unsuccessfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/shader_source/unsuccessfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/three_uniforms/4f_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/use_program/successfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/use_program/successfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/use_program/unsuccessfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/use_program/unsuccessfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/validate_program/successfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/validate_program/successfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/validate_program/unsuccessfulcompile_frag.frag": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/validate_program/unsuccessfulcompile_vert.vert": [ - [ - {} - ] + [] ], "conformance/ogles/GL2Tests/vertex_program_point_size/point_size.vert": [ - [ - {} - ] + [] ], "conformance/ogles/README.md": [ - [ - {} - ] + [] ], "conformance/ogles/mustpass.run.txt": [ - [ - {} - ] + [] ], "conformance/ogles/ogles-utils.js": [ - [ - {} - ] + [] ], "conformance/ogles/process-ogles2-tests.py": [ - [ - {} - ] + [] ], "conformance/programs/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/reading/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/renderbuffers/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/rendering/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/state/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/canvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/canvas_sub_rectangle/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/image/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/image_bitmap_from_blob/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/image_bitmap_from_canvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/image_bitmap_from_image/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/image_bitmap_from_image_bitmap/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/image_bitmap_from_image_data/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/image_bitmap_from_video/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/image_data/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/misc/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/svg_image/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/video/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/textures/webgl_canvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/typedarrays/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance/uniforms/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/attribs/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/buffers/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/canvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/context/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/extensions/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/glsl3/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/misc/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/offscreencanvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/offscreencanvas/context-creation-worker.js": [ - [ - {} - ] + [] ], "conformance2/offscreencanvas/methods-2-worker.js": [ - [ - {} - ] + [] ], "conformance2/programs/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/query/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/reading/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/renderbuffers/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/rendering/00_test_list.txt": [ - [ - {} - ] - ], - "conformance2/rendering/rgb-format-support.html": [ - [ - {} - ] + [] ], "conformance2/samplers/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/state/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/sync/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/canvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/canvas_sub_rectangle/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/image/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/image_bitmap_from_blob/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/image_bitmap_from_canvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/image_bitmap_from_image/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/image_bitmap_from_image_bitmap/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/image_bitmap_from_image_data/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/image_bitmap_from_video/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/image_data/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/misc/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/svg_image/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/video/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/textures/webgl_canvas/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/transform_feedback/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/uniforms/00_test_list.txt": [ - [ - {} - ] + [] ], "conformance2/vertex_arrays/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/LICENSE": [ - [ - {} - ] + [] ], "deqp/README.md": [ - [ - {} - ] + [] ], "deqp/build.py": [ - [ - {} - ] + [] ], "deqp/compiler_additional_extern.js": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/conditionals.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/constant_expressions.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/constants.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/conversions.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/declarations.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/fragdata.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/functions.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/invalid_texture_functions.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/keywords.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/linkage.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/preprocessor.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/qualification_order.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/reserved_operators.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/scoping.test": [ - [ - {} - ] + [] ], "deqp/data/gles2/shaders/swizzles.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/arrays.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/conditionals.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/constant_expressions.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/constants.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/conversions.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/declarations.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/fragdata.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/functions.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/invalid_texture_functions.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/keywords.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/linkage.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/negative.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/preprocessor.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/qualification_order.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/scoping.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/switch.test": [ - [ - {} - ] + [] ], "deqp/data/gles3/shaders/swizzles.test": [ - [ - {} - ] + [] ], "deqp/deqp-deps.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuBilinearImageCompare.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuCompressedTexture.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuFloat.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuFloatFormat.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuFuzzyImageCompare.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuImageCompare.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuInterval.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuLogImage.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuMatrix.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuMatrixUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuPixelFormat.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuRGBA.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuSkipList.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuStringTemplate.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuSurface.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuTestCase.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuTexCompareVerifier.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuTexLookupVerifier.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuTexVerifierUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuTexture.js": [ - [ - {} - ] + [] ], "deqp/framework/common/tcuTextureUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/delibs/debase/deMath.js": [ - [ - {} - ] + [] ], "deqp/framework/delibs/debase/deRandom.js": [ - [ - {} - ] + [] ], "deqp/framework/delibs/debase/deString.js": [ - [ - {} - ] + [] ], "deqp/framework/delibs/debase/deUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluDrawUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluObjectWrapper.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluPixelTransfer.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluShaderProgram.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluShaderUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluStrUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluTexture.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluTextureUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluVarType.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/gluVarTypeUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/simplereference/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/framework/opengl/simplereference/sglrGLContext.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/simplereference/sglrReferenceContext.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/simplereference/sglrReferenceContextTest.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/simplereference/sglrReferenceUtils.js": [ - [ - {} - ] + [] ], "deqp/framework/opengl/simplereference/sglrShaderProgram.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrDefs.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrFragmentOperations.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrGenericVector.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrMultisamplePixelBufferAccess.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrRenderState.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrRenderer.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrShaders.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrShadingContext.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrUtil.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrVertexAttrib.js": [ - [ - {} - ] + [] ], "deqp/framework/referencerenderer/rrVertexPacket.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/builtinprecision/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/builtinprecision/builtinprecision_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/draw/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/draw/draw_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fApiCase.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fAttribLocationTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fBooleanStateQuery.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fBufferCopyTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fBufferObjectQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fBuiltinPrecisionTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fClippingTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fDefaultVertexAttributeTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fDrawTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboColorbufferTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboCompletenessTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboDepthbufferTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboInvalidateTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboMultisampleTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboRenderTest.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboStateQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboStencilbufferTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboTestCase.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFboTestUtil.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFloatStateQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFragDepthTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFragmentOutputTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fFramebufferBlitTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fIndexedStateQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fInstancedRenderingTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fIntegerStateQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fInternalFormatQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fLifetimeTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fMultisampleTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fNegativeBufferApiTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fNegativeFragmentApiTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fNegativeShaderApiTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fNegativeStateApiTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fNegativeTextureApiTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fNegativeVertexArrayApiTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fOcclusionQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fPixelBufferObjectTest.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fPrimitiveRestartTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fRasterizerDiscardTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fRboStateQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fReadPixelTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fSamplerObjectTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fSamplerStateQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderApiTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderBuiltinVarTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderCommonFunctionTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderDerivateTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderIndexingTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderLoopTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderMatrixTest.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderOperatorTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderPackingFunctionTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderPrecisionTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderStateQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderStructTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderSwitchTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fShaderTextureFunctionTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fStringQueryTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fSyncTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fTextureFilteringTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fTextureFormatTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fTextureShadowTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fTextureSpecificationTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fTextureStateQuery.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fTextureWrapTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fTransformFeedbackTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fUniformApiTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fUniformBlockTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fVertexArrayObjectTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/es3fVertexArrayTests.js": [ - [ - {} - ] + [] ], "deqp/functional/gles3/fbocolorbuffer/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/fbocolorbuffer/fbocolorbuffer_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/fboinvalidate/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/fboinvalidate/fboinvalidate_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/fborender/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/fborender/fborender_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/fragmentoutput/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/fragmentoutput/fragmentoutput_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/framebufferblit/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/framebufferblit/frambufferblit_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/primitiverestart/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/primitiverestart/primitiverestart_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/shaderindexing/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/shaderindexing/shaderindexing_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/shadermatrix/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/shadermatrix/shadermatrix_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/shaderoperator/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/shaderoperator/shaderoperator_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/shadertexturefunction/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/shadertexturefunction/shadertexturefunction_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/texturefiltering/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/texturefiltering/texturefiltering_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/textureformat/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/textureformat/textureformat_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/textureshadow/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/textureshadow/textureshadow_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/texturespecification/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/texturespecification/texturespecification_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/texturewrap/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/texturewrap/texturewrap_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/transformfeedback/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/transformfeedback/transformfeedback_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/uniformapi/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/uniformapi/uniformapi_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/uniformbuffers/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/uniformbuffers/uniformbuffers_test_generator.py": [ - [ - {} - ] + [] ], "deqp/functional/gles3/vertexarrays/00_test_list.txt": [ - [ - {} - ] + [] ], "deqp/functional/gles3/vertexarrays/vertexarrays_test_generator.py": [ - [ - {} - ] + [] ], "deqp/genHTMLfromTest.py": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsAttributeLocationTests.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsBufferTestUtil.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsBuiltinPrecisionTests.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsBuiltinPrecisionTestsUnitTests.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsDrawTests.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsFboCompletenessTests.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsFboUtil.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsLifetimeTests.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsRandomUniformBlockCase.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsSamplerObjectTest.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsShaderExecUtil.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsShaderLibrary.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsShaderLibraryCase.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsShaderRenderCase.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsStateQuery.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsTextureTestUtil.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsUniformBlockCase.js": [ - [ - {} - ] + [] ], "deqp/modules/shared/glsVertexArrayTests.js": [ - [ - {} - ] + [] ], "deqp/run-closure.sh": [ - [ - {} - ] + [] ], "deqp/temp_externs/chrome.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/deprecated.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/es3.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/es5.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/es6.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/es6_collections.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/fileapi.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/flash.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/gecko_css.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/gecko_dom.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/gecko_event.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/gecko_xml.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/google.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/html5.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/ie_css.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/ie_dom.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/ie_event.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/ie_vml.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/intl.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/iphone.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/mediasource.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/page_visibility.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/v8.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_anim_timing.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_css.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_css3d.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_device_sensor_event.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_dom1.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_dom2.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_dom3.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_elementtraversal.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_encoding.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_event.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_event3.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_geolocation.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_indexeddb.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_navigation_timing.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_range.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_rtc.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_selectors.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/w3c_xml.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/webkit_css.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/webkit_dom.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/webkit_event.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/webkit_notifications.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/webstorage.js": [ - [ - {} - ] + [] ], "deqp/temp_externs/window.js": [ - [ - {} - ] + [] ], "deqp/test-webgl2.js": [ - [ - {} - ] + [] ], "deqp/test-webgl2.sh": [ - [ - {} - ] + [] ], "deqp/webgl2.js": [ - [ - {} - ] + [] ], "extra/50x50pixel-black-with-red-triangle.png": [ - [ - {} - ] + [] ], "extra/canvas-compositing-test.png": [ - [ - {} - ] + [] ], "extra/logo-256x256.png": [ - [ - {} - ] + [] ], "extra/sample-100.png": [ - [ - {} - ] + [] ], "extra/sample-200.png": [ - [ - {} - ] + [] ], "extra/sample-400.png": [ - [ - {} - ] + [] ], "extra/sample.svg": [ - [ - {} - ] + [] ], "extra/tex-image-with-video-test.js": [ - [ - {} - ] + [] ], "js/desktop-gl-constants.js": [ - [ - {} - ] + [] ], "js/glsl-conformance-test.js": [ - [ - {} - ] + [] ], "js/glsl-constructor-tests-generator.js": [ - [ - {} - ] + [] ], "js/glsl-generator.js": [ - [ - {} - ] + [] ], "js/js-test-post.js": [ - [ - {} - ] + [] ], "js/js-test-pre.js": [ - [ - {} - ] + [] ], "js/pnglib.js": [ - [ - {} - ] + [] ], "js/test-eval.js": [ - [ - {} - ] + [] ], "js/tests/canvas-tests-utils.js": [ - [ - {} - ] + [] ], "js/tests/clipping-wide-points.js": [ - [ - {} - ] + [] ], "js/tests/compound-assignment-type-combination.js": [ - [ - {} - ] + [] ], "js/tests/gl-bindattriblocation-aliasing.js": [ - [ - {} - ] + [] ], "js/tests/gl-enum-tests.js": [ - [ - {} - ] + [] ], "js/tests/gl-get-tex-parameter.js": [ - [ - {} - ] + [] ], "js/tests/gl-object-get-calls.js": [ - [ - {} - ] + [] ], "js/tests/gl-vertex-attrib.js": [ - [ - {} - ] + [] ], "js/tests/instanceof-test.js": [ - [ - {} - ] + [] ], "js/tests/iterable-test.js": [ - [ - {} - ] + [] ], "js/tests/line-rendering-quality.js": [ - [ - {} - ] + [] ], "js/tests/no-over-optimizations-on-uniform-array.js": [ - [ - {} - ] + [] ], "js/tests/oes-texture-float-and-half-float-linear.js": [ - [ - {} - ] + [] ], "js/tests/offscreencanvas-transfer-image-bitmap.js": [ - [ - {} - ] + [] ], "js/tests/out-of-bounds-test.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-canvas-sub-rectangle.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-canvas.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-image-bitmap-from-blob.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-image-bitmap-from-canvas.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-image-bitmap-from-image-bitmap.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-image-bitmap-from-image-data.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-image-bitmap-from-image.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-image-bitmap-from-video.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-image-data.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-image.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-svg-image.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-video.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-2d-with-webgl-canvas.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-canvas-sub-rectangle.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-canvas.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-image-bitmap-from-blob.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-image-bitmap-from-canvas.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-image-bitmap-from-image-bitmap.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-image-bitmap-from-image-data.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-image-bitmap-from-image.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-image-bitmap-from-video.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-image-data.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-image.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-svg-image.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-video.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-3d-with-webgl-canvas.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-utils.js": [ - [ - {} - ] + [] ], "js/tests/tex-image-and-sub-image-with-image-bitmap-utils.js": [ - [ - {} - ] + [] ], "js/tests/tex-input-validation.js": [ - [ - {} - ] + [] ], "js/tests/texture-corner-case-videos.js": [ - [ - {} - ] + [] ], "js/tests/typed-array-test-cases.js": [ - [ - {} - ] + [] ], "js/tests/typed-array-worker.js": [ - [ - {} - ] + [] ], "js/tests/webgl-compressed-texture-size-limit.js": [ - [ - {} - ] + [] ], "js/tests/webgl-draw-buffers-utils.js": [ - [ - {} - ] + [] ], "js/tests/webgl_multiview_util.js": [ - [ - {} - ] + [] ], "js/webgl-test-harness.js": [ - [ - {} - ] + [] ], "js/webgl-test-utils.js": [ - [ - {} - ] + [] ], "py/lint/LICENSE": [ - [ - {} - ] + [] ], "py/lint/README.md": [ - [ - {} - ] + [] ], "py/lint/lint.py": [ - [ - {} - ] + [] ], "py/lint/lint.whitelist": [ - [ - {} - ] + [] ], "py/tex_image_test_generator.py": [ - [ - {} - ] + [] ], "resources/1-channel.jpg": [ - [ - {} - ] + [] ], "resources/3x3.png": [ - [ - {} - ] + [] ], "resources/blue-1x1.jpg": [ - [ - {} - ] + [] ], "resources/boolUniformShader.vert": [ - [ - {} - ] + [] ], "resources/bug-32888-texture.png": [ - [ - {} - ] + [] ], "resources/floatUniformShader.vert": [ - [ - {} - ] + [] ], "resources/fragmentShader.frag": [ - [ - {} - ] + [] ], "resources/glsl-feature-tests.css": [ - [ - {} - ] + [] ], "resources/glsl-generator.js": [ - [ - {} - ] + [] ], "resources/gray-1024x1024.jpg": [ - [ - {} - ] + [] ], "resources/gray-ramp-256-with-128-alpha.png": [ - [ - {} - ] + [] ], "resources/gray-ramp-256.png": [ - [ - {} - ] + [] ], "resources/gray-ramp-default-gamma.png": [ - [ - {} - ] + [] ], "resources/gray-ramp-gamma0.1.png": [ - [ - {} - ] + [] ], "resources/gray-ramp-gamma1.0.png": [ - [ - {} - ] + [] ], "resources/gray-ramp-gamma2.0.png": [ - [ - {} - ] + [] ], "resources/gray-ramp-gamma4.0.png": [ - [ - {} - ] + [] ], "resources/gray-ramp-gamma9.0.png": [ - [ - {} - ] + [] ], "resources/gray-ramp.png": [ - [ - {} - ] + [] ], "resources/green-2x2-16bit.png": [ - [ - {} - ] + [] ], "resources/intArrayUniformShader.vert": [ - [ - {} - ] + [] ], "resources/intUniformShader.vert": [ - [ - {} - ] + [] ], "resources/js-test-style.css": [ - [ - {} - ] + [] ], "resources/matForWebGL2UniformShader.vert": [ - [ - {} - ] + [] ], "resources/matUniformShader.vert": [ - [ - {} - ] + [] ], "resources/noopUniformShader.frag": [ - [ - {} - ] + [] ], "resources/noopUniformShader.vert": [ - [ - {} - ] + [] ], "resources/noopUniformShaderES3.frag": [ - [ - {} - ] + [] ], "resources/noopUniformShaderES3.vert": [ - [ - {} - ] + [] ], "resources/npot-video-1920x1080.mp4": [ - [ - {} - ] + [] ], "resources/npot-video.mp4": [ - [ - {} - ] + [] ], "resources/npot-video.theora.ogv": [ - [ - {} - ] + [] ], "resources/npot-video.webmvp8.webm": [ - [ - {} - ] + [] ], "resources/ogles-tests.css": [ - [ - {} - ] + [] ], "resources/opengl_logo.jpg": [ - [ - {} - ] + [] ], "resources/red-green-480x272-sar-136x135-dar-16x9.mp4": [ - [ - {} - ] + [] ], "resources/red-green-480x272.png": [ - [ - {} - ] + [] ], "resources/red-green-blue-cyan-4x4.png": [ - [ - {} - ] + [] ], "resources/red-green-blue-cyan-4x4.psd": [ - [ - {} - ] + [] ], "resources/red-green-hard.hdr": [ - [ - {} - ] + [] ], "resources/red-green-hard.png": [ - [ - {} - ] + [] ], "resources/red-green-semi-transparent.png": [ - [ - {} - ] + [] ], "resources/red-green.bt601.vp9.webm": [ - [ - {} - ] + [] ], "resources/red-green.mp4": [ - [ - {} - ] + [] ], "resources/red-green.png": [ - [ - {} - ] + [] ], "resources/red-green.svg": [ - [ - {} - ] + [] ], "resources/red-green.theora.ogv": [ - [ - {} - ] + [] ], "resources/red-green.webmvp8.webm": [ - [ - {} - ] + [] ], "resources/red-indexed.png": [ - [ - {} - ] + [] ], "resources/samplerForWebGL2UniformShader.frag": [ - [ - {} - ] + [] ], "resources/samplerUniformShader.frag": [ - [ - {} - ] + [] ], "resources/small-square-with-cie-rgb-profile.png": [ - [ - {} - ] + [] ], "resources/small-square-with-colormatch-profile.png": [ - [ - {} - ] + [] ], "resources/small-square-with-colorspin-profile.jpg": [ - [ - {} - ] + [] ], "resources/small-square-with-colorspin-profile.png": [ - [ - {} - ] + [] ], "resources/small-square-with-e-srgb-profile.png": [ - [ - {} - ] + [] ], "resources/small-square-with-smpte-c-profile.png": [ - [ - {} - ] + [] ], "resources/small-square-with-srgb-iec61966-2.1-profile.png": [ - [ - {} - ] + [] ], "resources/structUniformShader.vert": [ - [ - {} - ] + [] ], "resources/thunderbird-logo-64x64.png": [ - [ - {} - ] + [] ], "resources/transparent-on-left-indexed.png": [ - [ - {} - ] + [] ], "resources/uintUniformShader.vert": [ - [ - {} - ] + [] ], "resources/uniformBlockShader.frag": [ - [ - {} - ] + [] ], "resources/uniformBlockShader.vert": [ - [ - {} - ] + [] ], "resources/vertexShader.vert": [ - [ - {} - ] + [] ], "resources/webgl-logo.png": [ - [ - {} - ] + [] ], "resources/zero-alpha.png": [ - [ - {} - ] + [] ], "test-guidelines.md": [ - [ - {} - ] + [] ] }, "testharness": { @@ -10999,12 +6942,6 @@ {} ] ], - "conformance/glsl/bugs/complex-glsl-does-not-crash.html": [ - [ - "conformance/glsl/bugs/complex-glsl-does-not-crash.html", - {} - ] - ], "conformance/glsl/bugs/compound-assignment-type-combination.html": [ [ "conformance/glsl/bugs/compound-assignment-type-combination.html", @@ -11101,12 +7038,6 @@ {} ] ], - "conformance/glsl/bugs/long-expressions-should-not-crash.html": [ - [ - "conformance/glsl/bugs/long-expressions-should-not-crash.html", - {} - ] - ], "conformance/glsl/bugs/loop-if-loop-gradient.html": [ [ "conformance/glsl/bugs/loop-if-loop-gradient.html", @@ -11125,12 +7056,6 @@ {} ] ], - "conformance/glsl/bugs/nested-functions-should-not-crash.html": [ - [ - "conformance/glsl/bugs/nested-functions-should-not-crash.html", - {} - ] - ], "conformance/glsl/bugs/nested-loops-with-break-and-continue.html": [ [ "conformance/glsl/bugs/nested-loops-with-break-and-continue.html", @@ -11149,24 +7074,6 @@ {} ] ], - "conformance/glsl/bugs/pow-with-constant-exponent-should-not-crash.html": [ - [ - "conformance/glsl/bugs/pow-with-constant-exponent-should-not-crash.html", - {} - ] - ], - "conformance/glsl/bugs/qualcomm-crash.html": [ - [ - "conformance/glsl/bugs/qualcomm-crash.html", - {} - ] - ], - "conformance/glsl/bugs/qualcomm-loop-with-continue-crash.html": [ - [ - "conformance/glsl/bugs/qualcomm-loop-with-continue-crash.html", - {} - ] - ], "conformance/glsl/bugs/sampler-array-struct-function-arg.html": [ [ "conformance/glsl/bugs/sampler-array-struct-function-arg.html", @@ -11191,12 +7098,6 @@ {} ] ], - "conformance/glsl/bugs/sketchfab-lighting-shader-crash.html": [ - [ - "conformance/glsl/bugs/sketchfab-lighting-shader-crash.html", - {} - ] - ], "conformance/glsl/bugs/struct-constructor-highp-bug.html": [ [ "conformance/glsl/bugs/struct-constructor-highp-bug.html", @@ -11209,26 +7110,12 @@ {} ] ], - "conformance/glsl/bugs/temp-expressions-should-not-crash.html": [ - [ - "conformance/glsl/bugs/temp-expressions-should-not-crash.html", - { - "timeout": "long" - } - ] - ], "conformance/glsl/bugs/unary-minus-operator-float-bug.html": [ [ "conformance/glsl/bugs/unary-minus-operator-float-bug.html", {} ] ], - "conformance/glsl/bugs/undefined-index-should-not-crash.html": [ - [ - "conformance/glsl/bugs/undefined-index-should-not-crash.html", - {} - ] - ], "conformance/glsl/bugs/uniforms-should-not-lose-values.html": [ [ "conformance/glsl/bugs/uniforms-should-not-lose-values.html", @@ -15327,12 +11214,6 @@ {} ] ], - "conformance/textures/misc/copy-tex-image-crash.html": [ - [ - "conformance/textures/misc/copy-tex-image-crash.html", - {} - ] - ], "conformance/textures/misc/copytexsubimage2d-large-partial-copy-corruption.html": [ [ "conformance/textures/misc/copytexsubimage2d-large-partial-copy-corruption.html", @@ -15749,18 +11630,6 @@ {} ] ], - "conformance/typedarrays/array-buffer-crash.html": [ - [ - "conformance/typedarrays/array-buffer-crash.html", - {} - ] - ], - "conformance/typedarrays/array-buffer-view-crash.html": [ - [ - "conformance/typedarrays/array-buffer-view-crash.html", - {} - ] - ], "conformance/typedarrays/array-large-array-tests.html": [ [ "conformance/typedarrays/array-large-array-tests.html", @@ -15773,12 +11642,6 @@ {} ] ], - "conformance/typedarrays/data-view-crash.html": [ - [ - "conformance/typedarrays/data-view-crash.html", - {} - ] - ], "conformance/typedarrays/data-view-test.html": [ [ "conformance/typedarrays/data-view-test.html", @@ -16931,6 +12794,12 @@ {} ] ], + "conformance2/rendering/rgb-format-support.html": [ + [ + "conformance2/rendering/rgb-format-support.html", + {} + ] + ], "conformance2/rendering/texture-switch-performance.html": [ [ "conformance2/rendering/texture-switch-performance.html", @@ -21089,12 +16958,6 @@ {} ] ], - "conformance2/textures/misc/compressed-tex-from-pbo-crash.html": [ - [ - "conformance2/textures/misc/compressed-tex-from-pbo-crash.html", - {} - ] - ], "conformance2/textures/misc/copy-texture-cube-map-AMD-bug.html": [ [ "conformance2/textures/misc/copy-texture-cube-map-AMD-bug.html", @@ -28194,7 +24057,7 @@ ], "conformance/glsl/bugs/complex-glsl-does-not-crash.html": [ "8d65482d46c69f1bcf665d67b838640deb88e2b5", - "testharness" + "crashtest" ], "conformance/glsl/bugs/compound-assignment-type-combination.html": [ "1a88ad6b1ec07b0054ff3333894338112d2a445a", @@ -28262,7 +24125,7 @@ ], "conformance/glsl/bugs/long-expressions-should-not-crash.html": [ "229f0486e995bee9b41ed1fa469dd409d1a6f90d", - "testharness" + "crashtest" ], "conformance/glsl/bugs/loop-if-loop-gradient.html": [ "5e8cd41d8f68d9c7f82245078232344bd8be9254", @@ -28278,7 +24141,7 @@ ], "conformance/glsl/bugs/nested-functions-should-not-crash.html": [ "6232560db479b119ff5ecc6db74e5554cd690304", - "testharness" + "crashtest" ], "conformance/glsl/bugs/nested-loops-with-break-and-continue.html": [ "cc3506ac8bb2c849df34efe198afdac483b9fcf1", @@ -28294,15 +24157,15 @@ ], "conformance/glsl/bugs/pow-with-constant-exponent-should-not-crash.html": [ "15fdadaffc7997b963ccf5a59417fe80a253613c", - "testharness" + "crashtest" ], "conformance/glsl/bugs/qualcomm-crash.html": [ "ad984b77f8a3bbee3c01dca7f1e0f8018fca403d", - "testharness" + "crashtest" ], "conformance/glsl/bugs/qualcomm-loop-with-continue-crash.html": [ "2480246fa017cf165add8ee672448667a0744544", - "testharness" + "crashtest" ], "conformance/glsl/bugs/sampler-array-struct-function-arg.html": [ "6d3cf43ff3c901ae7ed430037fb6fb79016ca728", @@ -28322,7 +24185,7 @@ ], "conformance/glsl/bugs/sketchfab-lighting-shader-crash.html": [ "d9b3cbee09e6baca081068032677f592b5f97005", - "testharness" + "crashtest" ], "conformance/glsl/bugs/struct-constructor-highp-bug.html": [ "e54124859a04e65a6329d7d4afd47223cfb5f80b", @@ -28334,7 +24197,7 @@ ], "conformance/glsl/bugs/temp-expressions-should-not-crash.html": [ "30a734c642071ebf5232c2a46ea98a1a79b2581b", - "testharness" + "crashtest" ], "conformance/glsl/bugs/unary-minus-operator-float-bug.html": [ "ed708ea38fac12881e7f409db67300e0396adb8e", @@ -28342,7 +24205,7 @@ ], "conformance/glsl/bugs/undefined-index-should-not-crash.html": [ "61975e2bd959116717c4192ea4869190dc6f7efc", - "testharness" + "crashtest" ], "conformance/glsl/bugs/uniforms-should-not-lose-values.html": [ "d7dadb5d6cce921aa57114d7465ff11d08bc8dbd", @@ -37202,7 +33065,7 @@ ], "conformance/textures/misc/copy-tex-image-crash.html": [ "1d750665564287d9068f1c9c7a0132ada483ae08", - "testharness" + "crashtest" ], "conformance/textures/misc/copytexsubimage2d-large-partial-copy-corruption.html": [ "e276f816dbf0fffeb8cc92a39bed5102ce0aebcf", @@ -37498,11 +33361,11 @@ ], "conformance/typedarrays/array-buffer-crash.html": [ "6899aa7c7de439059ff1e46b71b50c4ccd7e3523", - "testharness" + "crashtest" ], "conformance/typedarrays/array-buffer-view-crash.html": [ "19057e8bb9b1e858556f43d9577dd00bad9d6292", - "testharness" + "crashtest" ], "conformance/typedarrays/array-large-array-tests.html": [ "d008f73133b1bae89fa8f7d5cb1f560974a45c16", @@ -37514,7 +33377,7 @@ ], "conformance/typedarrays/data-view-crash.html": [ "82cca1bc037a0720c36663bb8c954ee83d858b26", - "testharness" + "crashtest" ], "conformance/typedarrays/data-view-test.html": [ "12918504e9f91740ef24b506fed60c50721e05dc", @@ -38354,7 +34217,7 @@ ], "conformance2/rendering/rgb-format-support.html": [ "7de62ce40c3fc453beb3a0fa7af8fc730eaee640", - "support" + "testharness" ], "conformance2/rendering/texture-switch-performance.html": [ "19cf2e9d20cb452150e9ac1d3e617dfd0a7df3fa", @@ -41190,7 +37053,7 @@ ], "conformance2/textures/misc/compressed-tex-from-pbo-crash.html": [ "55d0e526166272251480d078e67a492c93266d21", - "testharness" + "crashtest" ], "conformance2/textures/misc/copy-texture-cube-map-AMD-bug.html": [ "807ec186413fd8fb058b5ce1c559117e114d3ac6", @@ -47246,5 +43109,5 @@ ] }, "url_base": "/_webgl/", - "version": 6 + "version": 7 } |