diff --git a/devtools/client/debugger/new/README.mozilla b/devtools/client/debugger/new/README.mozilla index ada264fb039c..579cda2c18e9 100644 --- a/devtools/client/debugger/new/README.mozilla +++ b/devtools/client/debugger/new/README.mozilla @@ -1,9 +1,9 @@ This is the debugger.html project output. See https://github.com/devtools-html/debugger.html -Version 123 +Version 124 -Comparison: https://github.com/devtools-html/debugger.html/compare/release-122...release-123 +Comparison: https://github.com/devtools-html/debugger.html/compare/release-123...release-124 Packages: - babel-plugin-transform-es2015-modules-commonjs @6.26.2 diff --git a/devtools/client/debugger/new/dist/debugger.css b/devtools/client/debugger/new/dist/debugger.css index ba3c4100d1dd..ad278b31a95f 100644 --- a/devtools/client/debugger/new/dist/debugger.css +++ b/devtools/client/debugger/new/dist/debugger.css @@ -1075,6 +1075,10 @@ html[dir="rtl"] .managed-tree .tree .node > div { background: var(--theme-icon-color); mask-size: 100%; } + +.img.arrow.arrow.expanded { + transform: rotate(0deg); +} /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at . */ @@ -2331,10 +2335,6 @@ menuseparator { color: inherit; } -.sources-list .tree .img.arrow.expanded { - transform: rotate(0deg); -} - .theme-dark .source-list .tree .node.focused { background-color: var(--theme-tab-toolbar-background); } @@ -3761,8 +3761,8 @@ html[dir="rtl"] .breakpoints-list .breakpoint .breakpoint-line { * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at . */ -.frames [role="list"] .frames-group .group, -.frames [role="list"] .frames-group .group .location { +.frames ul .frames-group .group, +.frames ul .frames-group .group .location { font-weight: 500; cursor: default; /* @@ -3773,30 +3773,25 @@ html[dir="rtl"] .breakpoints-list .breakpoint .breakpoint-line { direction: ltr; } -.frames [role="list"] .frames-group.expanded .group, -.frames [role="list"] .frames-group.expanded .group .location { +.frames ul .frames-group.expanded .group, +.frames ul .frames-group.expanded .group .location { color: var(--theme-highlight-blue); } -.frames [role="list"] .frames-group.expanded .react path { +.frames ul .frames-group.expanded .react path { fill: var(--theme-highlight-blue); } -.frames [role="list"] .frames-group .frames-list [role="listitem"] { +.frames ul .frames-group .frames-list li { padding-left: 30px; } -.frames [role="list"] .frames-group .frames-list { +.frames ul .frames-group .frames-list { border-top: 1px solid var(--theme-splitter-color); border-bottom: 1px solid var(--theme-splitter-color); } -/* We don't want to display those as flex since only the name is displayed */ -.frames [role="list"] .frames-group .frames-list [role="listitem"] { - display: block; -} - -.frames [role="list"] .frames-group.expanded .badge { +.frames ul .frames-group.expanded .badge { color: var(--theme-highlight-blue); } @@ -3862,7 +3857,7 @@ html[dir="rtl"] .breakpoints-list .breakpoint .breakpoint-line { .frames [role="list"] { list-style: none; - margin: 0; + margin-top: 4px; padding: 0; } @@ -3964,7 +3959,6 @@ html[dir="rtl"] .breakpoints-list .breakpoint .breakpoint-line { mask-size: 100%; display: inline-block; width: 12px; - margin-inline-start: 4px; } :root.theme-dark .annotation-logo:not(.angular) svg path { @@ -4624,6 +4618,13 @@ html .welcomebox .toggle-button-end.collapsed { user-select: none; } +.source-header .command-bar { + flex: initial; + flex-shrink: 0; + border-bottom: 0; + border-inline-start: 1px solid var(--theme-splitter-color); +} + .source-tabs { max-width: calc(100% - 80px); align-self: flex-start; @@ -4652,7 +4653,8 @@ html .welcomebox .toggle-button-end.collapsed { width: 100%; height: 2px; background-color: var(--tab-line-color, transparent); - transition: transform 250ms var(--animation-curve), opacity 250ms var(--animation-curve); + transition: transform 250ms var(--animation-curve), + opacity 250ms var(--animation-curve); opacity: 0; transform: scaleX(0); } diff --git a/devtools/client/debugger/new/dist/parser-worker.js b/devtools/client/debugger/new/dist/parser-worker.js index af68c25bc3f0..a89dbfb00756 100644 --- a/devtools/client/debugger/new/dist/parser-worker.js +++ b/devtools/client/debugger/new/dist/parser-worker.js @@ -20759,8 +20759,6 @@ var _types = __webpack_require__(2268); var t = _interopRequireWildcard(_types); -var _devtoolsSourceMap = __webpack_require__(3646); - var _getFunctionName = __webpack_require__(1621); var _getFunctionName2 = _interopRequireDefault(_getFunctionName); @@ -20795,6 +20793,14 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de // Location information about the expression immediartely surrounding a // given binding reference. +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at . */ + +function isGeneratedId(id) { + return !/\/originalSource/.test(id); +} + function parseSourceScopes(sourceId) { const ast = (0, _ast.getAst)(sourceId); if ((0, _isEmpty2.default)(ast)) { @@ -20802,9 +20808,7 @@ function parseSourceScopes(sourceId) { } return buildScopeList(ast, sourceId); -} /* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ +} function buildScopeList(ast, sourceId) { const { global, lexical } = createGlobalScope(ast, sourceId); @@ -20836,7 +20840,7 @@ function buildScopeList(ast, sourceId) { // TODO: This should probably check for ".mjs" extension on the // original file, and should also be skipped if the the generated // code is an ES6 module rather than a script. - if ((0, _devtoolsSourceMap.isGeneratedId)(sourceId) || ast.program.sourceType === "script" && !looksLikeCommonJS(global)) { + if (isGeneratedId(sourceId) || ast.program.sourceType === "script" && !looksLikeCommonJS(global)) { stripModuleScope(global); } @@ -21479,344 +21483,6 @@ function stripModuleScope(rootScope) { }); } -/***/ }), - -/***/ 248: -/***/ (function(module, exports, __webpack_require__) { - -(function(){ - var crypt = __webpack_require__(249), - utf8 = __webpack_require__(250).utf8, - isBuffer = __webpack_require__(251), - bin = __webpack_require__(250).bin, - - // The core - md5 = function (message, options) { - // Convert to byte array - if (message.constructor == String) - if (options && options.encoding === 'binary') - message = bin.stringToBytes(message); - else - message = utf8.stringToBytes(message); - else if (isBuffer(message)) - message = Array.prototype.slice.call(message, 0); - else if (!Array.isArray(message)) - message = message.toString(); - // else, assume byte array already - - var m = crypt.bytesToWords(message), - l = message.length * 8, - a = 1732584193, - b = -271733879, - c = -1732584194, - d = 271733878; - - // Swap endian - for (var i = 0; i < m.length; i++) { - m[i] = ((m[i] << 8) | (m[i] >>> 24)) & 0x00FF00FF | - ((m[i] << 24) | (m[i] >>> 8)) & 0xFF00FF00; - } - - // Padding - m[l >>> 5] |= 0x80 << (l % 32); - m[(((l + 64) >>> 9) << 4) + 14] = l; - - // Method shortcuts - var FF = md5._ff, - GG = md5._gg, - HH = md5._hh, - II = md5._ii; - - for (var i = 0; i < m.length; i += 16) { - - var aa = a, - bb = b, - cc = c, - dd = d; - - a = FF(a, b, c, d, m[i+ 0], 7, -680876936); - d = FF(d, a, b, c, m[i+ 1], 12, -389564586); - c = FF(c, d, a, b, m[i+ 2], 17, 606105819); - b = FF(b, c, d, a, m[i+ 3], 22, -1044525330); - a = FF(a, b, c, d, m[i+ 4], 7, -176418897); - d = FF(d, a, b, c, m[i+ 5], 12, 1200080426); - c = FF(c, d, a, b, m[i+ 6], 17, -1473231341); - b = FF(b, c, d, a, m[i+ 7], 22, -45705983); - a = FF(a, b, c, d, m[i+ 8], 7, 1770035416); - d = FF(d, a, b, c, m[i+ 9], 12, -1958414417); - c = FF(c, d, a, b, m[i+10], 17, -42063); - b = FF(b, c, d, a, m[i+11], 22, -1990404162); - a = FF(a, b, c, d, m[i+12], 7, 1804603682); - d = FF(d, a, b, c, m[i+13], 12, -40341101); - c = FF(c, d, a, b, m[i+14], 17, -1502002290); - b = FF(b, c, d, a, m[i+15], 22, 1236535329); - - a = GG(a, b, c, d, m[i+ 1], 5, -165796510); - d = GG(d, a, b, c, m[i+ 6], 9, -1069501632); - c = GG(c, d, a, b, m[i+11], 14, 643717713); - b = GG(b, c, d, a, m[i+ 0], 20, -373897302); - a = GG(a, b, c, d, m[i+ 5], 5, -701558691); - d = GG(d, a, b, c, m[i+10], 9, 38016083); - c = GG(c, d, a, b, m[i+15], 14, -660478335); - b = GG(b, c, d, a, m[i+ 4], 20, -405537848); - a = GG(a, b, c, d, m[i+ 9], 5, 568446438); - d = GG(d, a, b, c, m[i+14], 9, -1019803690); - c = GG(c, d, a, b, m[i+ 3], 14, -187363961); - b = GG(b, c, d, a, m[i+ 8], 20, 1163531501); - a = GG(a, b, c, d, m[i+13], 5, -1444681467); - d = GG(d, a, b, c, m[i+ 2], 9, -51403784); - c = GG(c, d, a, b, m[i+ 7], 14, 1735328473); - b = GG(b, c, d, a, m[i+12], 20, -1926607734); - - a = HH(a, b, c, d, m[i+ 5], 4, -378558); - d = HH(d, a, b, c, m[i+ 8], 11, -2022574463); - c = HH(c, d, a, b, m[i+11], 16, 1839030562); - b = HH(b, c, d, a, m[i+14], 23, -35309556); - a = HH(a, b, c, d, m[i+ 1], 4, -1530992060); - d = HH(d, a, b, c, m[i+ 4], 11, 1272893353); - c = HH(c, d, a, b, m[i+ 7], 16, -155497632); - b = HH(b, c, d, a, m[i+10], 23, -1094730640); - a = HH(a, b, c, d, m[i+13], 4, 681279174); - d = HH(d, a, b, c, m[i+ 0], 11, -358537222); - c = HH(c, d, a, b, m[i+ 3], 16, -722521979); - b = HH(b, c, d, a, m[i+ 6], 23, 76029189); - a = HH(a, b, c, d, m[i+ 9], 4, -640364487); - d = HH(d, a, b, c, m[i+12], 11, -421815835); - c = HH(c, d, a, b, m[i+15], 16, 530742520); - b = HH(b, c, d, a, m[i+ 2], 23, -995338651); - - a = II(a, b, c, d, m[i+ 0], 6, -198630844); - d = II(d, a, b, c, m[i+ 7], 10, 1126891415); - c = II(c, d, a, b, m[i+14], 15, -1416354905); - b = II(b, c, d, a, m[i+ 5], 21, -57434055); - a = II(a, b, c, d, m[i+12], 6, 1700485571); - d = II(d, a, b, c, m[i+ 3], 10, -1894986606); - c = II(c, d, a, b, m[i+10], 15, -1051523); - b = II(b, c, d, a, m[i+ 1], 21, -2054922799); - a = II(a, b, c, d, m[i+ 8], 6, 1873313359); - d = II(d, a, b, c, m[i+15], 10, -30611744); - c = II(c, d, a, b, m[i+ 6], 15, -1560198380); - b = II(b, c, d, a, m[i+13], 21, 1309151649); - a = II(a, b, c, d, m[i+ 4], 6, -145523070); - d = II(d, a, b, c, m[i+11], 10, -1120210379); - c = II(c, d, a, b, m[i+ 2], 15, 718787259); - b = II(b, c, d, a, m[i+ 9], 21, -343485551); - - a = (a + aa) >>> 0; - b = (b + bb) >>> 0; - c = (c + cc) >>> 0; - d = (d + dd) >>> 0; - } - - return crypt.endian([a, b, c, d]); - }; - - // Auxiliary functions - md5._ff = function (a, b, c, d, x, s, t) { - var n = a + (b & c | ~b & d) + (x >>> 0) + t; - return ((n << s) | (n >>> (32 - s))) + b; - }; - md5._gg = function (a, b, c, d, x, s, t) { - var n = a + (b & d | c & ~d) + (x >>> 0) + t; - return ((n << s) | (n >>> (32 - s))) + b; - }; - md5._hh = function (a, b, c, d, x, s, t) { - var n = a + (b ^ c ^ d) + (x >>> 0) + t; - return ((n << s) | (n >>> (32 - s))) + b; - }; - md5._ii = function (a, b, c, d, x, s, t) { - var n = a + (c ^ (b | ~d)) + (x >>> 0) + t; - return ((n << s) | (n >>> (32 - s))) + b; - }; - - // Package private blocksize - md5._blocksize = 16; - md5._digestsize = 16; - - module.exports = function (message, options) { - if (message === undefined || message === null) - throw new Error('Illegal argument ' + message); - - var digestbytes = crypt.wordsToBytes(md5(message, options)); - return options && options.asBytes ? digestbytes : - options && options.asString ? bin.bytesToString(digestbytes) : - crypt.bytesToHex(digestbytes); - }; - -})(); - - -/***/ }), - -/***/ 249: -/***/ (function(module, exports) { - -(function() { - var base64map - = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/', - - crypt = { - // Bit-wise rotation left - rotl: function(n, b) { - return (n << b) | (n >>> (32 - b)); - }, - - // Bit-wise rotation right - rotr: function(n, b) { - return (n << (32 - b)) | (n >>> b); - }, - - // Swap big-endian to little-endian and vice versa - endian: function(n) { - // If number given, swap endian - if (n.constructor == Number) { - return crypt.rotl(n, 8) & 0x00FF00FF | crypt.rotl(n, 24) & 0xFF00FF00; - } - - // Else, assume array and swap all items - for (var i = 0; i < n.length; i++) - n[i] = crypt.endian(n[i]); - return n; - }, - - // Generate an array of any length of random bytes - randomBytes: function(n) { - for (var bytes = []; n > 0; n--) - bytes.push(Math.floor(Math.random() * 256)); - return bytes; - }, - - // Convert a byte array to big-endian 32-bit words - bytesToWords: function(bytes) { - for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8) - words[b >>> 5] |= bytes[i] << (24 - b % 32); - return words; - }, - - // Convert big-endian 32-bit words to a byte array - wordsToBytes: function(words) { - for (var bytes = [], b = 0; b < words.length * 32; b += 8) - bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF); - return bytes; - }, - - // Convert a byte array to a hex string - bytesToHex: function(bytes) { - for (var hex = [], i = 0; i < bytes.length; i++) { - hex.push((bytes[i] >>> 4).toString(16)); - hex.push((bytes[i] & 0xF).toString(16)); - } - return hex.join(''); - }, - - // Convert a hex string to a byte array - hexToBytes: function(hex) { - for (var bytes = [], c = 0; c < hex.length; c += 2) - bytes.push(parseInt(hex.substr(c, 2), 16)); - return bytes; - }, - - // Convert a byte array to a base-64 string - bytesToBase64: function(bytes) { - for (var base64 = [], i = 0; i < bytes.length; i += 3) { - var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2]; - for (var j = 0; j < 4; j++) - if (i * 8 + j * 6 <= bytes.length * 8) - base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F)); - else - base64.push('='); - } - return base64.join(''); - }, - - // Convert a base-64 string to a byte array - base64ToBytes: function(base64) { - // Remove non-base-64 characters - base64 = base64.replace(/[^A-Z0-9+\/]/ig, ''); - - for (var bytes = [], i = 0, imod4 = 0; i < base64.length; - imod4 = ++i % 4) { - if (imod4 == 0) continue; - bytes.push(((base64map.indexOf(base64.charAt(i - 1)) - & (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2)) - | (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2))); - } - return bytes; - } - }; - - module.exports = crypt; -})(); - - -/***/ }), - -/***/ 250: -/***/ (function(module, exports) { - -var charenc = { - // UTF-8 encoding - utf8: { - // Convert a string to a byte array - stringToBytes: function(str) { - return charenc.bin.stringToBytes(unescape(encodeURIComponent(str))); - }, - - // Convert a byte array to a string - bytesToString: function(bytes) { - return decodeURIComponent(escape(charenc.bin.bytesToString(bytes))); - } - }, - - // Binary encoding - bin: { - // Convert a string to a byte array - stringToBytes: function(str) { - for (var bytes = [], i = 0; i < str.length; i++) - bytes.push(str.charCodeAt(i) & 0xFF); - return bytes; - }, - - // Convert a byte array to a string - bytesToString: function(bytes) { - for (var str = [], i = 0; i < bytes.length; i++) - str.push(String.fromCharCode(bytes[i])); - return str.join(''); - } - } -}; - -module.exports = charenc; - - -/***/ }), - -/***/ 251: -/***/ (function(module, exports) { - -/*! - * Determine if an object is a Buffer - * - * @author Feross Aboukhadijeh - * @license MIT - */ - -// The _isBuffer check is for Safari 5-7 support, because it's missing -// Object.prototype.constructor. Remove this eventually -module.exports = function (obj) { - return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer) -} - -function isBuffer (obj) { - return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj) -} - -// For Node v0.10 support. Remove this eventually. -function isSlowBuffer (obj) { - return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0)) -} - - /***/ }), /***/ 262: @@ -23124,79 +22790,6 @@ function mapOriginalExpression(expression, ast, mappings) { /***/ }), -/***/ 3646: -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -const { - originalToGeneratedId, - generatedToOriginalId, - isGeneratedId, - isOriginalId -} = __webpack_require__(3652); - -const { - workerUtils: { WorkerDispatcher } -} = __webpack_require__(3651); - -const dispatcher = new WorkerDispatcher(); - -const setAssetRootURL = dispatcher.task("setAssetRootURL"); -const getOriginalURLs = dispatcher.task("getOriginalURLs"); -const hasOriginalURL = dispatcher.task("hasOriginalURL"); -const getOriginalRanges = dispatcher.task("getOriginalRanges"); -const getGeneratedRanges = dispatcher.task("getGeneratedRanges", { - queue: true -}); -const getGeneratedLocation = dispatcher.task("getGeneratedLocation", { - queue: true -}); -const getAllGeneratedLocations = dispatcher.task("getAllGeneratedLocations", { - queue: true -}); -const getOriginalLocation = dispatcher.task("getOriginalLocation"); -const getFileGeneratedRange = dispatcher.task("getFileGeneratedRange"); -const getLocationScopes = dispatcher.task("getLocationScopes"); -const getOriginalSourceText = dispatcher.task("getOriginalSourceText"); -const applySourceMap = dispatcher.task("applySourceMap"); -const clearSourceMaps = dispatcher.task("clearSourceMaps"); -const hasMappedSource = dispatcher.task("hasMappedSource"); -const getOriginalStackFrames = dispatcher.task("getOriginalStackFrames"); - -module.exports = { - originalToGeneratedId, - generatedToOriginalId, - isGeneratedId, - isOriginalId, - hasMappedSource, - getOriginalURLs, - hasOriginalURL, - getOriginalRanges, - getGeneratedRanges, - getGeneratedLocation, - getAllGeneratedLocations, - getOriginalLocation, - getFileGeneratedRange, - getLocationScopes, - getOriginalSourceText, - applySourceMap, - clearSourceMaps, - getOriginalStackFrames, - startSourceMapWorker(url, assetRoot) { - dispatcher.start(url); - setAssetRootURL(assetRoot); - }, - stopSourceMapWorker: dispatcher.stop.bind(dispatcher) -}; - -/***/ }), - /***/ 3651: /***/ (function(module, exports, __webpack_require__) { @@ -23214,94 +22807,6 @@ module.exports = { /***/ }), -/***/ 3652: -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -const md5 = __webpack_require__(248); - -function originalToGeneratedId(originalId) { - const match = originalId.match(/(.*)\/originalSource/); - return match ? match[1] : ""; -} - -function generatedToOriginalId(generatedId, url) { - return `${generatedId}/originalSource-${md5(url)}`; -} - -function isOriginalId(id) { - return (/\/originalSource/.test(id) - ); -} - -function isGeneratedId(id) { - return !isOriginalId(id); -} - -/** - * Trims the query part or reference identifier of a URL string, if necessary. - */ -function trimUrlQuery(url) { - const length = url.length; - const q1 = url.indexOf("?"); - const q2 = url.indexOf("&"); - const q3 = url.indexOf("#"); - const q = Math.min(q1 != -1 ? q1 : length, q2 != -1 ? q2 : length, q3 != -1 ? q3 : length); - - return url.slice(0, q); -} - -// Map suffix to content type. -const contentMap = { - js: "text/javascript", - jsm: "text/javascript", - mjs: "text/javascript", - ts: "text/typescript", - tsx: "text/typescript-jsx", - jsx: "text/jsx", - vue: "text/vue", - coffee: "text/coffeescript", - elm: "text/elm", - cljc: "text/x-clojure", - cljs: "text/x-clojurescript" -}; - -/** - * Returns the content type for the specified URL. If no specific - * content type can be determined, "text/plain" is returned. - * - * @return String - * The content type. - */ -function getContentType(url) { - url = trimUrlQuery(url); - const dot = url.lastIndexOf("."); - if (dot >= 0) { - const name = url.substring(dot + 1); - if (name in contentMap) { - return contentMap[name]; - } - } - return "text/plain"; -} - -module.exports = { - originalToGeneratedId, - generatedToOriginalId, - isOriginalId, - isGeneratedId, - getContentType, - contentMapForTesting: contentMap -}; - -/***/ }), - /***/ 3653: /***/ (function(module, exports) { diff --git a/devtools/client/debugger/new/packages/devtools-components/package.json b/devtools/client/debugger/new/packages/devtools-components/package.json index fd34d4975302..dc5b0fbe0b85 100644 --- a/devtools/client/debugger/new/packages/devtools-components/package.json +++ b/devtools/client/debugger/new/packages/devtools-components/package.json @@ -26,7 +26,7 @@ "enzyme": "^3.3.0", "enzyme-adapter-react-16": "^1.1.1", "eslint": "^5.0.0", - "eslint-plugin-mozilla": "1.0.4", + "eslint-plugin-mozilla": "1.1.1", "fs-extra": "^7.0.0", "lodash": "^4.17.2" } diff --git a/devtools/client/debugger/new/packages/devtools-components/src/images/arrow.svg b/devtools/client/debugger/new/packages/devtools-components/src/images/arrow.svg index 68e128c7a65f..d10640814c39 100644 --- a/devtools/client/debugger/new/packages/devtools-components/src/images/arrow.svg +++ b/devtools/client/debugger/new/packages/devtools-components/src/images/arrow.svg @@ -1,6 +1,6 @@ - - + + diff --git a/devtools/client/debugger/new/packages/devtools-components/src/tree.css b/devtools/client/debugger/new/packages/devtools-components/src/tree.css index d443a58a7217..ca98cbfa2d83 100644 --- a/devtools/client/debugger/new/packages/devtools-components/src/tree.css +++ b/devtools/client/debugger/new/packages/devtools-components/src/tree.css @@ -58,8 +58,8 @@ background:url(/images/arrow.svg) no-repeat; background-size:contain; background-position:center center; - width: 9px; - height: 9px; + width: 10px; + height: 10px; border:0; padding:0; margin-inline-start: 1px; diff --git a/devtools/client/debugger/new/packages/devtools-components/src/tree.js b/devtools/client/debugger/new/packages/devtools-components/src/tree.js index 04f4f296fbf8..a9f230fec31c 100644 --- a/devtools/client/debugger/new/packages/devtools-components/src/tree.js +++ b/devtools/client/debugger/new/packages/devtools-components/src/tree.js @@ -798,7 +798,7 @@ class Tree extends Component { // it should be scrolled into view. this._focus(item, { preventAutoScroll: true }); if (this.props.isExpanded(item)) { - this.props.onCollapse(item); + this.props.onCollapse(item, e.altKey); } else { this.props.onExpand(item, e.altKey); } @@ -806,10 +806,7 @@ class Tree extends Component { }); }); - const style = Object.assign({}, this.props.style || {}, { - padding: 0, - margin: 0 - }); + const style = Object.assign({}, this.props.style || {}); return dom.div( { diff --git a/devtools/client/debugger/new/packages/devtools-components/webpack.config.js b/devtools/client/debugger/new/packages/devtools-components/webpack.config.js new file mode 100644 index 000000000000..b37441250468 --- /dev/null +++ b/devtools/client/debugger/new/packages/devtools-components/webpack.config.js @@ -0,0 +1,48 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +const { toolboxConfig } = require("devtools-launchpad/index"); +const {isDevelopment} = require("devtools-config"); + +const path = require("path"); +const projectPath = path.join(__dirname); + +const webpackConfig = { + entry: { + "devtools-components": path.join(projectPath, "index.js"), + }, + + output: { + path: path.join(__dirname, "assets/build"), + filename: "[name].js", + publicPath: "/assets/build", + libraryTarget: "umd", + }, + resolve: { + alias: { + "devtools/client/shared/vendor/react": "react", + "devtools/client/shared/vendor/react-dom": "react-dom", + "devtools/client/shared/vendor/react-dom-factories": "react-dom-factories", + "devtools/client/shared/vendor/react-prop-types": "prop-types", + "Services": path.join(__dirname, + "node_modules/devtools-modules/client/shared/shim/Services"), + } + } +}; + +const extra = { + disablePostCSS: true, +}; +webpackConfig.plugins = []; +if (!isDevelopment()) { + extra.excludeMap = { + react: "devtools/client/shared/vendor/react", + "react-dom": "devtools/client/shared/vendor/react-dom", + "react-dom-factories": "devtools/client/shared/vendor/react-dom-factories", + "prop-types": "devtools/client/shared/vendor/react-prop-types", + lodash: "devtools/client/shared/vendor/lodash", + }; +} + +module.exports = toolboxConfig(webpackConfig, {}, extra); diff --git a/devtools/client/debugger/new/packages/devtools-reps/README.md b/devtools/client/debugger/new/packages/devtools-reps/README.md index 43aa3bb35010..69765e6b9af6 100644 --- a/devtools/client/debugger/new/packages/devtools-reps/README.md +++ b/devtools/client/debugger/new/packages/devtools-reps/README.md @@ -63,17 +63,17 @@ and navigate to `http://localhost:8000` to access the dashboard. Navigating to the above address will have landed you on an empty launchpad UI: -![Image of empty launchpad](./assets/images/empty-launchpad.png) +![Image of empty launchpad](./images/empty-launchpad.png) Click on the _Launch Firefox_ button. This should launch Firefox with a dedicated profile, listening for connections on port 6080. The UI should update automatically and show you at least one tab for the new Firefox instance. If it doesn't, reload the dashboard. -![Image of launchpad](./assets/images/launchpad-app.png) +![Image of launchpad](./images/launchpad-app.png) Click on any of the tabs. This should open the demo app: -![Image of demo app](./assets/images/demo-app.png) +![Image of demo app](./images/demo-app.png) Then you can type any expression in the input field. They will be evaluated against the target tab selected in the previous steps (so if there specific objects on window on this webpage, you can check how they are represented with reps etc, ...). diff --git a/devtools/client/debugger/new/packages/devtools-reps/assets/images/demo-app.png b/devtools/client/debugger/new/packages/devtools-reps/assets/images/demo-app.png index c5d114d4ccca..1c98b2b74116 100644 Binary files a/devtools/client/debugger/new/packages/devtools-reps/assets/images/demo-app.png and b/devtools/client/debugger/new/packages/devtools-reps/assets/images/demo-app.png differ diff --git a/devtools/client/debugger/new/packages/devtools-reps/assets/images/empty-launchpad.png b/devtools/client/debugger/new/packages/devtools-reps/assets/images/empty-launchpad.png index b43918449580..3b4306ebf08e 100644 Binary files a/devtools/client/debugger/new/packages/devtools-reps/assets/images/empty-launchpad.png and b/devtools/client/debugger/new/packages/devtools-reps/assets/images/empty-launchpad.png differ diff --git a/devtools/client/debugger/new/packages/devtools-reps/assets/images/launchpad-app.png b/devtools/client/debugger/new/packages/devtools-reps/assets/images/launchpad-app.png index dd05f51b2fbf..d0128db5201d 100644 Binary files a/devtools/client/debugger/new/packages/devtools-reps/assets/images/launchpad-app.png and b/devtools/client/debugger/new/packages/devtools-reps/assets/images/launchpad-app.png differ diff --git a/devtools/client/debugger/new/packages/devtools-reps/package.json b/devtools/client/debugger/new/packages/devtools-reps/package.json index df2ed1ff1bc1..d4d339836368 100644 --- a/devtools/client/debugger/new/packages/devtools-reps/package.json +++ b/devtools/client/debugger/new/packages/devtools-reps/package.json @@ -38,7 +38,7 @@ "babel-plugin-transform-es2015-modules-commonjs": "^6.26.0", "babel-preset-react": "^6.24.1", "devtools-config": "^0.0.16", - "devtools-launchpad": "^0.0.141", + "devtools-launchpad": "^0.0.145", "devtools-license-check": "^0.7.0", "devtools-modules": "~1.1.0", "devtools-services": "^0.0.1", @@ -46,7 +46,7 @@ "enzyme-adapter-react-16": "^1.1.1", "enzyme-to-json": "^3.3.1", "eslint": "^5.0.0", - "eslint-plugin-mozilla": "1.0.4", + "eslint-plugin-mozilla": "1.1.1", "fs-extra": "^7.0.0", "immutable": "^3.8.2", "postcss-url-mapper": "^1.2.0", diff --git a/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/actions.js b/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/actions.js index 36a3eb29f353..44caffe3305d 100644 --- a/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/actions.js +++ b/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/actions.js @@ -104,11 +104,19 @@ function releaseActors(state, client) { } } -function invokeGetter(node: Node, grip: object, getterName: string) { +function invokeGetter( + node: Node, + targetGrip: object, + receiverId: string | null, + getterName: string +) { return async ({ dispatch, client, getState }: ThunkArg) => { try { - const objectClient = client.createObjectClient(grip); - const result = await objectClient.getPropertyValue(getterName); + const objectClient = client.createObjectClient(targetGrip); + const result = await objectClient.getPropertyValue( + getterName, + receiverId + ); dispatch({ type: "GETTER_INVOKED", data: { diff --git a/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/components/ObjectInspectorItem.js b/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/components/ObjectInspectorItem.js index 4480308f346f..9a41e5f8780f 100644 --- a/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/components/ObjectInspectorItem.js +++ b/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/components/ObjectInspectorItem.js @@ -37,7 +37,8 @@ const { nodeIsLongString, nodeHasFullText, nodeHasGetter, - getNonPrototypeParentGripValue + getNonPrototypeParentGripValue, + getParentGripValue } = Utils.node; type Props = { @@ -167,11 +168,17 @@ class ObjectInspectorItem extends Component { } if (nodeHasGetter(item)) { - const parentGrip = getNonPrototypeParentGripValue(item); - if (parentGrip) { + const targetGrip = getParentGripValue(item); + const receiverGrip = getNonPrototypeParentGripValue(item); + if (targetGrip && receiverGrip) { Object.assign(repProps, { onInvokeGetterButtonClick: () => - this.props.invokeGetter(item, parentGrip, item.name) + this.props.invokeGetter( + item, + targetGrip, + receiverGrip.actor, + item.name + ) }); } } diff --git a/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/tests/component/__snapshots__/classnames.js.snap b/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/tests/component/__snapshots__/classnames.js.snap index 5d90922da530..e8db5f16e6e1 100644 --- a/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/tests/component/__snapshots__/classnames.js.snap +++ b/devtools/client/debugger/new/packages/devtools-reps/src/object-inspector/tests/component/__snapshots__/classnames.js.snap @@ -9,12 +9,7 @@ exports[`ObjectInspector - classnames has the expected class 1`] = ` onKeyPress={[Function]} onKeyUp={[Function]} role="tree" - style={ - Object { - "margin": 0, - "padding": 0, - } - } + style={Object {}} tabIndex="0" >
EvalError: "EvalError message" - - InternalError: "InternalError message" - - Error: "bar" - - RangeError: "RangeError message" - - ReferenceError: "ReferenceError message" - - Error: "Error message" - - SyntaxError: "SyntaxError message" - - TypeError: "TypeError message" - - URIError: "URIError message" - - Error: "Error message" - - InternalError: "too much recursion" - - Error: "" - - Error: "bar" - -
  • @@ -748,8 +722,6 @@ exports[`Error - renderStacktrace prop uses renderStacktrace with longString err data-link-actor-id="server1.conn1.child1/obj33" > InternalError: "too much recursion" - -
  • diff --git a/devtools/client/debugger/new/packages/devtools-reps/src/reps/tests/symbol.js b/devtools/client/debugger/new/packages/devtools-reps/src/reps/tests/symbol.js index b53f9287757e..526bdb0cc648 100644 --- a/devtools/client/debugger/new/packages/devtools-reps/src/reps/tests/symbol.js +++ b/devtools/client/debugger/new/packages/devtools-reps/src/reps/tests/symbol.js @@ -37,3 +37,20 @@ describe("test Symbol without identifier", () => { expectActorAttribute(renderedComponent, stub.actor); }); }); + +describe("test Symbol with long string", () => { + const stub = stubs.get("SymbolWithLongString"); + + it("renders the expected content", () => { + const renderedComponent = shallow( + Rep({ + object: stub + }) + ); + + expect(renderedComponent.text()).toEqual( + "Symbol(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa…)" + ); + expectActorAttribute(renderedComponent, stub.actor); + }); +}); diff --git a/devtools/client/debugger/new/packages/devtools-reps/webpack.config.js b/devtools/client/debugger/new/packages/devtools-reps/webpack.config.js new file mode 100644 index 000000000000..35258d2f6f78 --- /dev/null +++ b/devtools/client/debugger/new/packages/devtools-reps/webpack.config.js @@ -0,0 +1,35 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +const { toolboxConfig } = require("devtools-launchpad/index"); +const config = require("./config"); +const ObjectRestSpreadPlugin = require("@sucrase/webpack-object-rest-spread-plugin"); + +const path = require("path"); +const projectPath = path.join(__dirname, "src"); + +let webpackConfig = { + entry: { + reps: [path.join(projectPath, "launchpad/index.js")], + }, + + output: { + path: path.join(__dirname, "assets/build"), + filename: "[name].js", + publicPath: "/assets/build" + }, + + plugins: [new ObjectRestSpreadPlugin()], + + resolve: { + alias: { + "devtools/client/shared/vendor/react": "react", + "devtools/client/shared/vendor/react-dom": "react-dom", + "devtools/client/shared/vendor/react-dom-factories": "react-dom-factories", + "devtools/client/shared/vendor/react-prop-types": "prop-types", + } + } +}; + +module.exports = toolboxConfig(webpackConfig, config); diff --git a/devtools/client/debugger/new/packages/devtools-source-map/src/index.js b/devtools/client/debugger/new/packages/devtools-source-map/src/index.js index 92d091eb5b4b..5b8ba62dfb72 100644 --- a/devtools/client/debugger/new/packages/devtools-source-map/src/index.js +++ b/devtools/client/debugger/new/packages/devtools-source-map/src/index.js @@ -5,60 +5,123 @@ // @flow const { + workerUtils: { WorkerDispatcher } +} = require("devtools-utils"); + +import type { SourceLocation, Source, SourceId } from "debugger-html"; +import type { SourceMapConsumer } from "source-map"; +import type { locationOptions } from "./source-map"; + +export const dispatcher = new WorkerDispatcher(); + +const _getGeneratedRanges = dispatcher.task("getGeneratedRanges", { + queue: true +}); + +const _getGeneratedLocation = dispatcher.task("getGeneratedLocation", { queue: true }); +const _getAllGeneratedLocations = dispatcher.task("getAllGeneratedLocations", { queue: true }); + + +export const setAssetRootURL = async (assetRoot: string): Promise => + dispatcher.invoke("setAssetRootURL", assetRoot); + +export const getOriginalURLs = async ( + generatedSource: Source +): Promise => + dispatcher.invoke("getOriginalURLs", generatedSource); + +export const hasOriginalURL = async (url: string): Promise => + dispatcher.invoke("hasOriginalURL", url); + +export const getOriginalRanges = async ( + sourceId: SourceId, + url: string +): Promise< + Array<{ + line: number, + columnStart: number, + columnEnd: number + }> +> => dispatcher.invoke("getOriginalRanges", sourceId, url); +export const getGeneratedRanges = async ( + location: SourceLocation, + originalSource: Source +): Promise< + Array<{ + line: number, + columnStart: number, + columnEnd: number + }> +> => + _getGeneratedRanges(location, originalSource); + +export const getGeneratedLocation = async ( + location: SourceLocation, + originalSource: Source +): Promise => _getGeneratedLocation(location,originalSource); + +export const getAllGeneratedLocations = async ( + location: SourceLocation, + originalSource: Source +): Promise> => _getAllGeneratedLocations( + location, + originalSource +); + +export const getOriginalLocation = async ( + location: SourceLocation, + options: locationOptions = {} +): Promise => + dispatcher.invoke("getOriginalLocation", location, options); + +export const getFileGeneratedRange = async ( + originalSource: Source +): Promise => + dispatcher.invoke("getFileGeneratedRange", originalSource); + +export const getLocationScopes = dispatcher.task("getLocationScopes"); + +export const getOriginalSourceText = async ( + originalSource: Source +): Promise => dispatcher.invoke("getOriginalSourceText", originalSource); + +export const applySourceMap = async ( + generatedId: string, + url: string, + code: string, + mappings: Object +): Promise => + dispatcher.invoke("applySourceMap", generatedId, url, code, mappings); + +export const clearSourceMaps = async (): Promise => + dispatcher.invoke("clearSourceMaps"); + +export const hasMappedSource = async ( + location: SourceLocation +): Promise => dispatcher.invoke("hasMappedSource", location); + +export const getOriginalStackFrames = async ( + generatedLocation: SourceLocation +): Promise> => dispatcher.invoke("getOriginalStackFrames", generatedLocation); + +export { originalToGeneratedId, generatedToOriginalId, isGeneratedId, isOriginalId -} = require("./utils"); +} from "./utils"; -const { - workerUtils: { WorkerDispatcher } -} = require("devtools-utils"); - -const dispatcher = new WorkerDispatcher(); - -const setAssetRootURL = dispatcher.task("setAssetRootURL"); -const getOriginalURLs = dispatcher.task("getOriginalURLs"); -const getOriginalRanges = dispatcher.task("getOriginalRanges"); -const getGeneratedRanges = dispatcher.task("getGeneratedRanges", { - queue: true -}); -const getGeneratedLocation = dispatcher.task("getGeneratedLocation", { - queue: true -}); -const getAllGeneratedLocations = dispatcher.task("getAllGeneratedLocations", { - queue: true -}); -const getOriginalLocation = dispatcher.task("getOriginalLocation"); -const getFileGeneratedRange = dispatcher.task("getFileGeneratedRange"); -const getLocationScopes = dispatcher.task("getLocationScopes"); -const getOriginalSourceText = dispatcher.task("getOriginalSourceText"); -const applySourceMap = dispatcher.task("applySourceMap"); -const clearSourceMaps = dispatcher.task("clearSourceMaps"); -const hasMappedSource = dispatcher.task("hasMappedSource"); -const getOriginalStackFrames = dispatcher.task("getOriginalStackFrames"); - -module.exports = { - originalToGeneratedId, - generatedToOriginalId, - isGeneratedId, - isOriginalId, - hasMappedSource, - getOriginalURLs, - getOriginalRanges, - getGeneratedRanges, - getGeneratedLocation, - getAllGeneratedLocations, - getOriginalLocation, - getFileGeneratedRange, - getLocationScopes, - getOriginalSourceText, - applySourceMap, - clearSourceMaps, - getOriginalStackFrames, - startSourceMapWorker(url: string, assetRoot: string) { - dispatcher.start(url); - setAssetRootURL(assetRoot); - }, - stopSourceMapWorker: dispatcher.stop.bind(dispatcher) +export const startSourceMapWorker = (url: string, assetRoot: string) => { + dispatcher.start(url); + setAssetRootURL(assetRoot); }; +export const stopSourceMapWorker = dispatcher.stop.bind(dispatcher); + +import * as self from "devtools-source-map"; +export default self; diff --git a/devtools/client/debugger/new/packages/devtools-source-map/src/source-map.js b/devtools/client/debugger/new/packages/devtools-source-map/src/source-map.js index c33b375ba98d..7aaff39abf44 100644 --- a/devtools/client/debugger/new/packages/devtools-source-map/src/source-map.js +++ b/devtools/client/debugger/new/packages/devtools-source-map/src/source-map.js @@ -14,7 +14,11 @@ const { SourceMapConsumer, SourceMapGenerator } = require("source-map"); const { createConsumer } = require("./utils/createConsumer"); const assert = require("./utils/assert"); -const { fetchSourceMap } = require("./utils/fetchSourceMap"); +const { + fetchSourceMap, + hasOriginalURL, + clearOriginalURLs +} = require("./utils/fetchSourceMap"); const { getSourceMap, setSourceMap, @@ -31,7 +35,9 @@ const { clearWasmXScopes } = require("./utils/wasmXScopes"); import type { SourceLocation, Source, SourceId } from "debugger-html"; -async function getOriginalURLs(generatedSource: Source) { +async function getOriginalURLs( + generatedSource: Source +): Promise { const map = await fetchSourceMap(generatedSource); return map && map.sources; } @@ -39,7 +45,16 @@ async function getOriginalURLs(generatedSource: Source) { const COMPUTED_SPANS = new WeakSet(); const SOURCE_MAPPINGS = new WeakMap(); -async function getOriginalRanges(sourceId: SourceId, url: string) { +async function getOriginalRanges( + sourceId: SourceId, + url: string +): Promise< + Array<{ + line: number, + columnStart: number, + columnEnd: number + }> +> { if (!isOriginalId(sourceId)) { return []; } @@ -231,7 +246,7 @@ async function getAllGeneratedLocations( })); } -type locationOptions = { +export type locationOptions = { search?: "LEAST_UPPER_BOUND" | "GREATEST_LOWER_BOUND" }; async function getOriginalLocation( @@ -285,7 +300,12 @@ async function getOriginalLocation( }; } -async function getOriginalSourceText(originalSource: Source) { +async function getOriginalSourceText( + originalSource: Source +): Promise { assert(isOriginalId(originalSource.id), "Source is not an original source"); const generatedSourceId = originalToGeneratedId(originalSource.id); @@ -306,7 +326,9 @@ async function getOriginalSourceText(originalSource: Source) { }; } -async function getFileGeneratedRange(originalSource: Source) { +async function getFileGeneratedRange( + originalSource: Source +): Promise { assert(isOriginalId(originalSource.id), "Source is not an original source"); const map = await getSourceMap(originalToGeneratedId(originalSource.id)); @@ -360,10 +382,12 @@ function applySourceMap( function clearSourceMaps() { clearSourceMapsRequests(); clearWasmXScopes(); + clearOriginalURLs(); } module.exports = { getOriginalURLs, + hasOriginalURL, getOriginalRanges, getGeneratedRanges, getGeneratedLocation, diff --git a/devtools/client/debugger/new/packages/devtools-source-map/src/utils/convertToJSON.js b/devtools/client/debugger/new/packages/devtools-source-map/src/utils/convertToJSON.js index d4aff5b4190b..48f5b12df240 100644 --- a/devtools/client/debugger/new/packages/devtools-source-map/src/utils/convertToJSON.js +++ b/devtools/client/debugger/new/packages/devtools-source-map/src/utils/convertToJSON.js @@ -17,7 +17,7 @@ function convertDwarf(wasm, instance) { ); const resultPtr = alloc_mem(12); const enableXScopes = true; - convert_dwarf( + const success = convert_dwarf( wasmPtr, wasm.byteLength, resultPtr, @@ -29,6 +29,9 @@ function convertDwarf(wasm, instance) { const outputPtr = resultView.getUint32(0, true), outputLen = resultView.getUint32(4, true); free_mem(resultPtr); + if (!success) { + throw new Error("Unable to convert from DWARF sections"); + } if (!utf8Decoder) { utf8Decoder = new TextDecoder("utf-8"); } diff --git a/devtools/client/debugger/new/packages/devtools-source-map/src/utils/fetchSourceMap.js b/devtools/client/debugger/new/packages/devtools-source-map/src/utils/fetchSourceMap.js index 617a15b4c5a5..e56ce4d8feb9 100644 --- a/devtools/client/debugger/new/packages/devtools-source-map/src/utils/fetchSourceMap.js +++ b/devtools/client/debugger/new/packages/devtools-source-map/src/utils/fetchSourceMap.js @@ -13,6 +13,17 @@ const { createConsumer } = require("./createConsumer"); import type { Source } from "debugger-html"; +// URLs which have been seen in a completed source map request. +const originalURLs = new Set(); + +function clearOriginalURLs() { + originalURLs.clear(); +} + +function hasOriginalURL(url: string): boolean { + return originalURLs.has(url); +} + function _resolveSourceMapURL(source: Source) { const { url = "", sourceMapURL = "" } = source; @@ -55,10 +66,14 @@ async function _resolveAndFetch(generatedSource: Source): SourceMapConsumer { } } + if (map && map.sources) { + map.sources.forEach(url => originalURLs.add(url)); + } + return map; } -function fetchSourceMap(generatedSource: Source) { +function fetchSourceMap(generatedSource: Source): SourceMapConsumer { const existingRequest = getSourceMap(generatedSource.id); // If it has already been requested, return the request. Make sure @@ -84,4 +99,4 @@ function fetchSourceMap(generatedSource: Source) { return req; } -module.exports = { fetchSourceMap }; +module.exports = { fetchSourceMap, hasOriginalURL, clearOriginalURLs }; diff --git a/devtools/client/debugger/new/packages/devtools-source-map/src/utils/index.js b/devtools/client/debugger/new/packages/devtools-source-map/src/utils/index.js index 8d537991e06c..37256e645ed1 100644 --- a/devtools/client/debugger/new/packages/devtools-source-map/src/utils/index.js +++ b/devtools/client/debugger/new/packages/devtools-source-map/src/utils/index.js @@ -16,7 +16,7 @@ function generatedToOriginalId(generatedId: string, url: string) { } function isOriginalId(id: string) { - return !!id.match(/\/originalSource/); + return /\/originalSource/.test(id); } function isGeneratedId(id: string) { @@ -62,7 +62,7 @@ const contentMap = { * @return String * The content type. */ -function getContentType(url: string) { +function getContentType(url: string): string { url = trimUrlQuery(url); const dot = url.lastIndexOf("."); if (dot >= 0) { diff --git a/devtools/client/debugger/new/packages/devtools-source-map/src/utils/wasmXScopes.js b/devtools/client/debugger/new/packages/devtools-source-map/src/utils/wasmXScopes.js index a238f519f234..6536dbf46134 100644 --- a/devtools/client/debugger/new/packages/devtools-source-map/src/utils/wasmXScopes.js +++ b/devtools/client/debugger/new/packages/devtools-source-map/src/utils/wasmXScopes.js @@ -13,14 +13,18 @@ const { generatedToOriginalId } = require("./index"); const xScopes = new Map(); type XScopeItem = any; -type XScopeItemsIndex = Map; +type XScopeItemsIndex = Map; function indexLinkingNames(items: XScopeItem[]): XScopeItemsIndex { const result = new Map(); let queue = [...items]; while (queue.length > 0) { const item = queue.shift(); - if ("linkage_name" in item) { + if ("uid" in item) { + result.set(item.uid, item); + } else if ("linkage_name" in item) { + // TODO the linkage_name string value is used for compatibility + // with old format. Remove in favour of the uid referencing. result.set(item.linkage_name, item); } if ("children" in item) { @@ -30,6 +34,19 @@ function indexLinkingNames(items: XScopeItem[]): XScopeItemsIndex { return result; } +function getIndexedItem( + index: XScopeItemsIndex, + key: string | { uid: number } +): XScopeItem { + if (typeof key === "object" && key != null) { + return index.get(key.uid); + } + if (typeof key === "string") { + return index.get(key); + } + return null; +} + type XScopeData = { code_section_offset: number, debug_info: Array, @@ -112,7 +129,7 @@ function filterScopes( break; case "inlined_subroutine": if (isInRange(item, pc)) { - const linkedItem = index.get(item.abstract_origin); + const linkedItem = getIndexedItem(index, item.abstract_origin); const s: FoundScope = { id: item.abstract_origin, name: linkedItem ? linkedItem.name : void 0 diff --git a/devtools/client/debugger/new/packages/devtools-source-map/src/worker.js b/devtools/client/debugger/new/packages/devtools-source-map/src/worker.js index ca4b254715f7..da546ff9cbfb 100644 --- a/devtools/client/debugger/new/packages/devtools-source-map/src/worker.js +++ b/devtools/client/debugger/new/packages/devtools-source-map/src/worker.js @@ -5,6 +5,7 @@ const { getOriginalURLs, + hasOriginalURL, getOriginalRanges, getGeneratedRanges, getGeneratedLocation, @@ -29,6 +30,7 @@ const { self.onmessage = workerHandler({ setAssetRootURL, getOriginalURLs, + hasOriginalURL, getOriginalRanges, getGeneratedRanges, getGeneratedLocation, diff --git a/devtools/client/debugger/new/packages/devtools-source-map/wasm/dwarf_to_json.wasm b/devtools/client/debugger/new/packages/devtools-source-map/wasm/dwarf_to_json.wasm index ed1fd3bdbffe..2293d179f049 100755 Binary files a/devtools/client/debugger/new/packages/devtools-source-map/wasm/dwarf_to_json.wasm and b/devtools/client/debugger/new/packages/devtools-source-map/wasm/dwarf_to_json.wasm differ diff --git a/devtools/client/debugger/new/src/actions/breakpoints/addBreakpoint.js b/devtools/client/debugger/new/src/actions/breakpoints/addBreakpoint.js index d78f1f0dd529..a620247e4d8a 100644 --- a/devtools/client/debugger/new/src/actions/breakpoints/addBreakpoint.js +++ b/devtools/client/debugger/new/src/actions/breakpoints/addBreakpoint.js @@ -4,9 +4,7 @@ // @flow -import { isOriginalId } from "devtools-source-map"; import { - locationMoved, breakpointExists, assertBreakpoint, createBreakpoint, @@ -20,10 +18,13 @@ import { getSource, getSourceActors, getSymbols, + getFirstVisibleBreakpointPosition } from "../../selectors"; import { getGeneratedLocation } from "../../utils/source-maps"; import { getTextAtPosition } from "../../utils/source"; import { recordEvent } from "../../utils/telemetry"; +import { features } from "../../utils/prefs"; +import { setBreakpointPositions } from "./breakpointPositions"; import type { BreakpointOptions, @@ -67,58 +68,40 @@ async function addBreakpointPromise(getState, client, sourceMaps, breakpoint) { if (breakpointExists(state, location)) { const newBreakpoint = { ...breakpoint, location, generatedLocation }; assertBreakpoint(newBreakpoint); - return { breakpoint: newBreakpoint }; + return newBreakpoint; } const sourceActors = getSourceActors(state, generatedSource.id); - const newGeneratedLocation = { ...generatedLocation }; for (const sourceActor of sourceActors) { const sourceActorLocation = makeSourceActorLocation( sourceActor, generatedLocation ); - const { actualLocation } = await client.setBreakpoint( - sourceActorLocation, - breakpoint.options, - isOriginalId(location.sourceId) - ); - newGeneratedLocation.line = actualLocation.line; - newGeneratedLocation.column = actualLocation.column; + await client.setBreakpoint(sourceActorLocation, breakpoint.options); } - const newLocation = await sourceMaps.getOriginalLocation( - newGeneratedLocation - ); - const symbols = getSymbols(getState(), source); - const astLocation = await getASTLocation(source, symbols, newLocation); + const astLocation = await getASTLocation(source, symbols, location); const originalText = getTextAtPosition(source, location); - const text = getTextAtPosition(generatedSource, newGeneratedLocation); + const text = getTextAtPosition(generatedSource, generatedLocation); const newBreakpoint = { id: makeBreakpointId(generatedLocation), disabled: false, loading: false, options: breakpoint.options, - location: newLocation, + location, astLocation, - generatedLocation: newGeneratedLocation, + generatedLocation, text, originalText }; assertBreakpoint(newBreakpoint); - const previousLocation = locationMoved(location, newLocation) - ? location - : null; - - return { - breakpoint: newBreakpoint, - previousLocation - }; + return newBreakpoint; } export function addHiddenBreakpoint(location: SourceLocation) { @@ -144,22 +127,26 @@ export function enableBreakpoint(breakpoint: Breakpoint) { }; } -/** - * Add a new breakpoint - * - * @memberof actions/breakpoints - * @static - * @param {BreakpointOptions} options Any options for the new breakpoint. - */ - export function addBreakpoint( location: SourceLocation, options: BreakpointOptions = {} ) { - return ({ dispatch, getState, sourceMaps, client }: ThunkArgs) => { + return async ({ dispatch, getState, sourceMaps, client }: ThunkArgs) => { recordEvent("add_breakpoint"); + let breakpointPosition = location; + if (features.columnBreakpoints && location.column === undefined) { + await dispatch(setBreakpointPositions(location)); + breakpointPosition = getFirstVisibleBreakpointPosition( + getState(), + location + ); + } - const breakpoint = createBreakpoint(location, options); + if (!breakpointPosition) { + return; + } + + const breakpoint = createBreakpoint(breakpointPosition, options); return dispatch({ type: "ADD_BREAKPOINT", diff --git a/devtools/client/debugger/new/src/actions/breakpoints/breakpointPositions.js b/devtools/client/debugger/new/src/actions/breakpoints/breakpointPositions.js new file mode 100644 index 000000000000..249f1c0c8665 --- /dev/null +++ b/devtools/client/debugger/new/src/actions/breakpoints/breakpointPositions.js @@ -0,0 +1,37 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at . */ + +// @flow + +import { + getSourceActors, + getBreakpointPositionsForLine +} from "../../selectors"; + +import { makeSourceActorLocation } from "../../utils/breakpoint"; + +import type { SourceLocation } from "../../types"; +import type { ThunkArgs } from "../../actions/types"; + +export function setBreakpointPositions(location: SourceLocation) { + return async ({ getState, dispatch, client }: ThunkArgs) => { + if ( + getBreakpointPositionsForLine( + getState(), + location.sourceId, + location.line + ) + ) { + return; + } + + const sourceActors = getSourceActors(getState(), location.sourceId); + const sourceActor = sourceActors[0]; + + const sourceActorLocation = makeSourceActorLocation(sourceActor, location); + const positions = await client.getBreakpointPositions(sourceActorLocation); + + return dispatch({ type: "ADD_BREAKPOINT_POSITIONS", positions, location }); + }; +} diff --git a/devtools/client/debugger/new/src/actions/breakpoints/moz.build b/devtools/client/debugger/new/src/actions/breakpoints/moz.build index bfd32f049ca8..dc4084c38c95 100644 --- a/devtools/client/debugger/new/src/actions/breakpoints/moz.build +++ b/devtools/client/debugger/new/src/actions/breakpoints/moz.build @@ -9,6 +9,7 @@ DIRS += [ DebuggerModules( 'addBreakpoint.js', + 'breakpointPositions.js', 'index.js', 'remapLocations.js', 'syncBreakpoint.js', diff --git a/devtools/client/debugger/new/src/actions/breakpoints/syncBreakpoint.js b/devtools/client/debugger/new/src/actions/breakpoints/syncBreakpoint.js index 05422282d918..cdf2ec45afad 100644 --- a/devtools/client/debugger/new/src/actions/breakpoints/syncBreakpoint.js +++ b/devtools/client/debugger/new/src/actions/breakpoints/syncBreakpoint.js @@ -3,6 +3,8 @@ * file, You can obtain one at . */ // @flow + +import { setBreakpointPositions } from "./breakpointPositions"; import { locationMoved, createBreakpoint, @@ -16,6 +18,8 @@ import { getGeneratedLocation } from "../../utils/source-maps"; import { getTextAtPosition } from "../../utils/source"; import { originalToGeneratedId, isOriginalId } from "devtools-source-map"; import { getSource, getSourceActors } from "../../selectors"; +import { features } from "../../utils/prefs"; + import type { ThunkArgs, Action } from "../types"; import type { @@ -75,6 +79,7 @@ export async function syncBreakpointPromise( getState: Function, client: Object, sourceMaps: Object, + dispatch: Function, sourceId: SourceId, pendingBreakpoint: PendingBreakpoint ): Promise { @@ -121,10 +126,19 @@ export async function syncBreakpointPromise( ); const sourceActors = getSourceActors(getState(), sourceId); + let possiblePosition = true; + if (features.columnBreakpoints && generatedLocation.column != undefined) { + const { positions } = await dispatch( + setBreakpointPositions(generatedLocation) + ); + if (!positions.includes(generatedLocation.column)) { + possiblePosition = false; + } + } /** ******* CASE 1: No server change ***********/ // early return if breakpoint is disabled or we are in the sameLocation - if (pendingBreakpoint.disabled || isSameLocation) { + if (possiblePosition && (pendingBreakpoint.disabled || isSameLocation)) { // Make sure the breakpoint is installed on all source actors. if (!pendingBreakpoint.disabled) { for (const sourceActor of sourceActors) { @@ -166,42 +180,33 @@ export async function syncBreakpointPromise( } } + if (!possiblePosition || !scopedGeneratedLocation.line) { + return { previousLocation, breakpoint: null }; + } + /** ******* Case 2: Add New Breakpoint ***********/ // If we are not disabled, set the breakpoint on the server and get // that info so we can set it on our breakpoints. - if (!scopedGeneratedLocation.line) { - return { previousLocation, breakpoint: null }; - } - - const newGeneratedLocation = { ...scopedGeneratedLocation }; for (const sourceActor of sourceActors) { const sourceActorLocation = makeSourceActorLocation( sourceActor, scopedGeneratedLocation ); - const { actualLocation } = await client.setBreakpoint( + await client.setBreakpoint( sourceActorLocation, pendingBreakpoint.options, isOriginalId(sourceId) ); - newGeneratedLocation.line = actualLocation.line; - newGeneratedLocation.column = actualLocation.column; } - // the breakpoint might have slid server side, so we want to get the location - // based on the server's return value - const newLocation = await sourceMaps.getOriginalLocation( - newGeneratedLocation - ); - - const originalText = getTextAtPosition(source, newLocation); - const text = getTextAtPosition(generatedSource, newGeneratedLocation); + const originalText = getTextAtPosition(source, scopedLocation); + const text = getTextAtPosition(generatedSource, scopedGeneratedLocation); return createSyncData( pendingBreakpoint, - newLocation, - newGeneratedLocation, + scopedLocation, + scopedGeneratedLocation, previousLocation, text, originalText @@ -226,6 +231,7 @@ export function syncBreakpoint( getState, client, sourceMaps, + dispatch, sourceId, pendingBreakpoint ); diff --git a/devtools/client/debugger/new/src/actions/breakpoints/tests/__snapshots__/breakpoints.spec.js.snap b/devtools/client/debugger/new/src/actions/breakpoints/tests/__snapshots__/breakpoints.spec.js.snap index 322657062ffb..cfe986e1681e 100644 --- a/devtools/client/debugger/new/src/actions/breakpoints/tests/__snapshots__/breakpoints.spec.js.snap +++ b/devtools/client/debugger/new/src/actions/breakpoints/tests/__snapshots__/breakpoints.spec.js.snap @@ -1,40 +1,5 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`breakpoints adding a breakpoint to an invalid location adds only one breakpoint with a corrected location 1`] = ` -Object { - "astLocation": Object { - "index": 0, - "name": undefined, - "offset": Object { - "line": 7, - "sourceId": "a", - "sourceUrl": "http://localhost:8000/examples/a", - }, - }, - "disabled": false, - "generatedLocation": Object { - "column": undefined, - "line": 7, - "sourceId": "a", - "sourceUrl": "http://localhost:8000/examples/a", - }, - "id": "a:5:", - "loading": false, - "location": Object { - "line": 7, - "sourceId": "a", - "sourceUrl": "http://localhost:8000/examples/a", - }, - "options": Object { - "condition": null, - "hidden": false, - "logValue": null, - }, - "originalText": "", - "text": "", -} -`; - exports[`breakpoints should add a breakpoint 1`] = ` Array [ Object { @@ -51,7 +16,6 @@ Array [ }, "disabled": false, "generatedLocation": Object { - "column": undefined, "line": 2, "sourceId": "a", "sourceUrl": "http://localhost:8000/examples/a", @@ -106,7 +70,6 @@ Object { }, "disabled": false, "generatedLocation": Object { - "column": undefined, "line": 1, "sourceId": "a.js", "sourceUrl": "http://localhost:8000/examples/a.js", @@ -145,7 +108,6 @@ Array [ }, "disabled": true, "generatedLocation": Object { - "column": undefined, "line": 5, "sourceId": "a", "sourceUrl": "http://localhost:8000/examples/a", diff --git a/devtools/client/debugger/new/src/actions/breakpoints/tests/__snapshots__/syncing.spec.js.snap b/devtools/client/debugger/new/src/actions/breakpoints/tests/__snapshots__/syncing.spec.js.snap index 93414a3e4ddc..b2002e6caa74 100644 --- a/devtools/client/debugger/new/src/actions/breakpoints/tests/__snapshots__/syncing.spec.js.snap +++ b/devtools/client/debugger/new/src/actions/breakpoints/tests/__snapshots__/syncing.spec.js.snap @@ -179,7 +179,7 @@ Object { "column": undefined, "line": 3, "sourceId": "magic.js", - "sourceUrl": "http://localhost:8000/magic.js", + "sourceUrl": "http://localhost:8000/examples/magic.js", }, "options": Object { "condition": null, diff --git a/devtools/client/debugger/new/src/actions/breakpoints/tests/breakpoints.spec.js b/devtools/client/debugger/new/src/actions/breakpoints/tests/breakpoints.spec.js index 10e865d2fa7a..2316878ee548 100644 --- a/devtools/client/debugger/new/src/actions/breakpoints/tests/breakpoints.spec.js +++ b/devtools/client/debugger/new/src/actions/breakpoints/tests/breakpoints.spec.js @@ -12,10 +12,7 @@ import { getTelemetryEvents } from "../../../utils/test-head"; -import { - simulateCorrectThreadClient, - simpleMockThreadClient -} from "../../tests/helpers/threadClient.js"; +import { simpleMockThreadClient } from "../../tests/helpers/threadClient.js"; describe("breakpoints", () => { it("should add a breakpoint", async () => { @@ -68,7 +65,7 @@ describe("breakpoints", () => { const csr = makeSource("a"); await dispatch(actions.newSource(csr)); await dispatch(actions.loadSourceText(csr.source)); - const { breakpoint } = await dispatch(actions.addBreakpoint(loc1)); + const breakpoint = await dispatch(actions.addBreakpoint(loc1)); await dispatch(actions.disableBreakpoint(breakpoint)); expect(selectors.getBreakpointCount(getState())).toEqual(1); @@ -98,31 +95,6 @@ describe("breakpoints", () => { expect(selectors.getBreakpointCount(getState())).toEqual(1); }); - describe("adding a breakpoint to an invalid location", () => { - it("adds only one breakpoint with a corrected location", async () => { - const invalidLocation = { - sourceId: "a", - line: 5, - sourceUrl: "http://localhost:8000/examples/a" - }; - const { - correctedThreadClient, - correctedLocation - } = simulateCorrectThreadClient(2, invalidLocation); - const { dispatch, getState } = createStore(correctedThreadClient); - - const csr = makeSource("a"); - await dispatch(actions.newSource(csr)); - await dispatch(actions.loadSourceText(csr.source)); - - await dispatch(actions.addBreakpoint(invalidLocation)); - const state = getState(); - expect(selectors.getBreakpointCount(state)).toEqual(1); - const bp = selectors.getBreakpoint(state, correctedLocation); - expect(bp).toMatchSnapshot(); - }); - }); - it("should remove a breakpoint", async () => { const { dispatch, getState } = createStore(simpleMockThreadClient); @@ -181,7 +153,7 @@ describe("breakpoints", () => { await dispatch(actions.newSource(bCSR)); await dispatch(actions.loadSourceText(bCSR.source)); - const { breakpoint } = await dispatch(actions.addBreakpoint(loc1)); + const breakpoint = await dispatch(actions.addBreakpoint(loc1)); await dispatch(actions.addBreakpoint(loc2)); await dispatch(actions.disableBreakpoint(breakpoint)); @@ -202,7 +174,7 @@ describe("breakpoints", () => { await dispatch(actions.newSource(aCSR)); await dispatch(actions.loadSourceText(aCSR.source)); - const { breakpoint } = await dispatch(actions.addBreakpoint(loc)); + const breakpoint = await dispatch(actions.addBreakpoint(loc)); await dispatch(actions.disableBreakpoint(breakpoint)); let bp = selectors.getBreakpoint(getState(), loc); @@ -338,7 +310,7 @@ describe("breakpoints", () => { }; await dispatch(actions.newSource(makeSource("a"))); - const { breakpoint } = await dispatch(actions.addBreakpoint(loc)); + const breakpoint = await dispatch(actions.addBreakpoint(loc)); await dispatch(actions.disableBreakpoint(breakpoint)); const bp = selectors.getBreakpoint(getState(), loc); diff --git a/devtools/client/debugger/new/src/actions/breakpoints/tests/syncing.spec.js b/devtools/client/debugger/new/src/actions/breakpoints/tests/syncing.spec.js index 50e5816986f5..e35b6e69d656 100644 --- a/devtools/client/debugger/new/src/actions/breakpoints/tests/syncing.spec.js +++ b/devtools/client/debugger/new/src/actions/breakpoints/tests/syncing.spec.js @@ -135,6 +135,7 @@ describe("loading the debugger", () => { getState, threadClient, sourceMaps, + dispatch, reloadedSource.source.id, pendingBreakpoint() ); @@ -165,6 +166,7 @@ describe("loading the debugger", () => { getState, threadClient, sourceMaps, + dispatch, reloadedSource.source.id, pendingBreakpoint() ); @@ -209,6 +211,7 @@ describe("reloading debuggee", () => { getState, threadClient, sourceMaps, + dispatch, reloadedSource.source.id, pendingBreakpoint({ location: loc1 }) ); @@ -252,6 +255,7 @@ describe("reloading debuggee", () => { getState, threadClient, sourceMaps, + dispatch, reloadedSource.source.id, pendingBreakpoint() ); @@ -279,7 +283,7 @@ describe("reloading debuggee", () => { column: undefined }; - const { breakpoint } = await dispatch(actions.addBreakpoint(location)); + const breakpoint = await dispatch(actions.addBreakpoint(location)); await dispatch(actions.disableBreakpoint(breakpoint)); (getGeneratedLocation: any).mockImplementationOnce(() => diff --git a/devtools/client/debugger/new/src/actions/breakpoints/tests/toggleBreakpointsAtLine.spec.js b/devtools/client/debugger/new/src/actions/breakpoints/tests/toggleBreakpointsAtLine.spec.js deleted file mode 100644 index 0085e56e19d1..000000000000 --- a/devtools/client/debugger/new/src/actions/breakpoints/tests/toggleBreakpointsAtLine.spec.js +++ /dev/null @@ -1,71 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -import { - createStore, - selectors, - actions, - makeSource, - waitForState -} from "../../../utils/test-head"; - -import { generateBreakpoint } from "../../tests/helpers/breakpoints.js"; - -import { simpleMockThreadClient } from "../../tests/helpers/threadClient.js"; - -describe("toggleBreakpointsAtLine", () => { - it("removes all breakpoints on a given line", async () => { - const store = createStore(simpleMockThreadClient); - const { dispatch } = store; - - const source = makeSource("foo.js"); - await dispatch(actions.newSource(source)); - await dispatch(actions.loadSourceText(source)); - - await Promise.all([ - dispatch( - actions.addBreakpoint(generateBreakpoint("foo.js", 5, 1).location) - ), - dispatch( - actions.addBreakpoint(generateBreakpoint("foo.js", 5, 2).location) - ), - dispatch( - actions.addBreakpoint(generateBreakpoint("foo.js", 5, 3).location) - ) - ]); - - await dispatch(actions.selectLocation({ sourceId: "foo.js" })); - - await waitForState(store, state => selectors.hasSymbols(state, source)); - - await dispatch(actions.toggleBreakpointsAtLine(5)); - await waitForState( - store, - state => selectors.getBreakpointCount(state) === 0 - ); - }); - - it("removes all breakpoints on an empty line", async () => { - const store = createStore(simpleMockThreadClient); - const { dispatch } = store; - - const source = makeSource("foo.js"); - await dispatch(actions.newSource(source)); - await dispatch(actions.loadSourceText(makeSource("foo.js"))); - - await dispatch(actions.addBreakpoint({ sourceId: source.id, line: 3 })); - await dispatch(actions.selectLocation({ sourceId: "foo.js" })); - - await waitForState(store, state => - selectors.hasPausePoints(state, source.id) - ); - - await dispatch(actions.toggleBreakpointsAtLine(3)); - - await waitForState( - store, - state => selectors.getBreakpointCount(state) === 0 - ); - }); -}); diff --git a/devtools/client/debugger/new/src/actions/pause/paused.js b/devtools/client/debugger/new/src/actions/pause/paused.js index 6a82bd06a8b2..6ce7c86e6c9e 100644 --- a/devtools/client/debugger/new/src/actions/pause/paused.js +++ b/devtools/client/debugger/new/src/actions/pause/paused.js @@ -8,7 +8,8 @@ import { isEvaluatingExpression, getSelectedFrame, getSources, - getLastCommand + getLastCommand, + wasStepping } from "../../selectors"; import { mapFrames } from "."; @@ -81,7 +82,10 @@ export function paused(pauseInfo: Pause) { await dispatch(selectLocation(selectedFrame.location)); } - dispatch(togglePaneCollapse("end", false)); + if (!wasStepping(getState())) { + dispatch(togglePaneCollapse("end", false)); + } + await dispatch(fetchScopes()); // Run after fetching scoping data so that it may make use of the sourcemap diff --git a/devtools/client/debugger/new/src/actions/pause/resumed.js b/devtools/client/debugger/new/src/actions/pause/resumed.js index 1f190bcee0d2..2ab468cc5a2d 100644 --- a/devtools/client/debugger/new/src/actions/pause/resumed.js +++ b/devtools/client/debugger/new/src/actions/pause/resumed.js @@ -23,7 +23,7 @@ export function resumed(packet: ResumedPacket) { const wasPausedInEval = inDebuggerEval(why); const wasStepping = isStepping(getState()); - dispatch({ type: "RESUME", thread: packet.from }); + dispatch({ type: "RESUME", thread: packet.from, wasStepping }); if (!wasStepping && !wasPausedInEval) { await dispatch(evaluateExpressions()); diff --git a/devtools/client/debugger/new/src/actions/tests/__snapshots__/pending-breakpoints.spec.js.snap b/devtools/client/debugger/new/src/actions/tests/__snapshots__/pending-breakpoints.spec.js.snap index c8fd2d5342b9..84d06b77ec54 100644 --- a/devtools/client/debugger/new/src/actions/tests/__snapshots__/pending-breakpoints.spec.js.snap +++ b/devtools/client/debugger/new/src/actions/tests/__snapshots__/pending-breakpoints.spec.js.snap @@ -28,43 +28,13 @@ Object { } `; -exports[`invalid breakpoint location a corrected corresponding pending breakpoint is added 1`] = ` -Object { - "astLocation": Object { - "index": 0, - "name": undefined, - "offset": Object { - "column": 0, - "line": 7, - "sourceId": "foo.js", - "sourceUrl": "http://localhost:8000/examples/foo.js", - }, - }, - "disabled": false, - "generatedLocation": Object { - "column": 0, - "line": 7, - "sourceUrl": "http://localhost:8000/examples/foo.js", - }, - "location": Object { - "column": 0, - "line": 7, - "sourceUrl": "http://localhost:8000/examples/foo.js", - }, - "options": Object { - "condition": null, - "hidden": false, - "logValue": null, - }, -} -`; - exports[`when adding breakpoints a corresponding pending breakpoint should be added 1`] = ` Object { "astLocation": Object { "index": 0, "name": undefined, "offset": Object { + "column": 0, "line": 5, "sourceId": "foo.js/originalSource", "sourceUrl": "http://localhost:8000/examples/foo.js", @@ -77,7 +47,7 @@ Object { "sourceUrl": "http://localhost:8000/examples/foo.js", }, "location": Object { - "column": undefined, + "column": 0, "line": 5, "sourceUrl": "http://localhost:8000/examples/foo.js", }, @@ -95,6 +65,7 @@ Object { "index": 0, "name": undefined, "offset": Object { + "column": 0, "line": 5, "sourceId": "foo/originalSource", "sourceUrl": "http://localhost:8000/examples/foo", @@ -107,7 +78,7 @@ Object { "sourceUrl": "http://localhost:8000/examples/foo", }, "location": Object { - "column": undefined, + "column": 0, "line": 5, "sourceUrl": "http://localhost:8000/examples/foo", }, @@ -125,6 +96,7 @@ Object { "index": 0, "name": undefined, "offset": Object { + "column": 0, "line": 5, "sourceId": "foo2/originalSource", "sourceUrl": "http://localhost:8000/examples/foo2", @@ -137,7 +109,7 @@ Object { "sourceUrl": "http://localhost:8000/examples/foo2", }, "location": Object { - "column": undefined, + "column": 0, "line": 5, "sourceUrl": "http://localhost:8000/examples/foo2", }, diff --git a/devtools/client/debugger/new/src/actions/tests/helpers/threadClient.js b/devtools/client/debugger/new/src/actions/tests/helpers/threadClient.js index 5a8a5ba4b41b..547246a98a23 100644 --- a/devtools/client/debugger/new/src/actions/tests/helpers/threadClient.js +++ b/devtools/client/debugger/new/src/actions/tests/helpers/threadClient.js @@ -4,10 +4,7 @@ // @flow -import { makeBreakpointActorId } from "../../../utils/breakpoint"; - import type { - SourceLocation, SourceActor, SourceActorLocation, BreakpointOptions @@ -65,39 +62,6 @@ export const simpleMockThreadClient = { }) }; -// Breakpoint Sliding -function generateCorrectingThreadClient(offset = 0) { - return { - getBreakpointByLocation: (jest.fn(): any), - setBreakpoint: (location: SourceActorLocation, condition: string) => { - const actualLocation = { ...location, line: location.line + offset }; - - return Promise.resolve({ - id: makeBreakpointActorId(location), - actualLocation, - condition - }); - }, - sourceContents: ({ source }: SourceActor) => - Promise.resolve(createSource(source)) - }; -} - -/* in some cases, a breakpoint may be added, but the source will respond - * with a different breakpoint location. This is due to the breakpoint being - * added between functions, or somewhere that doesnt make sense. This function - * simulates that behavior. - * */ -export function simulateCorrectThreadClient( - offset: number, - location: SourceLocation -) { - const correctedThreadClient = generateCorrectingThreadClient(offset); - const offsetLine = { line: location.line + offset }; - const correctedLocation = { ...location, ...offsetLine }; - return { correctedThreadClient, correctedLocation }; -} - // sources and tabs export const sourceThreadClient = { sourceContents: function({ diff --git a/devtools/client/debugger/new/src/actions/tests/pending-breakpoints.spec.js b/devtools/client/debugger/new/src/actions/tests/pending-breakpoints.spec.js index eae2c0d86ed9..b6ff81cf584b 100644 --- a/devtools/client/debugger/new/src/actions/tests/pending-breakpoints.spec.js +++ b/devtools/client/debugger/new/src/actions/tests/pending-breakpoints.spec.js @@ -10,10 +10,7 @@ import { mockPendingBreakpoint } from "./helpers/breakpoints.js"; -import { - simulateCorrectThreadClient, - simpleMockThreadClient -} from "./helpers/threadClient.js"; +import { simpleMockThreadClient } from "./helpers/threadClient.js"; import { asyncStore } from "../../utils/prefs"; @@ -45,8 +42,7 @@ import { selectors, actions, makeOriginalSource, - waitForState, - makeSource + waitForState } from "../../utils/test-head"; import { makePendingLocationId } from "../../utils/breakpoint"; @@ -350,31 +346,3 @@ describe("adding sources", () => { expect(selectors.getBreakpointCount(getState())).toEqual(1); }); }); - -describe("invalid breakpoint location", () => { - it("a corrected corresponding pending breakpoint is added", async () => { - // setup - const bp = generateBreakpoint("foo.js"); - const { - correctedThreadClient, - correctedLocation - } = simulateCorrectThreadClient(2, bp.location); - const { dispatch, getState } = createStore(correctedThreadClient); - const correctedPendingId = makePendingLocationId(correctedLocation); - - // test - const csr = makeSource("foo.js"); - await dispatch(actions.newSource(csr)); - await dispatch(actions.loadSourceText(csr.source)); - - // Fixup the breakpoint so that its location can be loaded. - bp.location.sourceId = "foo.js"; - bp.generatedLocation = { ...bp.location }; - - await dispatch(actions.addBreakpoint(bp.location)); - const pendingBps = selectors.getPendingBreakpoints(getState()); - - const pendingBp = pendingBps[correctedPendingId]; - expect(pendingBp).toMatchSnapshot(); - }); -}); diff --git a/devtools/client/debugger/new/src/actions/tests/toolbox.spec.js b/devtools/client/debugger/new/src/actions/tests/toolbox.spec.js deleted file mode 100644 index 92dcff18c0f8..000000000000 --- a/devtools/client/debugger/new/src/actions/tests/toolbox.spec.js +++ /dev/null @@ -1,22 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -import { actions, createStore } from "../../utils/test-head"; -const threadClient = { - evaluate: jest.fn() -}; - -describe("toolbox", () => { - describe("evaluate in console", () => { - it("variable", () => { - const { dispatch } = createStore(threadClient); - dispatch(actions.evaluateInConsole("foo")); - - expect(threadClient.evaluate).toBeCalledWith( - 'console.log("foo"); console.log(foo)', - { frameId: null, thread: "UnknownThread" } - ); - }); - }); -}); diff --git a/devtools/client/debugger/new/src/actions/types/BreakpointAction.js b/devtools/client/debugger/new/src/actions/types/BreakpointAction.js index 4d619c7e9c0f..49e96622ad63 100644 --- a/devtools/client/debugger/new/src/actions/types/BreakpointAction.js +++ b/devtools/client/debugger/new/src/actions/types/BreakpointAction.js @@ -4,15 +4,15 @@ // @flow -import type { Breakpoint, SourceLocation, XHRBreakpoint } from "../../types"; +import type { + Breakpoint, + SourceLocation, + XHRBreakpoint, + BreakpointLinePositions +} from "../../types"; import type { PromiseAction } from "../utils/middleware/promise"; -type AddBreakpointResult = { - previousLocation: SourceLocation, - breakpoint: Breakpoint -}; - export type BreakpointAction = | PromiseAction< {| @@ -20,7 +20,7 @@ export type BreakpointAction = +breakpoint: Breakpoint, +condition?: string |}, - AddBreakpointResult + Breakpoint > | PromiseAction<{| +type: "REMOVE_BREAKPOINT", @@ -74,7 +74,7 @@ export type BreakpointAction = +type: "ENABLE_BREAKPOINT", +breakpoint: Breakpoint |}, - AddBreakpointResult + Breakpoint > | {| +type: "DISABLE_BREAKPOINT", @@ -91,4 +91,9 @@ export type BreakpointAction = | {| +type: "REMAP_BREAKPOINTS", +breakpoints: Breakpoint[] + |} + | {| + type: "ADD_BREAKPOINT_POSITIONS", + positions: BreakpointLinePositions, + location: SourceLocation |}; diff --git a/devtools/client/debugger/new/src/actions/types/PauseAction.js b/devtools/client/debugger/new/src/actions/types/PauseAction.js index 132ab757fb84..99cef7920769 100644 --- a/devtools/client/debugger/new/src/actions/types/PauseAction.js +++ b/devtools/client/debugger/new/src/actions/types/PauseAction.js @@ -18,7 +18,8 @@ export type PauseAction = | {| +type: "RESUME", +thread: string, - +value: void + +value: void, + +wasStepping: boolean |} | {| +type: "PAUSED", diff --git a/devtools/client/debugger/new/src/actions/utils/symbols.js b/devtools/client/debugger/new/src/actions/utils/symbols.js deleted file mode 100644 index 0c5b3f6254eb..000000000000 --- a/devtools/client/debugger/new/src/actions/utils/symbols.js +++ /dev/null @@ -1,50 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -// @flow - -import { - type SymbolDeclaration, - type SymbolDeclarations -} from "../../workers/parser"; - -import type { Source } from "../../types"; - -function updateSymbolLocation( - site: SymbolDeclaration, - source: Source, - sourceMaps: any -) { - return sourceMaps - .getGeneratedLocation( - { ...site.location.start, sourceId: source.id }, - source - ) - .then(loc => { - return { - ...site, - generatedLocation: { line: loc.line, column: loc.column } - }; - }); -} - -export async function updateSymbolLocations( - symbols: SymbolDeclarations, - source: Source, - sourceMaps: any -): Promise { - if (!symbols || !symbols.callExpressions) { - return Promise.resolve(symbols); - } - - const mappedCallExpressions = await Promise.all( - symbols.callExpressions.map(site => - updateSymbolLocation(site, source, sourceMaps) - ) - ); - - const newSymbols = { ...symbols, callExpressions: mappedCallExpressions }; - - return Promise.resolve(newSymbols); -} diff --git a/devtools/client/debugger/new/src/client/firefox/commands.js b/devtools/client/debugger/new/src/client/firefox/commands.js index af21046694de..af146b368fa4 100644 --- a/devtools/client/debugger/new/src/client/firefox/commands.js +++ b/devtools/client/debugger/new/src/client/firefox/commands.js @@ -32,7 +32,7 @@ import type { PausePointsMap } from "../../workers/parser"; import { makeBreakpointActorId } from "../../utils/breakpoint"; -import { createSource, createBreakpointLocation, createWorker } from "./create"; +import { createSource, createWorker } from "./create"; import { supportsWorkers, updateWorkerClients } from "./workers"; import { features } from "../../utils/prefs"; @@ -189,9 +189,8 @@ function removeXHRBreakpoint(path: string, method: string) { function setBreakpoint( location: SourceActorLocation, - options: BreakpointOptions, - noSliding: boolean -): Promise { + options: BreakpointOptions +) { const sourceThreadClient = lookupThreadClient(location.sourceActor.thread); const sourceClient = sourceThreadClient.source({ actor: location.sourceActor.actor @@ -202,17 +201,10 @@ function setBreakpoint( line: location.line, column: location.column, options, - noSliding }) - .then(([{ actualLocation }, bpClient]) => { - actualLocation = createBreakpointLocation(location, actualLocation); - - const id = makeBreakpointActorId(actualLocation); + .then(([, bpClient]) => { + const id = makeBreakpointActorId(location); bpClients[id] = bpClient; - bpClient.location.line = actualLocation.line; - bpClient.location.column = actualLocation.column; - - return { id, actualLocation }; }); } @@ -456,6 +448,23 @@ function getMainThread() { return threadClient.actor; } +async function getBreakpointPositions( + location: SourceActorLocation +): Promise> { + const { + sourceActor: { thread, actor }, + line + } = location; + const sourceThreadClient = lookupThreadClient(thread); + const sourceClient = sourceThreadClient.source({ actor }); + const { positions } = await sourceClient.getBreakpointPositionsCompressed({ + start: { line }, + end: { line } + }); + + return positions ? positions[line] : []; +} + const clientCommands = { autocomplete, blackBox, @@ -476,6 +485,7 @@ const clientCommands = { sourceContents, getSourceForActor, getBreakpointByLocation, + getBreakpointPositions, setBreakpoint, setXHRBreakpoint, removeXHRBreakpoint, diff --git a/devtools/client/debugger/new/src/client/firefox/create.js b/devtools/client/debugger/new/src/client/firefox/create.js index 71004c8bede2..114e6c23f302 100644 --- a/devtools/client/debugger/new/src/client/firefox/create.js +++ b/devtools/client/debugger/new/src/client/firefox/create.js @@ -5,7 +5,7 @@ // @flow // This module converts Firefox specific types to the generic types -import type { Frame, Source, SourceActorLocation, ThreadId } from "../../types"; +import type { Frame, Source, ThreadId } from "../../types"; import type { PausedPacket, FramesResponse, @@ -96,25 +96,6 @@ export function createPause( }; } -// Firefox only returns `actualLocation` if it actually changed, -// but we want it always to exist. Format `actualLocation` if it -// exists, otherwise use `location`. - -export function createBreakpointLocation( - location: SourceActorLocation, - actualLocation?: Object -): SourceActorLocation { - if (!actualLocation) { - return location; - } - - return { - ...location, - line: actualLocation.line, - column: actualLocation.column - }; -} - export function createWorker(actor: string, url: string) { return { actor, diff --git a/devtools/client/debugger/new/src/client/firefox/types.js b/devtools/client/debugger/new/src/client/firefox/types.js index 1dd95b6e87cd..75cad3321319 100644 --- a/devtools/client/debugger/new/src/client/firefox/types.js +++ b/devtools/client/debugger/new/src/client/firefox/types.js @@ -330,9 +330,12 @@ export type SourceClient = { setBreakpoint: ({ line: number, column: ?number, - condition: ?string, - noSliding: boolean + condition: ?string }) => Promise, + getBreakpointPositionsCompressed: (range: { + start: { line: number }, + end: { line: number } + }) => Promise, prettyPrint: number => Promise<*>, disablePrettyPrint: () => Promise<*>, blackBox: (range?: Range) => Promise<*>, @@ -398,7 +401,7 @@ export type BreakpointClient = { line: number, column: ?number }, - setOptions: (BreakpointOptions) => Promise, + setOptions: BreakpointOptions => Promise, // request: any, source: SourceClient, options: BreakpointOptions diff --git a/devtools/client/debugger/new/src/components/Editor/CallSites.js b/devtools/client/debugger/new/src/components/Editor/CallSites.js deleted file mode 100644 index cc4b9a55af77..000000000000 --- a/devtools/client/debugger/new/src/components/Editor/CallSites.js +++ /dev/null @@ -1,238 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -import React, { Component } from "react"; -import { connect } from "react-redux"; - -import { range, keyBy, isEqualWith, uniqBy, groupBy, flatten } from "lodash"; - -import CallSite from "./CallSite"; - -import { - getSelectedSource, - getSymbols, - getSelectedLocation, - getBreakpointsForSource -} from "../../selectors"; - -import { getTokenLocation } from "../../utils/editor"; -import { isWasm } from "../../utils/wasm"; - -import actions from "../../actions"; - -function getCallSiteAtLocation(callSites, location) { - return callSites.find(callSite => - isEqualWith(callSite.location, location, (cloc, loc) => { - return ( - loc.line === cloc.start.line && - (loc.column >= cloc.start.column && loc.column <= cloc.end.column) - ); - }) - ); -} - -class CallSites extends Component { - props: { - symbols: Array, - callSites: Array, - editor: Object, - breakpoints: Map, - addBreakpoint: Function, - removeBreakpoint: Function, - selectedSource: Object, - selectedLocation: Object - }; - - componentDidMount() { - const { editor } = this.props; - const codeMirrorWrapper = editor.codeMirror.getWrapperElement(); - - codeMirrorWrapper.addEventListener("click", e => this.onTokenClick(e)); - } - - componentWillUnmount() { - const { editor } = this.props; - const codeMirrorWrapper = editor.codeMirror.getWrapperElement(); - - codeMirrorWrapper.removeEventListener("click", e => this.onTokenClick(e)); - } - - onTokenClick(e) { - const { target } = e; - const { editor, selectedLocation } = this.props; - - if ( - !target.classList.contains("call-site") && - !target.classList.contains("call-site-bp") - ) { - return; - } - - const { sourceId } = selectedLocation; - const { line, column } = getTokenLocation(editor.codeMirror, target); - - this.toggleBreakpoint(line, isWasm(sourceId) ? undefined : column); - } - - toggleBreakpoint(line, column = undefined) { - const { - selectedSource, - selectedLocation, - addBreakpoint, - removeBreakpoint, - callSites - } = this.props; - - const callSite = getCallSiteAtLocation(callSites, { line, column }); - - if (!callSite) { - return; - } - - const bp = callSite.breakpoint; - - if ((bp && bp.loading) || !selectedLocation || !selectedSource) { - return; - } - - const { sourceId } = selectedLocation; - - if (bp) { - // NOTE: it's possible the breakpoint has slid to a column - column = column || bp.location.column; - removeBreakpoint({ - sourceId: sourceId, - line: line, - column - }); - } else { - addBreakpoint({ - sourceId: sourceId, - sourceUrl: selectedSource.url, - line: line, - column: column - }); - } - } - - // Return the call sites that are on the same line as an - // existing line breakpoint - filterCallSitesByLineNumber() { - const { callSites, breakpoints } = this.props; - - // Get unique lines from breakpoints so we can filter out unwated call sites - const uniqueBreakpointLines = new Set( - breakpoints.map(bp => bp.location.line) - ); - - // Get call sites based on activated breakpoint lines - const callSitesInRange = callSites.filter(({ location }) => - uniqueBreakpointLines.has(location.start.line) - ); - - // Group call sites by line - const callSitesByLineObj = groupBy(callSitesInRange, "location.start.line"); - - // Per group, ensure all call sites are unique - return flatten( - Object.values(callSitesByLineObj).map(arr => { - const uniques = uniqBy( - arr, - site => - `${site.generatedLocation.line}:${site.generatedLocation.column}` - ); - // Only return call sites for a line when more than 1 is found - return uniques.length > 1 ? uniques : []; - }) - ); - } - - render() { - const { editor, callSites, selectedSource, breakpoints } = this.props; - - if (!callSites || breakpoints.length === 0) { - return null; - } - - const callSitesFiltered = this.filterCallSitesByLineNumber(); - - let sites; - editor.codeMirror.operation(() => { - const childCallSites = callSitesFiltered.map((callSite, index) => { - const props = { - key: index, - callSite, - editor, - source: selectedSource, - breakpoint: callSite.breakpoint, - showCallSite: true - }; - return ; - }); - sites =
    {childCallSites}
    ; - }); - return sites; - } -} - -function getCallSites(symbols, breakpoints) { - if (!symbols || !symbols.callExpressions) { - return; - } - - const callSites = symbols.callExpressions; - - // NOTE: we create a breakpoint map keyed on location - // to speed up the lookups. Hopefully we'll fix the - // inconsistency with column offsets so that we can expect - // a breakpoint to be added at the beginning of a call expression. - const bpLocationMap = keyBy(breakpoints, ({ location }) => - locationKey(location) - ); - - function locationKey({ line, column }) { - return `${line}/${column}`; - } - - function findBreakpoint(callSite) { - const { - location: { start, end } - } = callSite; - - const breakpointId = range(start.column - 1, end.column) - .map(column => locationKey({ line: start.line, column })) - .find(key => bpLocationMap[key]); - - if (breakpointId) { - return bpLocationMap[breakpointId]; - } - } - - return callSites - .filter(({ location }) => location.start.line === location.end.line) - .map(callSite => ({ ...callSite, breakpoint: findBreakpoint(callSite) })); -} - -const mapStateToProps = state => { - const selectedLocation = getSelectedLocation(state); - const selectedSource = getSelectedSource(state); - const sourceId = selectedLocation && selectedLocation.sourceId; - const symbols = getSymbols(state, selectedSource); - const breakpoints = getBreakpointsForSource(state, sourceId); - - return { - selectedLocation, - selectedSource, - callSites: getCallSites(symbols, breakpoints), - breakpoints: breakpoints - }; -}; - -const { addBreakpoint, removeBreakpoint } = actions; -const mapDispatchToProps = { addBreakpoint, removeBreakpoint }; - -export default connect( - mapStateToProps, - mapDispatchToProps -)(CallSites); diff --git a/devtools/client/debugger/new/src/components/Editor/GutterMenu.js b/devtools/client/debugger/new/src/components/Editor/GutterMenu.js deleted file mode 100644 index ae1352599d17..000000000000 --- a/devtools/client/debugger/new/src/components/Editor/GutterMenu.js +++ /dev/null @@ -1,216 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -import { Component } from "react"; -import { showMenu } from "devtools-contextmenu"; -import { connect } from "../../utils/connect"; -import { lineAtHeight } from "../../utils/editor"; -import { features } from "../../utils/prefs"; -import { - getContextMenu, - getEmptyLines, - getSelectedLocation, - getSelectedSource, - getVisibleBreakpoints, - isPaused as getIsPaused -} from "../../selectors"; - -import actions from "../../actions"; - -type Props = { - setContextMenu: Function, - contextMenu: Object -}; - -export function gutterMenu({ - breakpoint, - line, - column, - event, - isPaused, - toggleBreakpoint, - openConditionalPanel, - toggleDisabledBreakpoint, - isCbPanelOpen, - closeConditionalPanel, - continueToHere, - sourceId -}) { - event.stopPropagation(); - event.preventDefault(); - - const gutterItems = { - addBreakpoint: { - id: "node-menu-add-breakpoint", - label: L10N.getStr("editor.addBreakpoint") - }, - addLogPoint: { - id: "node-menu-add-log-point", - label: L10N.getStr("editor.addLogPoint") - }, - addConditional: { - id: "node-menu-add-conditional-breakpoint", - label: L10N.getStr("editor.addConditionBreakpoint") - }, - removeBreakpoint: { - id: "node-menu-remove-breakpoint", - label: L10N.getStr("editor.removeBreakpoint") - }, - editLogPoint: { - id: "node-menu-edit-log-point", - label: L10N.getStr("editor.editLogPoint") - }, - editConditional: { - id: "node-menu-edit-conditional-breakpoint", - label: L10N.getStr("editor.editConditionBreakpoint") - }, - enableBreakpoint: { - id: "node-menu-enable-breakpoint", - label: L10N.getStr("editor.enableBreakpoint") - }, - disableBreakpoint: { - id: "node-menu-disable-breakpoint", - label: L10N.getStr("editor.disableBreakpoint") - }, - continueToHere: { - id: "node-menu-continue-to-here", - label: L10N.getStr("editor.continueToHere.label") - } - }; - - const toggleBreakpointItem = { - accesskey: L10N.getStr("shortcuts.toggleBreakpoint.accesskey"), - disabled: false, - click: () => { - toggleBreakpoint(line, column); - if (isCbPanelOpen) { - closeConditionalPanel(); - } - }, - accelerator: L10N.getStr("toggleBreakpoint.key"), - ...(breakpoint ? gutterItems.removeBreakpoint : gutterItems.addBreakpoint) - }; - - const logPoint = { - accesskey: L10N.getStr("editor.addLogPoint.accesskey"), - disabled: false, - click: () => - openConditionalPanel( - breakpoint ? breakpoint.location : { line, column, sourceId }, - true - ), - accelerator: L10N.getStr("toggleCondPanel.key"), - ...(breakpoint && breakpoint.condition - ? gutterItems.editLogPoint - : gutterItems.addLogPoint) - }; - - const conditionalBreakpoint = { - accesskey: L10N.getStr("editor.addConditionBreakpoint.accesskey"), - disabled: false, - // Leaving column undefined so pause points can be detected - click: () => - openConditionalPanel( - breakpoint ? breakpoint.location : { line, column, sourceId } - ), - accelerator: L10N.getStr("toggleCondPanel.key"), - ...(breakpoint && breakpoint.condition - ? gutterItems.editConditional - : gutterItems.addConditional) - }; - - let items = [toggleBreakpointItem, conditionalBreakpoint]; - - if (features.logPoints) { - items.push(logPoint) - } - - if (breakpoint && breakpoint.condition) { - const remove = breakpoint.log ? conditionalBreakpoint : logPoint; - items = items.filter(item => item !== remove); - } - - if (isPaused) { - const continueToHereItem = { - accesskey: L10N.getStr("editor.continueToHere.accesskey"), - disabled: false, - click: () => continueToHere(line, column), - ...gutterItems.continueToHere - }; - items.push(continueToHereItem); - } - - if (breakpoint) { - const disableBreakpoint = { - accesskey: L10N.getStr("editor.disableBreakpoint.accesskey"), - disabled: false, - click: () => toggleDisabledBreakpoint(line, column), - ...(breakpoint.disabled - ? gutterItems.enableBreakpoint - : gutterItems.disableBreakpoint) - }; - items.push(disableBreakpoint); - } - - showMenu(event, items); -} - -class GutterContextMenuComponent extends Component { - props: Props; - - shouldComponentUpdate(nextProps) { - return nextProps.contextMenu.type === "Gutter"; - } - - componentWillUpdate(nextProps) { - // clear the context menu since it is open - this.props.setContextMenu("", null); - return this.showMenu(nextProps); - } - - showMenu(nextProps) { - const { contextMenu, ...props } = nextProps; - const { event } = contextMenu; - - const sourceId = props.selectedSource ? props.selectedSource.id : ""; - const line = lineAtHeight(props.editor, sourceId, event); - const column = props.editor.codeMirror.coordsChar({ - left: event.x, - top: event.y - }).ch; - const breakpoint = nextProps.breakpoints.find( - bp => bp.location.line === line && bp.location.column === column - ); - - // Allow getFirstVisiblePausePoint to find the best first breakpoint - // position by not providing an explicit column number - if (features.columnBreakpoints && !breakpoint && column === 0) { - column = undefined; - } - - gutterMenu({ event, sourceId, line, column, breakpoint, ...props }); - } - - render() { - return null; - } -} - -const mapStateToProps = state => { - const selectedSource = getSelectedSource(state); - - return { - selectedLocation: getSelectedLocation(state), - selectedSource: selectedSource, - breakpoints: getVisibleBreakpoints(state), - isPaused: getIsPaused(state), - contextMenu: getContextMenu(state), - emptyLines: getEmptyLines(state, selectedSource.id) - }; -}; - -export default connect( - mapStateToProps, - actions -)(GutterContextMenuComponent); diff --git a/devtools/client/debugger/new/src/components/Editor/HitMarker.js b/devtools/client/debugger/new/src/components/Editor/HitMarker.js deleted file mode 100644 index 941d4c7bab31..000000000000 --- a/devtools/client/debugger/new/src/components/Editor/HitMarker.js +++ /dev/null @@ -1,59 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -// @flow -import { Component } from "react"; - -const markerEl = document.createElement("div"); - -function makeMarker() { - const marker = markerEl.cloneNode(true); - marker.className = "editor hit-marker"; - return marker; -} - -type Props = { - hitData: { [string]: any }, - editor: any -}; - -class HitMarker extends Component { - addMarker() { - const hitData = this.props.hitData; - const line = hitData.line - 1; - - this.props.editor.setGutterMarker(line, "hit-markers", makeMarker()); - - this.props.editor.addLineClass(line, "line", "hit-marker"); - } - - shouldComponentUpdate(nextProps: any) { - return ( - this.props.editor !== nextProps.editor || - this.props.hitData !== nextProps.hitData - ); - } - - componentDidMount() { - this.addMarker(); - } - - componentDidUpdate() { - this.addMarker(); - } - - componentWillUnmount() { - const hitData = this.props.hitData; - const line = hitData.line - 1; - - this.props.editor.setGutterMarker(line, "hit-markers", null); - this.props.editor.removeLineClass(line, "line", "hit-marker"); - } - - render() { - return null; - } -} - -export default HitMarker; diff --git a/devtools/client/debugger/new/src/components/Editor/Tabs.css b/devtools/client/debugger/new/src/components/Editor/Tabs.css index 345a05286097..cd2b0992465e 100644 --- a/devtools/client/debugger/new/src/components/Editor/Tabs.css +++ b/devtools/client/debugger/new/src/components/Editor/Tabs.css @@ -15,6 +15,13 @@ user-select: none; } +.source-header .command-bar { + flex: initial; + flex-shrink: 0; + border-bottom: 0; + border-inline-start: 1px solid var(--theme-splitter-color); +} + .source-tabs { max-width: calc(100% - 80px); align-self: flex-start; @@ -43,7 +50,8 @@ width: 100%; height: 2px; background-color: var(--tab-line-color, transparent); - transition: transform 250ms var(--animation-curve), opacity 250ms var(--animation-curve); + transition: transform 250ms var(--animation-curve), + opacity 250ms var(--animation-curve); opacity: 0; transform: scaleX(0); } diff --git a/devtools/client/debugger/new/src/components/Editor/Tabs.js b/devtools/client/debugger/new/src/components/Editor/Tabs.js index a545cc78092c..34c6fdff53dc 100644 --- a/devtools/client/debugger/new/src/components/Editor/Tabs.js +++ b/devtools/client/debugger/new/src/components/Editor/Tabs.js @@ -7,7 +7,11 @@ import React, { PureComponent } from "react"; import { connect } from "../../utils/connect"; -import { getSelectedSource, getSourcesForTabs } from "../../selectors"; +import { + getSelectedSource, + getSourcesForTabs, + getIsPaused +} from "../../selectors"; import { isVisible } from "../../utils/ui"; import { getHiddenTabs } from "../../utils/tabs"; @@ -21,6 +25,7 @@ import Tab from "./Tab"; import { PaneToggleButton } from "../shared/Button"; import Dropdown from "../shared/Dropdown"; import AccessibleImage from "../shared/AccessibleImage"; +import CommandBar from "../SecondaryPanes/CommandBar"; import type { Source } from "../../types"; @@ -36,7 +41,8 @@ type Props = { closeTab: typeof actions.closeTab, togglePaneCollapse: typeof actions.togglePaneCollapse, showSource: typeof actions.showSource, - selectSource: typeof actions.selectSource + selectSource: typeof actions.selectSource, + isPaused: boolean }; type State = { @@ -170,6 +176,15 @@ class Tabs extends PureComponent { return ; } + renderCommandBar() { + const { horizontal, endPanelCollapsed, isPaused } = this.props; + if (!endPanelCollapsed || !isPaused) { + return; + } + + return ; + } + renderStartPanelToggleButton() { return ( { {this.renderTabs()} {this.renderDropdown()} {this.renderEndPanelToggleButton()} + {this.renderCommandBar()}
  • ); } @@ -210,7 +226,8 @@ class Tabs extends PureComponent { const mapStateToProps = state => ({ selectedSource: getSelectedSource(state), - tabSources: getSourcesForTabs(state) + tabSources: getSourcesForTabs(state), + isPaused: getIsPaused(state) }); export default connect( diff --git a/devtools/client/debugger/new/src/components/PrimaryPanes/Sources.css b/devtools/client/debugger/new/src/components/PrimaryPanes/Sources.css index 725114e45bc0..a2ad9742e523 100644 --- a/devtools/client/debugger/new/src/components/PrimaryPanes/Sources.css +++ b/devtools/client/debugger/new/src/components/PrimaryPanes/Sources.css @@ -99,10 +99,6 @@ color: inherit; } -.sources-list .tree .img.arrow.expanded { - transform: rotate(0deg); -} - .theme-dark .source-list .tree .node.focused { background-color: var(--theme-tab-toolbar-background); } diff --git a/devtools/client/debugger/new/src/components/PrimaryPanes/SourcesTree.js b/devtools/client/debugger/new/src/components/PrimaryPanes/SourcesTree.js index 105079461c0f..ba6c6663008b 100644 --- a/devtools/client/debugger/new/src/components/PrimaryPanes/SourcesTree.js +++ b/devtools/client/debugger/new/src/components/PrimaryPanes/SourcesTree.js @@ -98,7 +98,6 @@ class SourcesTree extends Component { componentWillReceiveProps(nextProps: Props) { const { - thread, projectRoot, debuggeeUrl, sources, diff --git a/devtools/client/debugger/new/src/components/PrimaryPanes/tests/SourcesTree.spec.js b/devtools/client/debugger/new/src/components/PrimaryPanes/tests/SourcesTree.spec.js index 174482de594e..dae15bbccb08 100644 --- a/devtools/client/debugger/new/src/components/PrimaryPanes/tests/SourcesTree.spec.js +++ b/devtools/client/debugger/new/src/components/PrimaryPanes/tests/SourcesTree.spec.js @@ -196,7 +196,7 @@ describe("SourcesTree", () => { await component .find(".sources-list") .simulate("keydown", { keyCode: 13 }); - // expect(props.selectSource).toHaveBeenCalledWith(item.contents.id); + expect(props.selectSource).toHaveBeenCalledWith(item.contents.id); }); }); @@ -370,7 +370,7 @@ function generateDefaults(overrides: Object) { autoExpandAll: true, selectSource: jest.fn(), setExpandedState: jest.fn(), - sources: { FakeThread: defaultSources }, + sources: defaultSources, debuggeeUrl: "http://mdn.com", clearProjectDirectoryRoot: jest.fn(), setProjectDirectoryRoot: jest.fn(), diff --git a/devtools/client/debugger/new/src/components/PrimaryPanes/tests/__snapshots__/SourcesTree.spec.js.snap b/devtools/client/debugger/new/src/components/PrimaryPanes/tests/__snapshots__/SourcesTree.spec.js.snap index c77809e8309e..dc35051c97b6 100644 --- a/devtools/client/debugger/new/src/components/PrimaryPanes/tests/__snapshots__/SourcesTree.spec.js.snap +++ b/devtools/client/debugger/new/src/components/PrimaryPanes/tests/__snapshots__/SourcesTree.spec.js.snap @@ -6,10 +6,32 @@ exports[`SourcesTree After changing expanded nodes Shows the tree with four.js, key="pane" >
    - This page has no sources +
    `; @@ -20,10 +42,25 @@ exports[`SourcesTree Should show the tree with nothing expanded 1`] = ` key="pane" >
    - This page has no sources +
    `; @@ -34,10 +71,32 @@ exports[`SourcesTree When loading initial source Shows the tree with one.js, two key="pane" >
    - This page has no sources +
    `; @@ -48,8 +107,9 @@ exports[`SourcesTree on receiving new props updates highlighted items updates hi key="pane" >
    . */ -.frames [role="list"] .frames-group .group, -.frames [role="list"] .frames-group .group .location { +.frames ul .frames-group .group, +.frames ul .frames-group .group .location { font-weight: 500; cursor: default; /* @@ -14,30 +14,25 @@ direction: ltr; } -.frames [role="list"] .frames-group.expanded .group, -.frames [role="list"] .frames-group.expanded .group .location { +.frames ul .frames-group.expanded .group, +.frames ul .frames-group.expanded .group .location { color: var(--theme-highlight-blue); } -.frames [role="list"] .frames-group.expanded .react path { +.frames ul .frames-group.expanded .react path { fill: var(--theme-highlight-blue); } -.frames [role="list"] .frames-group .frames-list [role="listitem"] { +.frames ul .frames-group .frames-list li { padding-left: 30px; } -.frames [role="list"] .frames-group .frames-list { +.frames ul .frames-group .frames-list { border-top: 1px solid var(--theme-splitter-color); border-bottom: 1px solid var(--theme-splitter-color); } -/* We don't want to display those as flex since only the name is displayed */ -.frames [role="list"] .frames-group .frames-list [role="listitem"] { - display: block; -} - -.frames [role="list"] .frames-group.expanded .badge { +.frames ul .frames-group.expanded .badge { color: var(--theme-highlight-blue); } diff --git a/devtools/client/debugger/new/src/components/SecondaryPanes/Frames/tests/Frame.spec.js b/devtools/client/debugger/new/src/components/SecondaryPanes/Frames/tests/Frame.spec.js index d297ab22daa8..438a340da760 100644 --- a/devtools/client/debugger/new/src/components/SecondaryPanes/Frames/tests/Frame.spec.js +++ b/devtools/client/debugger/new/src/components/SecondaryPanes/Frames/tests/Frame.spec.js @@ -70,7 +70,7 @@ describe("Frame", () => { const props = frameProperties(frame, null); const component = mount(); - expect(component.text()).toBe("\trenderFoo foo-view.js:10\n"); + expect(component.text()).toBe("    renderFoo foo-view.js:10"); }); it("full URL", () => { @@ -80,7 +80,7 @@ describe("Frame", () => { const props = frameProperties(frame, null, { displayFullUrl: true }); const component = mount(); - expect(component.text()).toBe(`renderFoo ${url}:10`); + expect(component.text()).toBe(`    renderFoo ${url}:10`); }); it("getFrameTitle", () => { diff --git a/devtools/client/debugger/new/src/components/SecondaryPanes/Frames/tests/__snapshots__/Group.spec.js.snap b/devtools/client/debugger/new/src/components/SecondaryPanes/Frames/tests/__snapshots__/Group.spec.js.snap index 0491d84955f2..7aaa8394d887 100644 --- a/devtools/client/debugger/new/src/components/SecondaryPanes/Frames/tests/__snapshots__/Group.spec.js.snap +++ b/devtools/client/debugger/new/src/components/SecondaryPanes/Frames/tests/__snapshots__/Group.spec.js.snap @@ -65,6 +65,9 @@ exports[`Group displays a group 1`] = ` 1 +
    `; @@ -134,11 +137,16 @@ exports[`Group passes the getFrameTitle prop to the Frame components 1`] = ` 3 +
    - + - + - + 3 +
    `; @@ -561,11 +576,16 @@ exports[`Group renders group with anonymous functions 2`] = ` 3 +
    - + - + - + . */ - -import type { Frame } from "../../../types"; - -export type LocalFrame = Frame & { - library: string, - source: Source -}; diff --git a/devtools/client/debugger/new/src/components/SecondaryPanes/FrameworkComponent.js b/devtools/client/debugger/new/src/components/SecondaryPanes/FrameworkComponent.js deleted file mode 100644 index 705855ea2685..000000000000 --- a/devtools/client/debugger/new/src/components/SecondaryPanes/FrameworkComponent.js +++ /dev/null @@ -1,110 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -import React, { PureComponent } from "react"; -import { connect } from "../../utils/connect"; -import actions from "../../actions"; - -import { createObjectClient } from "../../client/firefox"; -import { getSelectedFrame, getAllPopupObjectProperties } from "../../selectors"; - -import { objectInspector } from "devtools-reps"; -import { isReactComponent } from "../../utils/preview"; - -import type { Frame } from "../../types"; - -const { - component: ObjectInspector, - utils: { - createNode, - getChildren, - loadProperties: { loadItemProperties } - } -} = objectInspector; - -type Props = { - selectedFrame: Frame, - popupObjectProperties: Object, - setPopupObjectProperties: typeof actions.setPopupObjectProperties, - openElementInInspector: typeof actions.setPopupObjectProperties -}; - -class FrameworkComponent extends PureComponent { - async componentWillMount() { - const expression = "this;"; - const { selectedFrame, setPopupObjectProperties } = this.props; - const value = selectedFrame.this; - - const root = createNode({ name: expression, contents: { value } }); - const properties = await loadItemProperties(root, createObjectClient); - if (properties) { - setPopupObjectProperties(value, properties); - } - } - - renderReactComponent() { - const { - selectedFrame, - popupObjectProperties, - openElementInInspector - } = this.props; - const expression = "this;"; - const value = selectedFrame.this; - const root = { - name: expression, - path: expression, - contents: { value } - }; - - const loadedRootProperties = popupObjectProperties[value.actor]; - if (!loadedRootProperties) { - return null; - } - - let roots = getChildren({ - item: root, - loadedProperties: new Map([[root.path, loadedRootProperties]]) - }); - - roots = roots.filter(r => ["state", "props"].includes(r.name)); - - return ( -
    - createObjectClient(grip)} - onDOMNodeClick={grip => openElementInInspector(grip)} - onInspectIconClick={grip => openElementInInspector(grip)} - /> -
    - ); - } - - render() { - const { selectedFrame } = this.props; - if (selectedFrame && isReactComponent(selectedFrame.this)) { - return this.renderReactComponent(); - } - - return null; - } -} - -const mapStateToProps = state => ({ - selectedFrame: getSelectedFrame(state), - popupObjectProperties: getAllPopupObjectProperties(state) -}); - -export default connect( - mapStateToProps, - { - setPopupObjectProperties: actions.setPopupObjectProperties, - openElementInInspector: actions.openElementInInspectorCommand - } -)(FrameworkComponent); diff --git a/devtools/client/debugger/new/src/components/shared/AccessibleImage.css b/devtools/client/debugger/new/src/components/shared/AccessibleImage.css index 822ef8734d7a..fa774379ef9d 100644 --- a/devtools/client/debugger/new/src/components/shared/AccessibleImage.css +++ b/devtools/client/debugger/new/src/components/shared/AccessibleImage.css @@ -7,3 +7,7 @@ background: var(--theme-icon-color); mask-size: 100%; } + +.img.arrow.arrow.expanded { + transform: rotate(0deg); +} diff --git a/devtools/client/debugger/new/src/components/shared/tests/Svg.spec.js b/devtools/client/debugger/new/src/components/shared/tests/Svg.spec.js deleted file mode 100644 index 3500b4b3a9d2..000000000000 --- a/devtools/client/debugger/new/src/components/shared/tests/Svg.spec.js +++ /dev/null @@ -1,39 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -import { shallow } from "enzyme"; -import Svg from "../Svg"; - -describe("Svg", () => { - it("renders with props", () => { - const wrapper = shallow( - Svg({ - name: "webpack", - className: "class", - onClick: () => {}, - "aria-label": "label" - }) - ); - expect(wrapper).toMatchSnapshot(); - }); - - it("render nothing if invalid svg name", () => { - const svg = Svg({ name: "reallyRandomNameHere" }); - expect(svg).toBe(null); - }); - - it("calls onClick method on click", () => { - const onClick = jest.fn(); - const wrapper = shallow( - Svg({ - name: "webpack", - className: "class", - onClick, - "aria-label": "label" - }) - ); - wrapper.simulate("click"); - expect(onClick).toBeCalledTimes(1); - }); -}); diff --git a/devtools/client/debugger/new/src/components/shared/tests/__snapshots__/Svg.spec.js.snap b/devtools/client/debugger/new/src/components/shared/tests/__snapshots__/Svg.spec.js.snap deleted file mode 100644 index eabfc73f39c2..000000000000 --- a/devtools/client/debugger/new/src/components/shared/tests/__snapshots__/Svg.spec.js.snap +++ /dev/null @@ -1,15 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`Svg renders with props 1`] = ` -", - } - } - onClick={[Function]} - src={null} -/> -`; diff --git a/devtools/client/debugger/new/src/reducers/ast.js b/devtools/client/debugger/new/src/reducers/ast.js index 6f040e5e1bb4..cb2011d99737 100644 --- a/devtools/client/debugger/new/src/reducers/ast.js +++ b/devtools/client/debugger/new/src/reducers/ast.js @@ -232,30 +232,6 @@ export function getPausePoint( } } -export function getFirstPausePointLocation( - state: OuterState, - location: SourceLocation -): SourceLocation { - const { sourceId } = location; - const pausePoints = getPausePoints(state, location.sourceId); - if (!pausePoints) { - return location; - } - - const pausesAtLine = pausePoints.filter( - point => point.location.line == location.line - ); - - if (pausesAtLine) { - const values: PausePoint[] = (Object.values(pausesAtLine): any); - const firstPausePoint = values.find(pausePoint => pausePoint.types.break); - if (firstPausePoint) { - return { ...firstPausePoint.location, sourceId }; - } - } - return location; -} - export function hasPausePoints(state: OuterState, sourceId: string): boolean { const pausePoints = getPausePoints(state, sourceId); return !!pausePoints; diff --git a/devtools/client/debugger/new/src/reducers/breakpoints.js b/devtools/client/debugger/new/src/reducers/breakpoints.js index bd77b836666b..f158ca5f2892 100644 --- a/devtools/client/debugger/new/src/reducers/breakpoints.js +++ b/devtools/client/debugger/new/src/reducers/breakpoints.js @@ -18,7 +18,10 @@ import type { XHRBreakpoint, Breakpoint, BreakpointId, - SourceLocation + SourceLocation, + BreakpointPositions, + BreakpointLinePositions, + BreakpointSourcePositions } from "../types"; import type { Action, DonePromiseAction } from "../actions/types"; @@ -27,7 +30,9 @@ export type XHRBreakpointsList = $ReadOnlyArray; export type BreakpointsState = { breakpoints: BreakpointsMap, - xhrBreakpoints: XHRBreakpointsList + breakpointPositions: BreakpointPositions, + xhrBreakpoints: XHRBreakpointsList, + breakpointsDisabled: boolean }; export function initialBreakpointsState( @@ -36,6 +41,7 @@ export function initialBreakpointsState( return { breakpoints: {}, xhrBreakpoints: xhrBreakpoints, + breakpointPositions: {}, breakpointsDisabled: false }; } @@ -104,6 +110,21 @@ function update( case "DISABLE_XHR_BREAKPOINT": { return updateXHRBreakpoint(state, action); } + + case "ADD_BREAKPOINT_POSITIONS": { + const { + location: { sourceId, line }, + positions + } = action; + const sourcePositions = state.breakpointPositions[sourceId] || {}; + return { + ...state, + breakpointPositions: { + ...state.breakpointPositions, + [sourceId]: { ...sourcePositions, [line]: positions } + } + }; + } } return state; @@ -186,7 +207,7 @@ function addBreakpoint(state, action): BreakpointsState { // when the action completes, we can commit the breakpoint if (action.status === "done") { const { value } = ((action: any): DonePromiseAction); - return syncBreakpoint(state, value); + return syncBreakpoint(state, { breakpoint: value, previousLocation: null }); } // Remove the optimistic update @@ -331,4 +352,27 @@ export function getHiddenBreakpoint(state: OuterState): ?Breakpoint { return breakpoints.find(bp => bp.options.hidden); } +export function getBreakpointPositions( + state: OuterState +): ?BreakpointPositions { + return state.breakpoints.breakpointPositions; +} + +export function getBreakpointPositionsForSource( + state: OuterState, + sourceId: string +): ?BreakpointSourcePositions { + const positions = getBreakpointPositions(state); + return positions && positions[sourceId]; +} + +export function getBreakpointPositionsForLine( + state: OuterState, + sourceId: string, + line: number +): ?BreakpointLinePositions { + const positions = getBreakpointPositionsForSource(state, sourceId); + return positions ? positions[line] : null; +} + export default update; diff --git a/devtools/client/debugger/new/src/reducers/pause.js b/devtools/client/debugger/new/src/reducers/pause.js index 3b04d721b2d6..a3cef3d2b5ba 100644 --- a/devtools/client/debugger/new/src/reducers/pause.js +++ b/devtools/client/debugger/new/src/reducers/pause.js @@ -69,6 +69,7 @@ type ThreadPauseState = { shouldPauseOnCaughtExceptions: boolean, command: Command, lastCommand: Command, + wasStepping: boolean, previousLocation: ?MappedLocation, skipPausing: boolean }; @@ -277,7 +278,10 @@ function update( if (!action.thread && !state.currentThread) { return state; } - return updateThreadState(resumedPauseState); + return updateThreadState({ + ...resumedPauseState, + wasStepping: !!action.wasStepping + }); case "EVALUATE_EXPRESSION": return updateThreadState({ @@ -359,6 +363,10 @@ export function getLastCommand(state: OuterState, thread: string) { return getThreadPauseState(state.pause, thread).lastCommand; } +export function wasStepping(state: OuterState): boolean { + return getCurrentPauseState(state).wasStepping; +} + export function isStepping(state: OuterState) { return ["stepIn", "stepOver", "stepOut"].includes(getPauseCommand(state)); } diff --git a/devtools/client/debugger/new/src/reducers/pending-breakpoints.js b/devtools/client/debugger/new/src/reducers/pending-breakpoints.js index 2a17353546eb..e3a4ac96a239 100644 --- a/devtools/client/debugger/new/src/reducers/pending-breakpoints.js +++ b/devtools/client/debugger/new/src/reducers/pending-breakpoints.js @@ -69,15 +69,7 @@ function addBreakpoint(state, action) { return state; } // when the action completes, we can commit the breakpoint - const { - breakpoint, - previousLocation - } = ((action: any): DonePromiseAction).value; - - if (previousLocation) { - const previousLocationId = makePendingLocationId(previousLocation); - state = deleteBreakpoint(state, previousLocationId); - } + const breakpoint = ((action: any): DonePromiseAction).value; const locationId = makePendingLocationId(breakpoint.location); const pendingBreakpoint = createPendingBreakpoint(breakpoint); diff --git a/devtools/client/debugger/new/src/selectors/index.js b/devtools/client/debugger/new/src/selectors/index.js index ea794e38771e..4927f521f496 100644 --- a/devtools/client/debugger/new/src/selectors/index.js +++ b/devtools/client/debugger/new/src/selectors/index.js @@ -30,7 +30,8 @@ export { } from "./breakpointAtLocation"; export { getVisibleBreakpoints, - getFirstVisibleBreakpoints + getFirstVisibleBreakpoints, + getFirstVisibleBreakpointPosition } from "./visibleBreakpoints"; export { inComponent } from "./inComponent"; export { isSelectedFrameVisible } from "./isSelectedFrameVisible"; diff --git a/devtools/client/debugger/new/src/selectors/visibleBreakpoints.js b/devtools/client/debugger/new/src/selectors/visibleBreakpoints.js index c95ba8cdb6f5..8d3bef83f770 100644 --- a/devtools/client/debugger/new/src/selectors/visibleBreakpoints.js +++ b/devtools/client/debugger/new/src/selectors/visibleBreakpoints.js @@ -7,14 +7,24 @@ import { createSelector } from "reselect"; import { uniqBy } from "lodash"; -import { getBreakpointsList } from "../reducers/breakpoints"; +import { + getBreakpointsList, + getBreakpointPositionsForLine, + getBreakpointPositions +} from "../reducers/breakpoints"; +import { getPausePoints } from "../reducers/ast"; import { getSelectedSource } from "../reducers/sources"; import { sortBreakpoints } from "../utils/breakpoint"; import { getSelectedLocation } from "../utils/source-maps"; -import type { Breakpoint, Source } from "../types"; -import type { Selector } from "../reducers/types"; +import type { + Breakpoint, + Source, + SourceLocation, + BreakpointPositions +} from "../types"; +import type { Selector, State } from "../reducers/types"; function isVisible(breakpoint: Breakpoint, selectedSource: Source) { const location = getSelectedLocation(breakpoint, selectedSource); @@ -27,7 +37,12 @@ function isVisible(breakpoint: Breakpoint, selectedSource: Source) { export const getVisibleBreakpoints: Selector = createSelector( getSelectedSource, getBreakpointsList, - (selectedSource: ?Source, breakpoints: Breakpoint[]) => { + getBreakpointPositions, + ( + selectedSource: ?Source, + breakpoints: Breakpoint[], + positions: ?BreakpointPositions + ) => { if (selectedSource == null) { return null; } @@ -39,6 +54,33 @@ export const getVisibleBreakpoints: Selector = createSelector( } ); +export function getFirstVisibleBreakpointPosition( + state: State, + location: SourceLocation +): ?SourceLocation { + const { sourceId, line } = location; + const pausePoints = getPausePoints(state, location.sourceId); + const positions = getBreakpointPositionsForLine(state, sourceId, line); + + if (!pausePoints || !positions) { + return null; + } + + const pausesAtLine = pausePoints.filter( + p => p.location.line == line && positions.includes(p.location.column) + ); + + if (pausesAtLine.length > 0) { + const firstPausePoint = pausesAtLine.find( + pausePoint => pausePoint.types.break + ); + if (firstPausePoint) { + return { ...firstPausePoint.location, sourceId }; + } + } + return location; +} + /* * Finds the first breakpoint per line, which appear in the selected source. */ diff --git a/devtools/client/debugger/new/src/types.js b/devtools/client/debugger/new/src/types.js index bcac69df906f..4292bc032bac 100644 --- a/devtools/client/debugger/new/src/types.js +++ b/devtools/client/debugger/new/src/types.js @@ -441,3 +441,8 @@ export type Cancellable = { export type EventListenerBreakpoints = string[]; export type SourceDocuments = { [string]: Object }; + +export type BreakpointPosition = { line: number, string: number }; +export type BreakpointLinePositions = Array; +export type BreakpointSourcePositions = { [number]: BreakpointLinePositions }; +export type BreakpointPositions = { [string]: BreakpointSourcePositions }; diff --git a/devtools/client/debugger/new/src/utils/bootstrap.js b/devtools/client/debugger/new/src/utils/bootstrap.js index 3913e30b9f38..97c014f12f84 100644 --- a/devtools/client/debugger/new/src/utils/bootstrap.js +++ b/devtools/client/debugger/new/src/utils/bootstrap.js @@ -22,6 +22,7 @@ import App from "../components/App"; import { asyncStore, prefs } from "./prefs"; import type { Panel } from "../client/firefox/types"; +import typeof SourceMaps from "../../packages/devtools-source-map/src"; function renderPanel(component, store) { const root = document.createElement("div"); @@ -41,7 +42,7 @@ function renderPanel(component, store) { export function bootstrapStore( client: any, - sourceMaps: Object, + sourceMaps: SourceMaps, panel: Panel, initialState: Object ) { diff --git a/devtools/client/debugger/new/src/utils/createSelector.js b/devtools/client/debugger/new/src/utils/createSelector.js deleted file mode 100644 index 91f0b61a1c28..000000000000 --- a/devtools/client/debugger/new/src/utils/createSelector.js +++ /dev/null @@ -1,12 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at . */ - -import { createSelector as reselectCreateSelector } from "reselect"; - -function createSelector(...args) { - // $FlowFixMe - return reselectCreateSelector(...args); -} - -export { createSelector }; diff --git a/devtools/client/debugger/new/src/utils/quick-open.js b/devtools/client/debugger/new/src/utils/quick-open.js index bebc4638fd4f..aba58af939f2 100644 --- a/devtools/client/debugger/new/src/utils/quick-open.js +++ b/devtools/client/debugger/new/src/utils/quick-open.js @@ -16,15 +16,12 @@ import type { Location as BabelLocation } from "@babel/types"; import type { Symbols } from "../reducers/ast"; import type { QuickOpenType } from "../reducers/quick-open"; import type { TabList } from "../reducers/tabs"; -import type { SourcesMapByThread } from "../reducers/types"; import type { Source } from "../types"; import type { SymbolDeclaration, IdentifierDeclaration } from "../workers/parser"; -import { flatten } from "lodash"; - export const MODIFIERS = { "@": "functions", "#": "variables", diff --git a/devtools/client/debugger/new/src/workers/parser/getScopes/visitor.js b/devtools/client/debugger/new/src/workers/parser/getScopes/visitor.js index 4f11181041ed..c333cc381dcf 100644 --- a/devtools/client/debugger/new/src/workers/parser/getScopes/visitor.js +++ b/devtools/client/debugger/new/src/workers/parser/getScopes/visitor.js @@ -13,7 +13,6 @@ import type { Location as BabelLocation } from "@babel/types"; -import { isGeneratedId } from "devtools-source-map"; import getFunctionName from "../utils/getFunctionName"; import { getAst } from "../utils/ast"; @@ -153,6 +152,10 @@ type ScopeCollectionVisitorState = { declarationBindingIds: Set }; +function isGeneratedId(id: string) { + return !/\/originalSource/.test(id); +} + export function parseSourceScopes(sourceId: SourceId): ?Array { const ast = getAst(sourceId); if (isEmpty(ast)) { diff --git a/devtools/client/debugger/new/test/mochitest/browser_dbg-breakpoints.js b/devtools/client/debugger/new/test/mochitest/browser_dbg-breakpoints.js index f690d887107a..328a08e4511f 100644 --- a/devtools/client/debugger/new/test/mochitest/browser_dbg-breakpoints.js +++ b/devtools/client/debugger/new/test/mochitest/browser_dbg-breakpoints.js @@ -35,15 +35,6 @@ function enableBreakpoints(dbg, count) { return enabled; } -function findBreakpoint(dbg, url, line) { - const { - selectors: { getBreakpoint }, - getState - } = dbg; - const source = findSource(dbg, url); - return getBreakpoint(getState(), { sourceId: source.id, line }); -} - // Test enabling and disabling a breakpoint using the check boxes add_task(async function() { const dbg = await initDebugger("doc-scripts.html", "simple2"); diff --git a/devtools/client/debugger/new/test/mochitest/browser_dbg-browser-content-toolbox.js b/devtools/client/debugger/new/test/mochitest/browser_dbg-browser-content-toolbox.js index a050084c0d60..7b7005c766cc 100644 --- a/devtools/client/debugger/new/test/mochitest/browser_dbg-browser-content-toolbox.js +++ b/devtools/client/debugger/new/test/mochitest/browser_dbg-browser-content-toolbox.js @@ -31,15 +31,6 @@ async function enableBreakpoint(dbg, index) { await enabled; } -function findBreakpoint(dbg, url, line) { - const { - selectors: { getBreakpoint }, - getState - } = dbg; - const source = findSource(dbg, url); - return getBreakpoint(getState(), { sourceId: source.id, line }); -} - add_task(async function() { clearDebuggerPreferences(); diff --git a/devtools/client/debugger/new/test/mochitest/browser_dbg-sourcemaps2.js b/devtools/client/debugger/new/test/mochitest/browser_dbg-sourcemaps2.js index 5519dd75df0a..312ad94e1581 100644 --- a/devtools/client/debugger/new/test/mochitest/browser_dbg-sourcemaps2.js +++ b/devtools/client/debugger/new/test/mochitest/browser_dbg-sourcemaps2.js @@ -30,7 +30,7 @@ add_task(async function() { await selectSource(dbg, mainSrc); // Test that breakpoint is not off by a line. - await addBreakpoint(dbg, mainSrc, 4); + await addBreakpoint(dbg, mainSrc, 4, 2); is(getBreakpointCount(getState()), 1, "One breakpoint exists"); ok( getBreakpoint(getState(), { sourceId: mainSrc.id, line: 4, column: 2 }), diff --git a/devtools/client/debugger/new/test/mochitest/browser_dbg-sourcemaps3.js b/devtools/client/debugger/new/test/mochitest/browser_dbg-sourcemaps3.js index 78c8c300bcaa..7fdcdd7ebb67 100644 --- a/devtools/client/debugger/new/test/mochitest/browser_dbg-sourcemaps3.js +++ b/devtools/client/debugger/new/test/mochitest/browser_dbg-sourcemaps3.js @@ -22,7 +22,7 @@ add_task(async function() { await selectSource(dbg, sortedSrc); // Test that breakpoint is not off by a line. - await addBreakpoint(dbg, sortedSrc, 9); + await addBreakpoint(dbg, sortedSrc, 9, 4); is(getBreakpointCount(getState()), 1, "One breakpoint exists"); ok( getBreakpoint(getState(), { sourceId: sortedSrc.id, line: 9, column: 4 }), diff --git a/devtools/client/debugger/new/test/mochitest/helpers.js b/devtools/client/debugger/new/test/mochitest/helpers.js index b58932303023..f176e6910ce6 100644 --- a/devtools/client/debugger/new/test/mochitest/helpers.js +++ b/devtools/client/debugger/new/test/mochitest/helpers.js @@ -767,10 +767,13 @@ function findBreakpoint(dbg, url, line) { if ( Services.prefs.getBoolPref("devtools.debugger.features.column-breakpoints") ) { - column = dbg.selectors.getFirstPausePointLocation(dbg.store.getState(), { - sourceId: source.id, - line - }).column; + ({ column } = dbg.selectors.getFirstVisibleBreakpointPosition( + dbg.store.getState(), + { + sourceId: source.id, + line + } + )); } return getBreakpoint(getState(), { sourceId: source.id, line, column }); } @@ -789,7 +792,7 @@ async function loadAndAddBreakpoint(dbg, filename, line, column) { await selectSource(dbg, source); // Test that breakpoint is not off by a line. - await addBreakpoint(dbg, source, line); + await addBreakpoint(dbg, source, line, column); is(getBreakpointCount(getState()), 1, "One breakpoint exists"); if (!getBreakpoint(getState(), { sourceId: source.id, line, column })) { @@ -1103,7 +1106,7 @@ const selectors = { scopeValue: i => `.scopes-list .tree-node:nth-child(${i}) .object-delimiter + *`, frame: i => `.frames [role="list"] [role="listitem"]:nth-child(${i})`, - frames: '.frames [role="list"] [role="listitem"]', + frames: `.frames [role="list"] [role="listitem"]`, gutter: i => `.CodeMirror-code *:nth-child(${i}) .CodeMirror-linenumber`, // These work for bobth the breakpoint listing and gutter marker gutterContextMenu: { diff --git a/devtools/client/shared/source-map/index.js b/devtools/client/shared/source-map/index.js index f72a76d9851b..8b05b4bef9f6 100644 --- a/devtools/client/shared/source-map/index.js +++ b/devtools/client/shared/source-map/index.js @@ -419,70 +419,97 @@ function isSlowBuffer (obj) { "use strict"; +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.stopSourceMapWorker = exports.startSourceMapWorker = exports.isOriginalId = exports.isGeneratedId = exports.generatedToOriginalId = exports.originalToGeneratedId = exports.getOriginalStackFrames = exports.hasMappedSource = exports.clearSourceMaps = exports.applySourceMap = exports.getOriginalSourceText = exports.getLocationScopes = exports.getFileGeneratedRange = exports.getOriginalLocation = exports.getAllGeneratedLocations = exports.getGeneratedLocation = exports.getGeneratedRanges = exports.getOriginalRanges = exports.hasOriginalURL = exports.getOriginalURLs = exports.setAssetRootURL = exports.dispatcher = undefined; + +var _utils = __webpack_require__(3652); + +Object.defineProperty(exports, "originalToGeneratedId", { + enumerable: true, + get: function () { + return _utils.originalToGeneratedId; + } +}); +Object.defineProperty(exports, "generatedToOriginalId", { + enumerable: true, + get: function () { + return _utils.generatedToOriginalId; + } +}); +Object.defineProperty(exports, "isGeneratedId", { + enumerable: true, + get: function () { + return _utils.isGeneratedId; + } +}); +Object.defineProperty(exports, "isOriginalId", { + enumerable: true, + get: function () { + return _utils.isOriginalId; + } +}); + +var _devtoolsSourceMap = __webpack_require__(3646); + +var self = _interopRequireWildcard(_devtoolsSourceMap); + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at . */ -const { - originalToGeneratedId, - generatedToOriginalId, - isGeneratedId, - isOriginalId -} = __webpack_require__(3652); - const { workerUtils: { WorkerDispatcher } } = __webpack_require__(3651); -const dispatcher = new WorkerDispatcher(); +const dispatcher = exports.dispatcher = new WorkerDispatcher(); -const setAssetRootURL = dispatcher.task("setAssetRootURL"); -const getOriginalURLs = dispatcher.task("getOriginalURLs"); -const hasOriginalURL = dispatcher.task("hasOriginalURL"); -const getOriginalRanges = dispatcher.task("getOriginalRanges"); -const getGeneratedRanges = dispatcher.task("getGeneratedRanges", { +const _getGeneratedRanges = dispatcher.task("getGeneratedRanges", { queue: true }); -const getGeneratedLocation = dispatcher.task("getGeneratedLocation", { - queue: true -}); -const getAllGeneratedLocations = dispatcher.task("getAllGeneratedLocations", { - queue: true -}); -const getOriginalLocation = dispatcher.task("getOriginalLocation"); -const getFileGeneratedRange = dispatcher.task("getFileGeneratedRange"); -const getLocationScopes = dispatcher.task("getLocationScopes"); -const getOriginalSourceText = dispatcher.task("getOriginalSourceText"); -const applySourceMap = dispatcher.task("applySourceMap"); -const clearSourceMaps = dispatcher.task("clearSourceMaps"); -const hasMappedSource = dispatcher.task("hasMappedSource"); -const getOriginalStackFrames = dispatcher.task("getOriginalStackFrames"); -module.exports = { - originalToGeneratedId, - generatedToOriginalId, - isGeneratedId, - isOriginalId, - hasMappedSource, - getOriginalURLs, - hasOriginalURL, - getOriginalRanges, - getGeneratedRanges, - getGeneratedLocation, - getAllGeneratedLocations, - getOriginalLocation, - getFileGeneratedRange, - getLocationScopes, - getOriginalSourceText, - applySourceMap, - clearSourceMaps, - getOriginalStackFrames, - startSourceMapWorker(url, assetRoot) { - dispatcher.start(url); - setAssetRootURL(assetRoot); - }, - stopSourceMapWorker: dispatcher.stop.bind(dispatcher) +const _getGeneratedLocation = dispatcher.task("getGeneratedLocation", { queue: true }); +const _getAllGeneratedLocations = dispatcher.task("getAllGeneratedLocations", { queue: true }); + +const setAssetRootURL = exports.setAssetRootURL = async assetRoot => dispatcher.invoke("setAssetRootURL", assetRoot); + +const getOriginalURLs = exports.getOriginalURLs = async generatedSource => dispatcher.invoke("getOriginalURLs", generatedSource); + +const hasOriginalURL = exports.hasOriginalURL = async url => dispatcher.invoke("hasOriginalURL", url); + +const getOriginalRanges = exports.getOriginalRanges = async (sourceId, url) => dispatcher.invoke("getOriginalRanges", sourceId, url); +const getGeneratedRanges = exports.getGeneratedRanges = async (location, originalSource) => _getGeneratedRanges(location, originalSource); + +const getGeneratedLocation = exports.getGeneratedLocation = async (location, originalSource) => _getGeneratedLocation(location, originalSource); + +const getAllGeneratedLocations = exports.getAllGeneratedLocations = async (location, originalSource) => _getAllGeneratedLocations(location, originalSource); + +const getOriginalLocation = exports.getOriginalLocation = async (location, options = {}) => dispatcher.invoke("getOriginalLocation", location, options); + +const getFileGeneratedRange = exports.getFileGeneratedRange = async originalSource => dispatcher.invoke("getFileGeneratedRange", originalSource); + +const getLocationScopes = exports.getLocationScopes = dispatcher.task("getLocationScopes"); + +const getOriginalSourceText = exports.getOriginalSourceText = async originalSource => dispatcher.invoke("getOriginalSourceText", originalSource); + +const applySourceMap = exports.applySourceMap = async (generatedId, url, code, mappings) => dispatcher.invoke("applySourceMap", generatedId, url, code, mappings); + +const clearSourceMaps = exports.clearSourceMaps = async () => dispatcher.invoke("clearSourceMaps"); + +const hasMappedSource = exports.hasMappedSource = async location => dispatcher.invoke("hasMappedSource", location); + +const getOriginalStackFrames = exports.getOriginalStackFrames = async generatedLocation => dispatcher.invoke("getOriginalStackFrames", generatedLocation); + +const startSourceMapWorker = exports.startSourceMapWorker = (url, assetRoot) => { + dispatcher.start(url); + setAssetRootURL(assetRoot); }; +const stopSourceMapWorker = exports.stopSourceMapWorker = dispatcher.stop.bind(dispatcher); + +exports.default = self; /***/ }), diff --git a/dom/base/ShadowRoot.cpp b/dom/base/ShadowRoot.cpp index 58710690c157..8d74f5296d07 100644 --- a/dom/base/ShadowRoot.cpp +++ b/dom/base/ShadowRoot.cpp @@ -457,7 +457,7 @@ void ShadowRoot::GetEventTargetParent(EventChainPreVisitor& aVisitor) { if (!aVisitor.mEvent->mFlags.mComposed) { nsCOMPtr originalTarget = do_QueryInterface(aVisitor.mEvent->mOriginalTarget); - if (originalTarget->GetContainingShadow() == this) { + if (originalTarget && originalTarget->GetContainingShadow() == this) { // If we do stop propagation, we still want to propagate // the event to chrome (nsPIDOMWindow::GetParentTarget()). // The load event is special in that we don't ever propagate it diff --git a/dom/canvas/WebGL2Context.cpp b/dom/canvas/WebGL2Context.cpp index f64661b09f8a..cb102ab7aa3e 100644 --- a/dom/canvas/WebGL2Context.cpp +++ b/dom/canvas/WebGL2Context.cpp @@ -145,8 +145,10 @@ bool WebGLContext::InitWebGL2(FailureReason* const out_failReason) { gl->GetUIntegerv(LOCAL_GL_MAX_UNIFORM_BUFFER_BINDINGS, &mGLMaxUniformBufferBindings); - mGLMinProgramTexelOffset = gl->GetIntAs(LOCAL_GL_MIN_PROGRAM_TEXEL_OFFSET); - mGLMaxProgramTexelOffset = gl->GetIntAs(LOCAL_GL_MAX_PROGRAM_TEXEL_OFFSET); + mGLMinProgramTexelOffset = + gl->GetIntAs(LOCAL_GL_MIN_PROGRAM_TEXEL_OFFSET); + mGLMaxProgramTexelOffset = + gl->GetIntAs(LOCAL_GL_MAX_PROGRAM_TEXEL_OFFSET); mIndexedUniformBufferBindings.resize(mGLMaxUniformBufferBindings); diff --git a/dom/canvas/WebGLContextValidate.cpp b/dom/canvas/WebGLContextValidate.cpp index 0281f102c21b..c06cae013216 100644 --- a/dom/canvas/WebGLContextValidate.cpp +++ b/dom/canvas/WebGLContextValidate.cpp @@ -428,25 +428,35 @@ bool WebGLContext::InitAndValidateGL(FailureReason* const out_failReason) { //////////////// if (gl->IsGLES()) { - mGLMaxFragmentUniformVectors = gl->GetIntAs(LOCAL_GL_MAX_FRAGMENT_UNIFORM_VECTORS); - mGLMaxVertexUniformVectors = gl->GetIntAs(LOCAL_GL_MAX_VERTEX_UNIFORM_VECTORS); + mGLMaxFragmentUniformVectors = + gl->GetIntAs(LOCAL_GL_MAX_FRAGMENT_UNIFORM_VECTORS); + mGLMaxVertexUniformVectors = + gl->GetIntAs(LOCAL_GL_MAX_VERTEX_UNIFORM_VECTORS); if (gl->Version() >= 300) { - mGLMaxVertexOutputVectors = gl->GetIntAs(LOCAL_GL_MAX_VERTEX_OUTPUT_COMPONENTS) / 4; - mGLMaxFragmentInputVectors = gl->GetIntAs(LOCAL_GL_MAX_FRAGMENT_INPUT_COMPONENTS) / 4; + mGLMaxVertexOutputVectors = + gl->GetIntAs(LOCAL_GL_MAX_VERTEX_OUTPUT_COMPONENTS) / 4; + mGLMaxFragmentInputVectors = + gl->GetIntAs(LOCAL_GL_MAX_FRAGMENT_INPUT_COMPONENTS) / 4; } else { - mGLMaxFragmentInputVectors = gl->GetIntAs(LOCAL_GL_MAX_VARYING_VECTORS); + mGLMaxFragmentInputVectors = + gl->GetIntAs(LOCAL_GL_MAX_VARYING_VECTORS); mGLMaxVertexOutputVectors = mGLMaxFragmentInputVectors; } } else { - mGLMaxFragmentUniformVectors = gl->GetIntAs(LOCAL_GL_MAX_FRAGMENT_UNIFORM_COMPONENTS) / 4; - mGLMaxVertexUniformVectors = gl->GetIntAs(LOCAL_GL_MAX_VERTEX_UNIFORM_COMPONENTS) / 4; + mGLMaxFragmentUniformVectors = + gl->GetIntAs(LOCAL_GL_MAX_FRAGMENT_UNIFORM_COMPONENTS) / 4; + mGLMaxVertexUniformVectors = + gl->GetIntAs(LOCAL_GL_MAX_VERTEX_UNIFORM_COMPONENTS) / 4; if (gl->Version() >= 320) { - mGLMaxVertexOutputVectors = gl->GetIntAs(LOCAL_GL_MAX_VERTEX_OUTPUT_COMPONENTS) / 4; - mGLMaxFragmentInputVectors = gl->GetIntAs(LOCAL_GL_MAX_FRAGMENT_INPUT_COMPONENTS) / 4; + mGLMaxVertexOutputVectors = + gl->GetIntAs(LOCAL_GL_MAX_VERTEX_OUTPUT_COMPONENTS) / 4; + mGLMaxFragmentInputVectors = + gl->GetIntAs(LOCAL_GL_MAX_FRAGMENT_INPUT_COMPONENTS) / 4; } else { // Same enum val as GL2's GL_MAX_VARYING_FLOATS. - mGLMaxFragmentInputVectors = gl->GetIntAs(LOCAL_GL_MAX_VARYING_COMPONENTS) / 4; + mGLMaxFragmentInputVectors = + gl->GetIntAs(LOCAL_GL_MAX_VARYING_COMPONENTS) / 4; mGLMaxVertexOutputVectors = mGLMaxFragmentInputVectors; } } diff --git a/dom/workers/RuntimeService.cpp b/dom/workers/RuntimeService.cpp index 01c3056a9f63..e4edd36e1350 100644 --- a/dom/workers/RuntimeService.cpp +++ b/dom/workers/RuntimeService.cpp @@ -1819,7 +1819,7 @@ void RuntimeService::CrashIfHanging() { } // This string will be leaked. - MOZ_CRASH_UNSAFE_OOL(strdup(msg.BeginReading())); + MOZ_CRASH_UNSAFE(strdup(msg.BeginReading())); } // This spins the event loop until all workers are finished and their threads diff --git a/dom/workers/WorkerHolder.cpp b/dom/workers/WorkerHolder.cpp index bea21792cb2c..197ad6f6d119 100644 --- a/dom/workers/WorkerHolder.cpp +++ b/dom/workers/WorkerHolder.cpp @@ -14,7 +14,7 @@ namespace { void AssertOnOwningThread(void* aThread) { if (MOZ_UNLIKELY(aThread != GetCurrentVirtualThread())) { - MOZ_CRASH_UNSAFE_OOL("WorkerHolder on the wrong thread."); + MOZ_CRASH_UNSAFE("WorkerHolder on the wrong thread."); } } diff --git a/gfx/layers/opengl/GLBlitTextureImageHelper.cpp b/gfx/layers/opengl/GLBlitTextureImageHelper.cpp index d0c88c752b12..cef2924f1b77 100644 --- a/gfx/layers/opengl/GLBlitTextureImageHelper.cpp +++ b/gfx/layers/opengl/GLBlitTextureImageHelper.cpp @@ -193,7 +193,7 @@ void GLBlitTextureImageHelper::SetBlitFramebufferForDestTexture( // your texture is not texture complete -- that is, you // allocated a texture name, but didn't actually define its // size via a call to TexImage2D. - MOZ_CRASH_UNSAFE_OOL(msg.get()); + MOZ_CRASH_UNSAFE(msg.get()); } } diff --git a/gfx/thebes/gfxTextRun.cpp b/gfx/thebes/gfxTextRun.cpp index 14323a1b3431..0c72691529e1 100644 --- a/gfx/thebes/gfxTextRun.cpp +++ b/gfx/thebes/gfxTextRun.cpp @@ -1957,7 +1957,7 @@ gfxFont* gfxFontGroup::GetDefaultFont() { mFamilyList.ToString(familiesString); SprintfLiteral(msg, "unable to find a usable font (%.220s)", familiesString.get()); - MOZ_CRASH_UNSAFE_OOL(msg); + MOZ_CRASH_UNSAFE(msg); } return mDefaultFont.get(); diff --git a/gfx/wr/webrender/res/prim_shared.glsl b/gfx/wr/webrender/res/prim_shared.glsl index 1358f57c75fe..344c9d726ce8 100644 --- a/gfx/wr/webrender/res/prim_shared.glsl +++ b/gfx/wr/webrender/res/prim_shared.glsl @@ -102,11 +102,15 @@ VertexInfo write_vertex(RectWithSize instance_rect, // Clamp to the two local clip rects. vec2 clamped_local_pos = clamp_rect(local_pos, local_clip_rect); + // Compute the visible rect to snap against. This ensures segments along the + // edges are snapped consistently with other nearby primitives. + RectWithSize visible_rect = intersect_rects(local_clip_rect, snap_rect); + /// Compute the snapping offset. vec2 snap_offset = compute_snap_offset( clamped_local_pos, transform.m, - snap_rect, + visible_rect, task.common_data.device_pixel_scale ); diff --git a/gfx/wr/webrender/src/prim_store/mod.rs b/gfx/wr/webrender/src/prim_store/mod.rs index 8b6711ad4fb6..9df45d9d40f2 100644 --- a/gfx/wr/webrender/src/prim_store/mod.rs +++ b/gfx/wr/webrender/src/prim_store/mod.rs @@ -51,7 +51,7 @@ use std::sync::atomic::{AtomicUsize, Ordering}; use storage; use util::{ScaleOffset, MatrixHelpers, MaxRect, Recycler, TransformedRectKind}; use util::{pack_as_float, project_rect, raster_rect_to_device_pixels}; -use util::{scale_factors, clamp_to_scale_factor, RectHelpers}; +use util::{scale_factors, clamp_to_scale_factor}; use smallvec::SmallVec; pub mod borders; @@ -3536,9 +3536,9 @@ fn compute_snap_offset_impl( ) } -/// Retrieve the exact device space rectangle for a primitive, taking -/// into account the snapping that the shaders will apply if the transform -/// is axis-aligned. +/// Retrieve the exact unsnapped device space rectangle for a primitive. +/// If the transform is axis-aligned, compute the snapping offsets that +/// the shaders will apply. fn get_unclipped_device_rect( prim_spatial_node_index: SpatialNodeIndex, root_spatial_node_index: SpatialNodeIndex, @@ -3583,11 +3583,7 @@ fn get_unclipped_device_rect( bottom_right, }; - let p0 = unclipped_device_rect.origin + top_left; - let p1 = unclipped_device_rect.bottom_right() + bottom_right; - let unclipped = DeviceRect::from_floats(p0.x, p0.y, p1.x, p1.y); - - Some((unclipped, snap_offsets)) + Some((unclipped_device_rect, snap_offsets)) } TransformedRectKind::Complex => { Some((unclipped_device_rect, SnapOffsets::empty())) diff --git a/gfx/wr/wrench/reftests/border/reftest.list b/gfx/wr/wrench/reftests/border/reftest.list index b178e3b3dc7e..36c26509d1c1 100644 --- a/gfx/wr/wrench/reftests/border/reftest.list +++ b/gfx/wr/wrench/reftests/border/reftest.list @@ -14,7 +14,7 @@ platform(linux,mac) == border-suite-3.yaml border-suite-3.png == border-double-simple-2.yaml border-double-simple-2-ref.yaml fuzzy(64,24) == border-groove-simple.yaml border-groove-simple-ref.yaml fuzzy(64,24) == border-ridge-simple.yaml border-ridge-simple-ref.yaml -platform(linux,mac) fuzzy(1,2) == degenerate-curve.yaml degenerate-curve.png +platform(linux,mac) fuzzy(1,3) == degenerate-curve.yaml degenerate-curve.png platform(linux,mac) == border-image.yaml border-image-ref.png == border-image-crash.yaml border-image-crash-ref.yaml == border-image-fill.yaml border-image-fill-ref.png diff --git a/gfx/wr/wrench/reftests/boxshadow/reftest.list b/gfx/wr/wrench/reftests/boxshadow/reftest.list index 1a78e646d8fe..5daaeee1df19 100644 --- a/gfx/wr/wrench/reftests/boxshadow/reftest.list +++ b/gfx/wr/wrench/reftests/boxshadow/reftest.list @@ -34,4 +34,4 @@ fuzzy(1,5) platform(linux,mac) == box-shadow-huge-radius.yaml box-shadow-huge-ra platform(linux,mac) == box-shadow-large-blur-radius-2.yaml box-shadow-large-blur-radius-2.png platform(linux,mac) == box-shadow-large-blur-radius-3.yaml box-shadow-large-blur-radius-3.png -platform(linux,mac) == scale.yaml scale.png +platform(linux,mac) fuzzy(1,79) == scale.yaml scale.png diff --git a/gfx/wr/wrench/reftests/transforms/reftest.list b/gfx/wr/wrench/reftests/transforms/reftest.list index 29ab924ccecb..40e51e0159a7 100644 --- a/gfx/wr/wrench/reftests/transforms/reftest.list +++ b/gfx/wr/wrench/reftests/transforms/reftest.list @@ -25,7 +25,7 @@ platform(linux,mac) == perspective-mask.yaml perspective-mask.png rotate-clip.yaml rotate-clip-ref.yaml clip-translate.yaml clip-translate-ref.yaml platform(linux,mac) == perspective-clip.yaml perspective-clip.png -platform(linux,mac) == perspective-clip-1.yaml perspective-clip-1.png +platform(linux,mac) fuzzy(1,2) == perspective-clip-1.yaml perspective-clip-1.png platform(linux,mac) fuzzy(1,2) == perspective-shadow.yaml perspective-shadow.png == complex-preserve-3d.yaml blank.yaml platform(linux,mac) fuzzy(9,348) == perspective-border-radius.yaml perspective-border-radius.png diff --git a/ipc/glue/MessageChannel.cpp b/ipc/glue/MessageChannel.cpp index aa5875ee9455..f15d2906beb0 100644 --- a/ipc/glue/MessageChannel.cpp +++ b/ipc/glue/MessageChannel.cpp @@ -2751,7 +2751,7 @@ void MessageChannel::DebugAbort(const char* file, int line, const char* cond, pending.popFirst(); } - MOZ_CRASH_UNSAFE_OOL(why); + MOZ_CRASH_UNSAFE(why); } void MessageChannel::DumpInterruptStack(const char* const pfx) const { diff --git a/ipc/glue/ProtocolUtils.cpp b/ipc/glue/ProtocolUtils.cpp index 55039a5ce039..73ee9aeaf4e2 100644 --- a/ipc/glue/ProtocolUtils.cpp +++ b/ipc/glue/ProtocolUtils.cpp @@ -261,12 +261,12 @@ void FatalError(const char* aMsg, bool aIsParent) { } else { formattedMessage.AppendLiteral("\". abort()ing as a result."); #ifndef FUZZING - MOZ_CRASH_UNSAFE_OOL(formattedMessage.get()); + MOZ_CRASH_UNSAFE(formattedMessage.get()); #endif } } -void LogicError(const char* aMsg) { MOZ_CRASH_UNSAFE_OOL(aMsg); } +void LogicError(const char* aMsg) { MOZ_CRASH_UNSAFE(aMsg); } void ActorIdReadError(const char* aActorDescription) { #ifndef FUZZING diff --git a/ipc/glue/Shmem.cpp b/ipc/glue/Shmem.cpp index 21664a3c015a..a14e5f75a82f 100644 --- a/ipc/glue/Shmem.cpp +++ b/ipc/glue/Shmem.cpp @@ -23,17 +23,22 @@ class ShmemCreated : public IPC::Message { SharedMemory::SharedMemoryType aType) : IPC::Message(routingId, SHMEM_CREATED_MESSAGE_TYPE, 0, HeaderFlags(NESTED_INSIDE_CPOW)) { + MOZ_RELEASE_ASSERT(aSize < std::numeric_limits::max(), + "Tried to create Shmem with size larger than 4GB"); IPC::WriteParam(this, aIPDLId); - IPC::WriteParam(this, aSize); + IPC::WriteParam(this, uint32_t(aSize)); IPC::WriteParam(this, int32_t(aType)); } static bool ReadInfo(const Message* msg, PickleIterator* iter, id_t* aIPDLId, size_t* aSize, SharedMemory::SharedMemoryType* aType) { + uint32_t size = 0; if (!IPC::ReadParam(msg, iter, aIPDLId) || - !IPC::ReadParam(msg, iter, aSize) || - !IPC::ReadParam(msg, iter, reinterpret_cast(aType))) + !IPC::ReadParam(msg, iter, &size) || + !IPC::ReadParam(msg, iter, reinterpret_cast(aType))) { return false; + } + *aSize = size; return true; } diff --git a/js/src/devtools/rootAnalysis/analyzeHeapWrites.js b/js/src/devtools/rootAnalysis/analyzeHeapWrites.js index 4df5602af6f3..01246360c071 100644 --- a/js/src/devtools/rootAnalysis/analyzeHeapWrites.js +++ b/js/src/devtools/rootAnalysis/analyzeHeapWrites.js @@ -424,8 +424,8 @@ function ignoreContents(entry) "abort", /MOZ_ReportAssertionFailure/, /MOZ_ReportCrash/, + /MOZ_Crash/, /MOZ_CrashPrintf/, - /MOZ_CrashOOL/, /AnnotateMozCrashReason/, /InvalidArrayIndex_CRASH/, /NS_ABORT_OOM/, diff --git a/js/src/frontend/BinASTParser.cpp b/js/src/frontend/BinASTParser.cpp index 3f407f7de210..9f7e955713c6 100644 --- a/js/src/frontend/BinASTParser.cpp +++ b/js/src/frontend/BinASTParser.cpp @@ -2037,18 +2037,21 @@ JS::Result BinASTParser::parseInterfaceBreakStatement( if (!IsIdentifier(label)) { return raiseError("Invalid identifier"); } + } - auto validity = parseContext_->checkBreakStatement(label->asPropertyName()); - - if (validity.isErr()) { - switch (validity.unwrapErr()) { - case ParseContext::BreakStatementError::ToughBreak: - return raiseError(kind, "Not in a loop"); - case ParseContext::BreakStatementError::LabelNotFound: - return raiseError(kind, "Label not found"); - } + auto validity = parseContext_->checkBreakStatement( + label ? label->asPropertyName() : nullptr); + if (validity.isErr()) { + switch (validity.unwrapErr()) { + case ParseContext::BreakStatementError::ToughBreak: + this->error(JSMSG_TOUGH_BREAK); + return cx_->alreadyReportedError(); + case ParseContext::BreakStatementError::LabelNotFound: + this->error(JSMSG_LABEL_NOT_FOUND); + return cx_->alreadyReportedError(); } } + BINJS_TRY_DECL(result, factory_.newBreakStatement( label ? label->asPropertyName() : nullptr, tokenizer_->pos(start))); @@ -2322,16 +2325,18 @@ JS::Result BinASTParser::parseInterfaceContinueStatement( if (!IsIdentifier(label)) { return raiseError("ContinueStatement - Label MUST be an identifier"); } + } - auto validity = parseContext_->checkContinueStatement( - label ? label->asPropertyName() : nullptr); - if (validity.isErr()) { - switch (validity.unwrapErr()) { - case ParseContext::ContinueStatementError::NotInALoop: - return raiseError(kind, "Not in a loop"); - case ParseContext::ContinueStatementError::LabelNotFound: - return raiseError(kind, "Label not found"); - } + auto validity = parseContext_->checkContinueStatement( + label ? label->asPropertyName() : nullptr); + if (validity.isErr()) { + switch (validity.unwrapErr()) { + case ParseContext::ContinueStatementError::NotInALoop: + this->error(JSMSG_BAD_CONTINUE); + return cx_->alreadyReportedError(); + case ParseContext::ContinueStatementError::LabelNotFound: + this->error(JSMSG_LABEL_NOT_FOUND); + return cx_->alreadyReportedError(); } } @@ -3923,7 +3928,7 @@ JS::Result BinASTParser::parseInterfaceSwitchStatement( #endif // defined(DEBUG) BINJS_MOZ_TRY_DECL(discriminant, parseExpression()); - + ParseContext::Statement stmt(parseContext_, StatementKind::Switch); BINJS_MOZ_TRY_DECL(cases, parseListOfSwitchCase()); BINJS_TRY_DECL(scope, factory_.newLexicalScope(nullptr, cases)); @@ -3947,7 +3952,7 @@ BinASTParser::parseInterfaceSwitchStatementWithDefault( #endif // defined(DEBUG) BINJS_MOZ_TRY_DECL(discriminant, parseExpression()); - + ParseContext::Statement stmt(parseContext_, StatementKind::Switch); BINJS_MOZ_TRY_DECL(preDefaultCases, parseListOfSwitchCase()); BINJS_MOZ_TRY_DECL(defaultCase, parseSwitchDefault()); diff --git a/js/src/frontend/BinASTParserPerTokenizer.cpp b/js/src/frontend/BinASTParserPerTokenizer.cpp index f97162422350..935d64d78f25 100644 --- a/js/src/frontend/BinASTParserPerTokenizer.cpp +++ b/js/src/frontend/BinASTParserPerTokenizer.cpp @@ -772,7 +772,7 @@ BinASTParserPerTokenizer::raiseError(BinKind kind, const char* description) { Sprinter out(cx_); BINJS_TRY(out.init()); - BINJS_TRY(out.printf("In %s, ", description)); + BINJS_TRY(out.printf("In %s, %s", describeBinKind(kind), description)); return tokenizer_->raiseError(out.string()); } diff --git a/js/src/frontend/BinSource.yaml b/js/src/frontend/BinSource.yaml index 1205af71e226..efb61890b894 100644 --- a/js/src/frontend/BinSource.yaml +++ b/js/src/frontend/BinSource.yaml @@ -637,19 +637,22 @@ BreakStatement: if (!IsIdentifier(label)) { return raiseError("Invalid identifier"); } + } - auto validity - = parseContext_->checkBreakStatement(label->asPropertyName()); - - if (validity.isErr()) { - switch (validity.unwrapErr()) { - case ParseContext::BreakStatementError::ToughBreak: - return raiseError(kind, "Not in a loop"); - case ParseContext::BreakStatementError::LabelNotFound: - return raiseError(kind, "Label not found"); - } + auto validity + = parseContext_->checkBreakStatement(label ? label->asPropertyName() + : nullptr); + if (validity.isErr()) { + switch (validity.unwrapErr()) { + case ParseContext::BreakStatementError::ToughBreak: + this->error(JSMSG_TOUGH_BREAK); + return cx_->alreadyReportedError(); + case ParseContext::BreakStatementError::LabelNotFound: + this->error(JSMSG_LABEL_NOT_FOUND); + return cx_->alreadyReportedError(); } } + BINJS_TRY_DECL(result, factory_.newBreakStatement(label ? label->asPropertyName() : nullptr, @@ -775,22 +778,25 @@ ContinueStatement: if (!IsIdentifier(label)) { return raiseError("ContinueStatement - Label MUST be an identifier"); } + } - auto validity - = parseContext_->checkContinueStatement(label ? label->asPropertyName() - : nullptr); - if (validity.isErr()) { - switch (validity.unwrapErr()) { - case ParseContext::ContinueStatementError::NotInALoop: - return raiseError(kind, "Not in a loop"); - case ParseContext::ContinueStatementError::LabelNotFound: - return raiseError(kind, "Label not found"); - } + auto validity + = parseContext_->checkContinueStatement(label ? label->asPropertyName() + : nullptr); + if (validity.isErr()) { + switch (validity.unwrapErr()) { + case ParseContext::ContinueStatementError::NotInALoop: + this->error(JSMSG_BAD_CONTINUE); + return cx_->alreadyReportedError(); + case ParseContext::ContinueStatementError::LabelNotFound: + this->error(JSMSG_LABEL_NOT_FOUND); + return cx_->alreadyReportedError(); } } BINJS_TRY_DECL(result, - factory_.newContinueStatement(label ? label->asPropertyName() : nullptr, + factory_.newContinueStatement(label ? label->asPropertyName() + : nullptr, tokenizer_->pos(start))); DataProperty: @@ -1392,6 +1398,10 @@ SwitchDefault: factory_.newCaseOrDefault(start, nullptr, consequent)); SwitchStatement: + fields: + discriminant: + after: | + ParseContext::Statement stmt(parseContext_, StatementKind::Switch); build: | BINJS_TRY_DECL(scope, factory_.newLexicalScope(nullptr, cases)); BINJS_TRY_DECL(result, @@ -1399,6 +1409,10 @@ SwitchStatement: /* hasDefault = */ false)); SwitchStatementWithDefault: + fields: + discriminant: + after: | + ParseContext::Statement stmt(parseContext_, StatementKind::Switch); build: | // Concatenate `preDefaultCase`, `defaultCase`, `postDefaultCase` auto cases = preDefaultCases; diff --git a/js/src/jit-test/tests/binast/invalid/break-outside-while.binjs b/js/src/jit-test/tests/binast/invalid/break-outside-while.binjs new file mode 100644 index 000000000000..4e2739246311 Binary files /dev/null and b/js/src/jit-test/tests/binast/invalid/break-outside-while.binjs differ diff --git a/js/src/jit-test/tests/binast/invalid/break-outside-while.dir b/js/src/jit-test/tests/binast/invalid/break-outside-while.dir new file mode 100644 index 000000000000..cb084ef1f2f1 --- /dev/null +++ b/js/src/jit-test/tests/binast/invalid/break-outside-while.dir @@ -0,0 +1 @@ +// |jit-test| error: unlabeled break must be inside loop or switch \ No newline at end of file diff --git a/js/src/jit-test/tests/binast/invalid/continue-outside-while.binjs b/js/src/jit-test/tests/binast/invalid/continue-outside-while.binjs new file mode 100644 index 000000000000..093c05a6684b Binary files /dev/null and b/js/src/jit-test/tests/binast/invalid/continue-outside-while.binjs differ diff --git a/js/src/jit-test/tests/binast/invalid/continue-outside-while.dir b/js/src/jit-test/tests/binast/invalid/continue-outside-while.dir new file mode 100644 index 000000000000..b49edc80961d --- /dev/null +++ b/js/src/jit-test/tests/binast/invalid/continue-outside-while.dir @@ -0,0 +1 @@ +// |jit-test| error: continue must be inside loop \ No newline at end of file diff --git a/js/src/jit-test/tests/binast/invalid/labelled-break-outside-while.binjs b/js/src/jit-test/tests/binast/invalid/labelled-break-outside-while.binjs new file mode 100644 index 000000000000..50fc29970510 Binary files /dev/null and b/js/src/jit-test/tests/binast/invalid/labelled-break-outside-while.binjs differ diff --git a/js/src/jit-test/tests/binast/invalid/labelled-break-outside-while.dir b/js/src/jit-test/tests/binast/invalid/labelled-break-outside-while.dir new file mode 100644 index 000000000000..f81c3fef8064 --- /dev/null +++ b/js/src/jit-test/tests/binast/invalid/labelled-break-outside-while.dir @@ -0,0 +1 @@ +// |jit-test| error: label not found \ No newline at end of file diff --git a/js/src/jit-test/tests/binast/invalid/labelled-continue-outside-while.binjs b/js/src/jit-test/tests/binast/invalid/labelled-continue-outside-while.binjs new file mode 100644 index 000000000000..0fb72bf49040 Binary files /dev/null and b/js/src/jit-test/tests/binast/invalid/labelled-continue-outside-while.binjs differ diff --git a/js/src/jit-test/tests/binast/invalid/labelled-continue-outside-while.dir b/js/src/jit-test/tests/binast/invalid/labelled-continue-outside-while.dir new file mode 100644 index 000000000000..b49edc80961d --- /dev/null +++ b/js/src/jit-test/tests/binast/invalid/labelled-continue-outside-while.dir @@ -0,0 +1 @@ +// |jit-test| error: continue must be inside loop \ No newline at end of file diff --git a/js/src/jsapi-tests/binast/encode.py b/js/src/jsapi-tests/binast/encode.py index 00688a746120..9a7a96b5bad2 100755 --- a/js/src/jsapi-tests/binast/encode.py +++ b/js/src/jsapi-tests/binast/encode.py @@ -17,6 +17,9 @@ parser.add_option('--binjsdir', dest='binjsdir', help='cwd when running binjs_encode') parser.add_option('--binjs_encode', dest='binjs_encode', help='path to binjs_encode commad') +parser.add_option('--binjs_convert_from_json', dest='binjs_convert_from_json', + default="", + help='path to binjs_convert_from_json commad (optional)') (options, filters) = parser.parse_args() @@ -53,10 +56,30 @@ def ensure_file(path, name): ensure_dir(options.topsrcdir, 'topsrcdir') ensure_dir(options.binjsdir, 'binjsdir') ensure_file(options.binjs_encode, 'binjs_encode command') +if options.binjs_convert_from_json: + ensure_file(options.binjs_convert_from_json, 'binjs_convert_from_json command') jittest_dir = os.path.join(options.topsrcdir, 'js', 'src', 'jit-test', 'tests') ensure_dir(jittest_dir, 'jit-test') +jsapi_tests_dir = os.path.join(options.topsrcdir, 'js', 'src', 'jsapi-tests') +ensure_dir(jsapi_tests_dir, 'binast in jsapi-tests') + +jsapi_binast_dir = os.path.join(jsapi_tests_dir, 'binast') +ensure_dir(jsapi_binast_dir, 'binast in jsapi-tests') + +invalid_tests_dir = os.path.join(jsapi_binast_dir, 'invalid', 'tests') +ensure_dir(invalid_tests_dir, 'invalid tests') + +invalid_lib_dir = os.path.join(jsapi_binast_dir, 'invalid', 'lib') +ensure_dir(invalid_lib_dir, 'library for libvalid tests') +sys.path.insert(0, os.path.join(invalid_lib_dir)) + +invalid_tests_output_dir = os.path.join(jittest_dir, 'binast', 'invalid') +ensure_dir(invalid_tests_output_dir, 'invalid tests output') + +import filter_runner + def check_filter(outfile_path): """ Check if the output file is the target. @@ -345,10 +368,55 @@ def convert_wpt(): def convert_jsapi_test(): """ Convert jsapi-test files into .binjs. """ - binast_test_dir = os.path.join(options.topsrcdir, 'js', 'src', 'jsapi-tests', 'binast') - ensure_dir(binast_test_dir, 'binast in jsapi-tests') + encode_inplace(os.path.join(jsapi_binast_dir, 'parser', 'multipart')) - encode_inplace(os.path.join(binast_test_dir, 'parser', 'multipart')) + +def convert(infile_path, filter_path, outfile_path, binjs_convert_from_json_args=[]): + """ Convert the given .js file into .binjs, with filter applied. + + :param infile_path (string) + The path to the input .js file. + :param filter_path (string) + The path to the filter .py file. + :param outfile_path (string) + The path to the output .binjs file. + + :param binjs_convert_from_json_args (list) + The command line arguments passed to binjs_convert_from_json command. + """ + + if not check_filter(outfile_path): + return + + print(' converting', infile_path) + print(' to', outfile_path) + print('with filter', filter_path) + + infile = open(infile_path) + outfile = open(outfile_path, 'w') + + source = subprocess.check_output( + [options.binjs_encode, 'advanced', 'json'], + cwd=options.binjsdir, stdin=infile) + + filtered_source = filter_runner.run(filter_path, source) + + convert_from_json = subprocess.Popen( + [options.binjs_convert_from_json] + binjs_convert_from_json_args, + cwd=options.binjsdir, stdin=subprocess.PIPE, stdout=outfile) + convert_from_json.stdin.write(filtered_source) + convert_from_json.stdin.close() + + +def convert_invalid_test(): + for root, dirs, files in os.walk(invalid_tests_dir): + for filename in files: + if filename.endswith('.js'): + infile_path = os.path.join(root, filename) + filter_path = os.path.join(root, filename.replace('.js', '.py')) + outfile_path = os.path.join(invalid_tests_output_dir, + filename.replace('.js', '.binjs')) + convert(infile_path, filter_path, outfile_path) convert_jittest() @@ -356,3 +424,6 @@ convert_jittest() convert_wpt() convert_jsapi_test() + +if options.binjs_convert_from_json: + convert_invalid_test() diff --git a/js/src/jsapi-tests/binast/invalid/lib/filter_runner.py b/js/src/jsapi-tests/binast/invalid/lib/filter_runner.py new file mode 100644 index 000000000000..cafe2c4f4f36 --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/lib/filter_runner.py @@ -0,0 +1,26 @@ +# A utility to run filter program for given JSON format BinAST. + +import json +import runpy + + +def run(filter_path, source): + """ + Run filter script against JSON source. + + :param filter_path(string) + The path to the filter script (python script) + :param source(string) + The string representation of JSON format of BinAST file + :returns (string) + The string representation of filtered JSON + """ + ast = json.loads(source) + + # The filter script is executed with sys.path that has this directory in + # the first element, so that it can import filter_utils. + filter_global = runpy.run_path(filter_path) + + filtered_ast = filter_global['filter_ast'](ast) + + return json.dumps(filtered_ast) diff --git a/js/src/jsapi-tests/binast/invalid/lib/filter_utils.py b/js/src/jsapi-tests/binast/invalid/lib/filter_utils.py new file mode 100644 index 000000000000..56f7bab0117a --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/lib/filter_utils.py @@ -0,0 +1,180 @@ +# Utilities to modify JSON encoded AST +# +# All functions raise exception on unexpected case, to avoid overlooking AST +# change. + + +def assert_tagged_tuple(obj): + """ + Assert that the object is a tagged tuple + + :param obj (dict) + The tagged tuple + """ + type_ = obj['@TYPE'] + if type_ != 'tagged tuple': + raise Exception('expected a tagged tuple, got {}'.format(type_)) + + +def assert_list(obj): + """ + Assert that the object is a list + + :param obj (dict) + The list + """ + type_ = obj['@TYPE'] + if type_ != 'list': + raise Exception('expected a list, got {}'.format(type_)) + + +def assert_interface(obj, expected_name): + """ + Assert that the object is a tagged tuple for given interface + + :param obj (dict) + The tagged tuple + :param expected_name (string) + The name of the interface + """ + assert_tagged_tuple(obj) + actual_name = obj['@INTERFACE'] + if actual_name != expected_name: + raise Exception('expected {}, got {}'.format(expected_name, actual_name)) + + +def get_field(obj, name): + """ + Returns the field of the tagged tuple. + + :param obj (dict) + The tagged tuple + :param name (string) + The name of the field to get + :return (dict) + The field value + :raises Exception + If there's no such field + """ + assert_tagged_tuple(obj) + fields = obj['@FIELDS'] + for field in fields: + if field['@FIELD_NAME'] == name: + return field['@FIELD_VALUE'] + raise Exception('No such field: {}'.format(name)) + + +def replace_field(obj, name, value): + """ + Replaces the field of the tagged tuple. + + :param obj (dict) + the tagged tuple + :param name (string) + the name of the field to replace + :param value (dict) + the value of the field + :raises Exception + If there's no such field + """ + assert_tagged_tuple(obj) + fields = obj['@FIELDS'] + for field in fields: + if field['@FIELD_NAME'] == name: + field['@FIELD_VALUE'] = value + return + raise Exception('No such field: {}'.format(name)) + + +def remove_field(obj, name): + """ + Removes the field from the tagged tuple + + :param obj (dict) + the tagged tuple + :param name (string) + the name of the field to remove + :raises Exception + If there's no such field + """ + assert_tagged_tuple(obj) + i = 0 + fields = obj['@FIELDS'] + for field in fields: + if field['@FIELD_NAME'] == name: + del fields[i] + return + i += 1 + raise Exception('No such field: {}'.format(name)) + + +def get_element(obj, i): + """ + Returns the element of the list. + + :param obj (dict) + The list + :param i (int) + The indef of the element to get + :return (dict) + The element value + :raises Exception + On out of bound access + """ + assert_list(obj) + elements = obj['@VALUE'] + if i >= len(elements): + raise Exception('Out of bound: {} < {}'.format(i, len(elements))) + return elements[i] + + +def replace_element(obj, i, value): + """ + Replaces the element of the list. + + :param obj (dict) + the list + :param i (int) + The indef of the element to replace + :param value (dict) + the value of the element + :raises Exception + On out of bound access + """ + assert_list(obj) + elements = obj['@VALUE'] + if i >= len(elements): + raise Exception('Out of bound: {} < {}'.format(i, len(elements))) + elements[i] = value + + +def append_element(obj, value): + """ + Appends the element to the list. + + :param obj (dict) + the list + :param value (dict) + the value to be added to the list + """ + assert_list(obj) + elements = obj['@VALUE'] + elements.append(value) + + +def remove_element(obj, i): + """ + Removes the element from the list + + :param obj (dict) + the list + :param i (int) + The indef of the element to remove + :raises Exception + On out of bound access + """ + assert_list(obj) + elements = obj['@VALUE'] + if i >= len(elements): + raise Exception('Out of bound: {} < {}'.format(i, len(elements))) + del elements[i] diff --git a/js/src/jsapi-tests/binast/invalid/tests/break-outside-while.js b/js/src/jsapi-tests/binast/invalid/tests/break-outside-while.js new file mode 100644 index 000000000000..ddc8e948d1f1 --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/tests/break-outside-while.js @@ -0,0 +1,3 @@ +while (true) { + break; +} diff --git a/js/src/jsapi-tests/binast/invalid/tests/break-outside-while.py b/js/src/jsapi-tests/binast/invalid/tests/break-outside-while.py new file mode 100644 index 000000000000..3f8327ef604b --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/tests/break-outside-while.py @@ -0,0 +1,21 @@ +def filter_ast(ast): + # Move a break statement out of a while loop. + import filter_utils as utils + + utils.assert_interface(ast, 'Script') + global_stmts = utils.get_field(ast, 'statements') + + while_stmt = utils.get_element(global_stmts, 0) + utils.assert_interface(while_stmt, 'WhileStatement') + + while_body = utils.get_field(while_stmt, 'body') + utils.assert_interface(while_body, 'Block') + while_body_stmts = utils.get_field(while_body, 'statements') + + break_stmt = utils.get_element(while_body_stmts, 0) + utils.assert_interface(break_stmt, 'BreakStatement') + + utils.remove_element(while_body_stmts, 0) + utils.append_element(global_stmts, break_stmt) + + return ast diff --git a/js/src/jsapi-tests/binast/invalid/tests/continue-outside-while.js b/js/src/jsapi-tests/binast/invalid/tests/continue-outside-while.js new file mode 100644 index 000000000000..b6739703a8fa --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/tests/continue-outside-while.js @@ -0,0 +1,3 @@ +while (true) { + continue; +} diff --git a/js/src/jsapi-tests/binast/invalid/tests/continue-outside-while.py b/js/src/jsapi-tests/binast/invalid/tests/continue-outside-while.py new file mode 100644 index 000000000000..8f9177c1f7c5 --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/tests/continue-outside-while.py @@ -0,0 +1,21 @@ +def filter_ast(ast): + # Move a continue statement out of a while loop. + import filter_utils as utils + + utils.assert_interface(ast, 'Script') + global_stmts = utils.get_field(ast, 'statements') + + while_stmt = utils.get_element(global_stmts, 0) + utils.assert_interface(while_stmt, 'WhileStatement') + + while_body = utils.get_field(while_stmt, 'body') + utils.assert_interface(while_body, 'Block') + while_body_stmts = utils.get_field(while_body, 'statements') + + continue_stmt = utils.get_element(while_body_stmts, 0) + utils.assert_interface(continue_stmt, 'ContinueStatement') + + utils.remove_element(while_body_stmts, 0) + utils.append_element(global_stmts, continue_stmt) + + return ast diff --git a/js/src/jsapi-tests/binast/invalid/tests/labelled-break-outside-while.js b/js/src/jsapi-tests/binast/invalid/tests/labelled-break-outside-while.js new file mode 100644 index 000000000000..1462f189e3d8 --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/tests/labelled-break-outside-while.js @@ -0,0 +1,3 @@ +foo: while (true) { + break foo; +} diff --git a/js/src/jsapi-tests/binast/invalid/tests/labelled-break-outside-while.py b/js/src/jsapi-tests/binast/invalid/tests/labelled-break-outside-while.py new file mode 100644 index 000000000000..67134aa4da1e --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/tests/labelled-break-outside-while.py @@ -0,0 +1,24 @@ +def filter_ast(ast): + # Move a break statement out of a while loop. + import filter_utils as utils + + utils.assert_interface(ast, 'Script') + global_stmts = utils.get_field(ast, 'statements') + + labelled_stmt = utils.get_element(global_stmts, 0) + utils.assert_interface(labelled_stmt, 'LabelledStatement') + + while_stmt = utils.get_field(labelled_stmt, 'body') + utils.assert_interface(while_stmt, 'WhileStatement') + + while_body = utils.get_field(while_stmt, 'body') + utils.assert_interface(while_body, 'Block') + while_body_stmts = utils.get_field(while_body, 'statements') + + break_stmt = utils.get_element(while_body_stmts, 0) + utils.assert_interface(break_stmt, 'BreakStatement') + + utils.remove_element(while_body_stmts, 0) + utils.append_element(global_stmts, break_stmt) + + return ast diff --git a/js/src/jsapi-tests/binast/invalid/tests/labelled-continue-outside-while.js b/js/src/jsapi-tests/binast/invalid/tests/labelled-continue-outside-while.js new file mode 100644 index 000000000000..a621546fc487 --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/tests/labelled-continue-outside-while.js @@ -0,0 +1,3 @@ +foo: while (true) { + continue foo; +} diff --git a/js/src/jsapi-tests/binast/invalid/tests/labelled-continue-outside-while.py b/js/src/jsapi-tests/binast/invalid/tests/labelled-continue-outside-while.py new file mode 100644 index 000000000000..e8d147d91cef --- /dev/null +++ b/js/src/jsapi-tests/binast/invalid/tests/labelled-continue-outside-while.py @@ -0,0 +1,24 @@ +def filter_ast(ast): + # Move a continue statement out of a while loop. + import filter_utils as utils + + utils.assert_interface(ast, 'Script') + global_stmts = utils.get_field(ast, 'statements') + + labelled_stmt = utils.get_element(global_stmts, 0) + utils.assert_interface(labelled_stmt, 'LabelledStatement') + + while_stmt = utils.get_field(labelled_stmt, 'body') + utils.assert_interface(while_stmt, 'WhileStatement') + + while_body = utils.get_field(while_stmt, 'body') + utils.assert_interface(while_body, 'Block') + while_body_stmts = utils.get_field(while_body, 'statements') + + continue_stmt = utils.get_element(while_body_stmts, 0) + utils.assert_interface(continue_stmt, 'ContinueStatement') + + utils.remove_element(while_body_stmts, 0) + utils.append_element(global_stmts, continue_stmt) + + return ast diff --git a/js/src/shell/js.cpp b/js/src/shell/js.cpp index 16294eaa8cd8..5967926851f9 100644 --- a/js/src/shell/js.cpp +++ b/js/src/shell/js.cpp @@ -3699,7 +3699,7 @@ static bool Crash(JSContext* cx, unsigned argc, Value* vp) { #ifndef DEBUG MOZ_ReportCrash(utf8chars.get(), __FILE__, __LINE__); #endif - MOZ_CRASH_UNSAFE_OOL(utf8chars.get()); + MOZ_CRASH_UNSAFE(utf8chars.get()); } static bool GetSLX(JSContext* cx, unsigned argc, Value* vp) { diff --git a/js/src/tests/jstests.py b/js/src/tests/jstests.py index d2da3d38c559..d5a66b9179d1 100755 --- a/js/src/tests/jstests.py +++ b/js/src/tests/jstests.py @@ -304,7 +304,7 @@ def parse_args(): return (options, prefix, requested_paths, excluded_paths) -def load_wpt_tests(xul_tester, requested_paths, excluded_paths): +def load_wpt_tests(xul_tester, requested_paths, excluded_paths, update_manifest=True): """Return a list of `RefTestCase` objects for the jsshell testharness.js tests filtered by the given paths and debug-ness.""" repo_root = abspath(os.path.join(here, "..", "..", "..")) @@ -323,6 +323,7 @@ def load_wpt_tests(xul_tester, requested_paths, excluded_paths): "testing/mozbase/mozprocess", "testing/mozbase/mozprofile", "testing/mozbase/mozrunner", + "testing/mozbase/mozversion", "testing/web-platform/", "testing/web-platform/tests/tools", "testing/web-platform/tests/tools/third_party/html5lib", @@ -356,7 +357,8 @@ def load_wpt_tests(xul_tester, requested_paths, excluded_paths): logger = wptlogging.setup({}, {}) - manifestupdate.run(repo_root, manifest_root, logger) + test_manifests = manifestupdate.run(repo_root, manifest_root, logger, + update=update_manifest) kwargs = vars(wptcommandline.create_parser().parse_args([])) kwargs.update({ @@ -366,15 +368,12 @@ def load_wpt_tests(xul_tester, requested_paths, excluded_paths): "wasm": xul_tester.test("wasmIsSupported()"), }) wptcommandline.set_from_config(kwargs) - test_paths = kwargs["test_paths"] def filter_jsshell_tests(it): - for test in it: - if test[1].get("jsshell"): - yield test - - test_manifests = testloader.ManifestLoader(test_paths, types=["testharness"], - meta_filters=[filter_jsshell_tests]).load() + for item_type, path, tests in it: + tests = set(item for item in tests if item.jsshell) + if tests: + yield item_type, path, tests run_info_extras = products.load_product(kwargs["config"], "firefox")[-1](**kwargs) run_info = wpttest.get_run_info(kwargs["test_paths"]["/"]["metadata_path"], @@ -388,7 +387,7 @@ def load_wpt_tests(xul_tester, requested_paths, excluded_paths): loader = testloader.TestLoader(test_manifests, ["testharness"], run_info, - manifest_filters=[path_filter]) + manifest_filters=[path_filter, filter_jsshell_tests]) extra_helper_paths = [ os.path.join(here, "web-platform-test-shims.js"), diff --git a/js/src/tests/lib/jittests.py b/js/src/tests/lib/jittests.py index 018ee496df52..1f9f543faf9b 100755 --- a/js/src/tests/lib/jittests.py +++ b/js/src/tests/lib/jittests.py @@ -393,6 +393,8 @@ def find_tests(substring=None, run_binast=False): continue if os.path.join('binast', 'nonlazy') in dirpath: continue + if os.path.join('binast', 'invalid') in dirpath: + continue for filename in filenames: if not (filename.endswith('.js') or filename.endswith('.binjs')): diff --git a/layout/reftests/border-image/reftest.list b/layout/reftests/border-image/reftest.list index 0b18a4290cab..fc9828183b8e 100644 --- a/layout/reftests/border-image/reftest.list +++ b/layout/reftests/border-image/reftest.list @@ -48,14 +48,14 @@ fuzzy(0-1,0-149) fuzzy-if(OSX,0-1,0-10595) fuzzy-if(webrender,1-3,24999-25136) = fuzzy(0-1,0-433) fuzzy-if(skiaContent,0-1,0-2500) fuzzy-if(webrender,1-3,84138-85584) == border-image-linear-gradient-slice-fill-1.html border-image-linear-gradient-slice-fill-1-ref.html fuzzy(0-1,0-177) fuzzy-if(OSX,0-1,0-25771) fuzzy-if(skiaContent&&!Android,0-1,0-400) fuzzy-if(Android,0-1,0-6093) fuzzy-if(webrender,1-3,57249-57464) == border-image-linear-gradient-slice-fill-2.html border-image-linear-gradient-slice-fill-2-ref.html fuzzy(0-1,0-48) fuzzy-if(OSX,0-5,0-1676) fuzzy-if(webrender,1-1,4464-4537) == border-image-linear-gradient-width.html border-image-linear-gradient-width-ref.html -fuzzy(0-1,0-5000) fuzzy-if(OSX,0-1,0-15000) fuzzy-if(webrender,2-2,58629-58936) == border-image-linear-gradient-slice-width.html border-image-linear-gradient-slice-width-ref.html -fuzzy(0-1,0-3000) fuzzy-if(OSX,0-1,0-6000) fuzzy-if(webrender,1-3,26067-26413) == border-image-linear-gradient-outset.html border-image-linear-gradient-outset-ref.html +fuzzy(0-1,0-5000) fuzzy-if(OSX,0-1,0-15000) fuzzy-if(webrender,2-2,58629-58939) == border-image-linear-gradient-slice-width.html border-image-linear-gradient-slice-width-ref.html +fuzzy(0-1,0-3000) fuzzy-if(OSX,0-1,0-6000) fuzzy-if(webrender,1-3,25940-26413) == border-image-linear-gradient-outset.html border-image-linear-gradient-outset-ref.html fuzzy(0-1,0-12) fuzzy-if(skiaContent,0-1,0-400) fuzzy-if(webrender,1-3,26195-26872) == border-image-linear-gradient-repeat-repeat-1.html border-image-linear-gradient-repeat-repeat-1-ref.html fuzzy(0-1,0-13) fuzzy-if(skiaContent,0-1,0-300) fuzzy-if(webrender,1-3,26168-27131) == border-image-linear-gradient-repeat-round-1.html border-image-linear-gradient-repeat-round-1-ref.html fuzzy-if(webrender,1-3,64826-67805) == border-image-linear-gradient-repeat-repeat-2.html border-image-linear-gradient-repeat-repeat-2-ref.html fuzzy(0-1,0-576) fuzzy-if(skiaContent,0-1,0-2000) fuzzy-if(webrender,1-2,64575-68383) == border-image-linear-gradient-repeat-round-2.html border-image-linear-gradient-repeat-round-2-ref.html fuzzy(0-1,0-8533) fuzzy-if(webrender,1-3,84604-85925) == border-image-linear-gradient-repeat-repeat-3.html border-image-linear-gradient-repeat-repeat-3-ref.html -fuzzy(0-1,0-7161) fuzzy-if(webrender,2-3,92540-93290) == border-image-linear-gradient-repeat-round-3.html border-image-linear-gradient-repeat-round-3-ref.html +fuzzy(0-1,0-7161) fuzzy-if(webrender,1-3,85706-86037) == border-image-linear-gradient-repeat-round-3.html border-image-linear-gradient-repeat-round-3-ref.html fuzzy-if(webrender,0-1,0-2096) == border-image-radial-gradient.html border-image-radial-gradient-ref.html fuzzy(0-1,0-42) fuzzy-if(skiaContent,0-2,0-20) fuzzy-if(webrender,0-1,0-37818) == border-image-radial-gradient-slice-1.html border-image-radial-gradient-slice-1-ref.html diff --git a/layout/reftests/bugs/reftest.list b/layout/reftests/bugs/reftest.list index a67cba565459..4fc80c2bc36e 100644 --- a/layout/reftests/bugs/reftest.list +++ b/layout/reftests/bugs/reftest.list @@ -318,7 +318,7 @@ fuzzy-if(Android,0-3,0-50) fuzzy-if(skiaContent,0-1,0-133) == 273681-1.html 2736 == 283686-2.html 283686-2-ref.html == 283686-3.html about:blank == 289384-1.xhtml 289384-ref.xhtml -fails-if(webrender&>kWidget) random-if(d2d) fuzzy-if(webrender&&cocoaWidget,1-2,400-900) fuzzy-if(Android,0-8,0-1439) HTTP == 289480.html#top 289480-ref.html # basically-verbatim acid2 test, HTTP for a 404 page -- bug 578114 for the d2d failures +random-if(d2d) fuzzy-if(Android,0-8,0-1439) fuzzy-if(webrender,0-6,0-1124) HTTP == 289480.html#top 289480-ref.html # basically-verbatim acid2 test, HTTP for a 404 page -- bug 578114 for the d2d failures == 290129-1.html 290129-1-ref.html == 291078-1.html 291078-1-ref.html == 291078-2.html 291078-2-ref.html diff --git a/layout/reftests/css-gradients/reftest.list b/layout/reftests/css-gradients/reftest.list index ba287c710f72..8a77d5147740 100644 --- a/layout/reftests/css-gradients/reftest.list +++ b/layout/reftests/css-gradients/reftest.list @@ -27,7 +27,7 @@ fuzzy-if(!contentSameGfxBackendAsCanvas,0-3,0-88500) fuzzy-if(azureSkiaGL||skiaC fuzzy-if(!contentSameGfxBackendAsCanvas,0-3,0-88500) fuzzy-if(azureSkiaGL||skiaContent,0-3,0-89700) == linear-vertical-1b.html linear-vertical-1-ref.html fuzzy-if(!contentSameGfxBackendAsCanvas,0-3,0-88500) fuzzy-if(azureSkiaGL||skiaContent,0-3,0-89700) == linear-vertical-1c.html linear-vertical-1-ref.html fuzzy-if(!contentSameGfxBackendAsCanvas,0-3,0-88500) fuzzy-if(azureSkiaGL||skiaContent,0-3,0-89700) == linear-vertical-1d.html linear-vertical-1-ref.html -fuzzy-if(webrender&&cocoaWidget,0-1,0-98) == linear-vertical-subpixel-1.html linear-vertical-subpixel-1-ref.html +fuzzy-if(webrender,0-3,0-21070) == linear-vertical-subpixel-1.html linear-vertical-subpixel-1-ref.html == linear-viewport.html linear-viewport-ref.html == nostops.html about:blank == onestop.html about:blank diff --git a/layout/reftests/w3c-css/submitted/images3/reftest.list b/layout/reftests/w3c-css/submitted/images3/reftest.list index 5abac4f3b5fa..7d963efa9f25 100644 --- a/layout/reftests/w3c-css/submitted/images3/reftest.list +++ b/layout/reftests/w3c-css/submitted/images3/reftest.list @@ -185,9 +185,9 @@ fails-if(!webrender) random-if(webrender) == object-position-svg-001e.html objec == object-position-svg-001i.html object-position-svg-001-ref.html fails-if(!webrender) random-if(webrender) == object-position-svg-001o.html object-position-svg-001-ref.html # bug 1103286 == object-position-svg-001p.html object-position-svg-001-ref.html -fails-if(!webrender) == object-position-svg-002e.html object-position-svg-002-ref.html # bug 1103286 +fails == object-position-svg-002e.html object-position-svg-002-ref.html # bug 1103286 == object-position-svg-002i.html object-position-svg-002-ref.html -fails-if(!webrender) == object-position-svg-002o.html object-position-svg-002-ref.html # bug 1103286 +fails == object-position-svg-002o.html object-position-svg-002-ref.html # bug 1103286 == object-position-svg-002p.html object-position-svg-002-ref.html # Tests for gradient color stops with 'currentcolor' diff --git a/layout/style/nsLayoutStylesheetCache.cpp b/layout/style/nsLayoutStylesheetCache.cpp index 46e683a0d671..4deda8006add 100644 --- a/layout/style/nsLayoutStylesheetCache.cpp +++ b/layout/style/nsLayoutStylesheetCache.cpp @@ -274,7 +274,7 @@ static void ErrorLoadingSheet(nsIURI* aURI, const char* aMsg, } } - MOZ_CRASH_UNSAFE_OOL(errorMessage.get()); + MOZ_CRASH_UNSAFE(errorMessage.get()); } void nsLayoutStylesheetCache::LoadSheet(nsIURI* aURI, diff --git a/mfbt/Assertions.cpp b/mfbt/Assertions.cpp index 8e680929896a..8bf7f29182f8 100644 --- a/mfbt/Assertions.cpp +++ b/mfbt/Assertions.cpp @@ -50,9 +50,9 @@ MOZ_FORMAT_PRINTF(3, 4) void MOZ_CrashPrintf(const char* aFilename, int aLine, ret >= 0 && size_t(ret) < sPrintfCrashReasonSize, "Could not write the explanation string to the supplied buffer!"); #ifdef DEBUG - MOZ_CrashOOL(aFilename, aLine, sPrintfCrashReason); + MOZ_Crash(aFilename, aLine, sPrintfCrashReason); #else - MOZ_CrashOOL(nullptr, aLine, sPrintfCrashReason); + MOZ_Crash(nullptr, aLine, sPrintfCrashReason); #endif } diff --git a/mfbt/Assertions.h b/mfbt/Assertions.h index 69fda73a0028..7bd3efab0574 100644 --- a/mfbt/Assertions.h +++ b/mfbt/Assertions.h @@ -293,27 +293,27 @@ MOZ_NoReturn(int aLine) { #endif /* - * MOZ_CRASH_UNSAFE_OOL(explanation-string) can be used if the explanation - * string cannot be a string literal (but no other processing needs to be done - * on it). A regular MOZ_CRASH() is preferred wherever possible, as passing - * arbitrary strings from a potentially compromised process is not without risk. - * If the string being passed is the result of a printf-style function, - * consider using MOZ_CRASH_UNSAFE_PRINTF instead. + * MOZ_CRASH_UNSAFE(explanation-string) can be used if the explanation string + * cannot be a string literal (but no other processing needs to be done on it). + * A regular MOZ_CRASH() is preferred wherever possible, as passing arbitrary + * strings from a potentially compromised process is not without risk. If the + * string being passed is the result of a printf-style function, consider using + * MOZ_CRASH_UNSAFE_PRINTF instead. * * @note This macro causes data collection because crash strings are annotated * to crash-stats and are publicly visible. Firefox data stewards must do data * review on usages of this macro. */ -static inline MOZ_COLD MOZ_NORETURN void MOZ_CrashOOL(const char* aFilename, - int aLine, - const char* aReason) { +static inline MOZ_COLD MOZ_NORETURN void MOZ_Crash(const char* aFilename, + int aLine, + const char* aReason) { #ifdef DEBUG MOZ_ReportCrash(aReason, aFilename, aLine); #endif MOZ_CRASH_ANNOTATE(aReason); MOZ_REALLY_CRASH(aLine); } -#define MOZ_CRASH_UNSAFE_OOL(reason) MOZ_CrashOOL(__FILE__, __LINE__, reason) +#define MOZ_CRASH_UNSAFE(reason) MOZ_Crash(__FILE__, __LINE__, reason) static const size_t sPrintfMaxArgs = 4; static const size_t sPrintfCrashReasonSize = 1024; diff --git a/mfbt/RangedPtr.h b/mfbt/RangedPtr.h index 436c1bd50409..a0db2eb78ddc 100644 --- a/mfbt/RangedPtr.h +++ b/mfbt/RangedPtr.h @@ -211,7 +211,7 @@ class RangedPtr { return *this; } - T& operator[](int aIndex) const { + T& operator[](ptrdiff_t aIndex) const { MOZ_ASSERT(size_t(aIndex > 0 ? aIndex : -aIndex) <= size_t(-1) / sizeof(T)); return *create(mPtr + aIndex); } diff --git a/netwerk/ipc/NeckoCommon.h b/netwerk/ipc/NeckoCommon.h index bd0f127bb80e..543ffe6b4789 100644 --- a/netwerk/ipc/NeckoCommon.h +++ b/netwerk/ipc/NeckoCommon.h @@ -38,7 +38,7 @@ class TabChild; msg.AppendLiteral( \ " (set NECKO_ERRORS_ARE_FATAL=0 in your environment " \ "to convert this error into a warning.)"); \ - MOZ_CRASH_UNSAFE_OOL(msg.get()); \ + MOZ_CRASH_UNSAFE(msg.get()); \ } else { \ msg.AppendLiteral( \ " (set NECKO_ERRORS_ARE_FATAL=1 in your environment " \ diff --git a/netwerk/ipc/NeckoParent.cpp b/netwerk/ipc/NeckoParent.cpp index 2793515c32ec..8feac733cbb2 100644 --- a/netwerk/ipc/NeckoParent.cpp +++ b/netwerk/ipc/NeckoParent.cpp @@ -148,7 +148,7 @@ static already_AddRefed GetRequestingPrincipal( // We prefer to crash on the parent, so we get the reason in the crash report. static MOZ_COLD void CrashWithReason(const char* reason) { #ifndef RELEASE_OR_BETA - MOZ_CRASH_UNSAFE_OOL(reason); + MOZ_CRASH_UNSAFE(reason); #endif } diff --git a/testing/web-platform/manifestupdate.py b/testing/web-platform/manifestupdate.py index 48576ac2ac68..389b776aa2ae 100644 --- a/testing/web-platform/manifestupdate.py +++ b/testing/web-platform/manifestupdate.py @@ -114,12 +114,12 @@ def run(src_root, obj_root, logger=None, **kwargs): else: logger.debug("Skipping manifest download") - if kwargs["update"] or kwargs["rebuild"]: - manifests = update(logger, src_wpt_dir, test_paths, rebuild=kwargs["rebuild"], - cache_root=kwargs["cache_root"]) - else: - logger.debug("Skipping manifest update") - manifests = load_manifests(test_paths) + update = kwargs["update"] or kwargs["rebuild"] + manifests = load_and_update(logger, src_wpt_dir, test_paths, + update=update, + rebuild=kwargs["rebuild"], + cache_root=kwargs["cache_root"], + meta_filters=kwargs.get("meta_filters")) return manifests @@ -175,7 +175,8 @@ def generate_config(logger, repo_root, wpt_dir, dest_path, force_rewrite=False): return dest_config_path -def update(logger, wpt_dir, test_paths, rebuild=False, config_dir=None, cache_root=None): +def load_and_update(logger, wpt_dir, test_paths, rebuild=False, config_dir=None, cache_root=None, + meta_filters=None, update=True): rv = {} wptdir_hash = hashlib.sha256(os.path.abspath(wpt_dir)).hexdigest() for url_base, paths in test_paths.iteritems(): @@ -184,8 +185,11 @@ def update(logger, wpt_dir, test_paths, rebuild=False, config_dir=None, cache_ro m = manifest.manifest.load_and_update(paths["tests_path"], manifest_path, url_base, + update=update, + rebuild=rebuild, working_copy=True, - cache_root=this_cache_root) + cache_root=this_cache_root, + meta_filters=meta_filters) path_data = {"url_base": url_base} path_data.update(paths) rv[m] = path_data @@ -193,16 +197,6 @@ def update(logger, wpt_dir, test_paths, rebuild=False, config_dir=None, cache_ro return rv -def load_manifests(test_paths): - rv = {} - for url_base, paths in test_paths.iteritems(): - m = manifest.manifest.load(paths["tests_path"], manifest_path) - path_data = {"url_base": url_base} - path_data.update(paths) - rv[m] = path_data - return rv - - def log_error(logger, manifest_path, msg): logger.lint_error(path=manifest_path, message=msg, diff --git a/testing/web-platform/meta/2dcontext/context-attributes/getContextAttributes.html.ini b/testing/web-platform/meta/2dcontext/context-attributes/getContextAttributes.html.ini new file mode 100644 index 000000000000..ad09d258bf7b --- /dev/null +++ b/testing/web-platform/meta/2dcontext/context-attributes/getContextAttributes.html.ini @@ -0,0 +1,10 @@ +[getContextAttributes.html] + [Test context creation attributes alpha: true] + expected: FAIL + + [Test context creation attributes alpha: false] + expected: FAIL + + [Test default context creation attributes] + expected: FAIL + diff --git a/testing/web-platform/meta/IndexedDB/idb-explicit-commit.any.js.ini b/testing/web-platform/meta/IndexedDB/idb-explicit-commit.any.js.ini index 3dafcd074719..275de216f440 100644 --- a/testing/web-platform/meta/IndexedDB/idb-explicit-commit.any.js.ini +++ b/testing/web-platform/meta/IndexedDB/idb-explicit-commit.any.js.ini @@ -71,6 +71,9 @@ [Transactions with same scope should stay in program order, even if one calls commit.] expected: FAIL + [Transactions that handle all errors properly should be behave as expected when an explicit commit is called in an onerror handler.] + expected: FAIL + [idb-explicit-commit.any.html] [Ensure that calling commit on a committed transaction throws.] @@ -145,3 +148,6 @@ [Transactions with same scope should stay in program order, even if one calls commit.] expected: FAIL + [Transactions that handle all errors properly should be behave as expected when an explicit commit is called in an onerror handler.] + expected: FAIL + diff --git a/testing/web-platform/meta/IndexedDB/idlharness.any.js.ini b/testing/web-platform/meta/IndexedDB/idlharness.any.js.ini index abe2ce7252e4..d8565f02a98d 100644 --- a/testing/web-platform/meta/IndexedDB/idlharness.any.js.ini +++ b/testing/web-platform/meta/IndexedDB/idlharness.any.js.ini @@ -5,6 +5,9 @@ [IDBFactory interface: operation databases()] expected: FAIL + [IDBTransaction interface: operation commit()] + expected: FAIL + [idlharness.any.html] [idlharness] @@ -16,6 +19,9 @@ [IDBFactory interface: operation databases()] expected: FAIL + [IDBTransaction interface: operation commit()] + expected: FAIL + [idlharness.any.worker.html] [idlharness] @@ -27,6 +33,9 @@ [IDBFactory interface: operation databases()] expected: FAIL + [IDBTransaction interface: operation commit()] + expected: FAIL + [idlharness.https.any.serviceworker.html] expected: TIMEOUT @@ -38,3 +47,6 @@ [IDBFactory interface: operation databases()] expected: FAIL + [IDBTransaction interface: operation commit()] + expected: FAIL + diff --git a/testing/web-platform/meta/IndexedDB/transaction-lifecycle.htm.ini b/testing/web-platform/meta/IndexedDB/transaction-lifecycle.htm.ini deleted file mode 100644 index 5ed357fdf731..000000000000 --- a/testing/web-platform/meta/IndexedDB/transaction-lifecycle.htm.ini +++ /dev/null @@ -1,2 +0,0 @@ -[transaction-lifecycle.htm] - disabled: Bug 1519865 diff --git a/testing/web-platform/meta/accelerometer/Accelerometer-supported-by-feature-policy.html.ini b/testing/web-platform/meta/accelerometer/Accelerometer-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..86ddd4456ae9 --- /dev/null +++ b/testing/web-platform/meta/accelerometer/Accelerometer-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[Accelerometer-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise accelerometer.] + expected: FAIL + diff --git a/testing/web-platform/meta/ambient-light/AmbientLightSensor-supported-by-feature-policy.html.ini b/testing/web-platform/meta/ambient-light/AmbientLightSensor-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..87364e4d2041 --- /dev/null +++ b/testing/web-platform/meta/ambient-light/AmbientLightSensor-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[AmbientLightSensor-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise ambient-light-sensor.] + expected: FAIL + diff --git a/testing/web-platform/meta/animation-worklet/animation-worklet-inside-iframe.https.html.ini b/testing/web-platform/meta/animation-worklet/animation-worklet-inside-iframe.https.html.ini new file mode 100644 index 000000000000..89c4d531d8a4 --- /dev/null +++ b/testing/web-platform/meta/animation-worklet/animation-worklet-inside-iframe.https.html.ini @@ -0,0 +1,5 @@ +[animation-worklet-inside-iframe.https.html] + expected: TIMEOUT + [Both main frame and iframe should update the opacity of their target] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/animation-worklet/current-time.https.html.ini b/testing/web-platform/meta/animation-worklet/current-time.https.html.ini new file mode 100644 index 000000000000..3bdb0f7dcbf4 --- /dev/null +++ b/testing/web-platform/meta/animation-worklet/current-time.https.html.ini @@ -0,0 +1,7 @@ +[current-time.https.html] + [The current time returns the hold time when set] + expected: FAIL + + [The current time is calculated from the timeline time and start time] + expected: FAIL + diff --git a/testing/web-platform/meta/animation-worklet/scroll-timeline-writing-modes.https.html.ini b/testing/web-platform/meta/animation-worklet/scroll-timeline-writing-modes.https.html.ini new file mode 100644 index 000000000000..0d6dd8a50119 --- /dev/null +++ b/testing/web-platform/meta/animation-worklet/scroll-timeline-writing-modes.https.html.ini @@ -0,0 +1,2 @@ +[scroll-timeline-writing-modes.https.html] + expected: ERROR diff --git a/testing/web-platform/meta/animation-worklet/worklet-animation-with-fill-mode.https.html.ini b/testing/web-platform/meta/animation-worklet/worklet-animation-with-fill-mode.https.html.ini new file mode 100644 index 000000000000..5d7efe407f41 --- /dev/null +++ b/testing/web-platform/meta/animation-worklet/worklet-animation-with-fill-mode.https.html.ini @@ -0,0 +1,19 @@ +[worklet-animation-with-fill-mode.https.html] + [Effect with fill mode forwards in after phase produces output that is equivalent to effect's end value.] + expected: FAIL + + [Effect with local time at start point is in active phase.] + expected: FAIL + + [Effect without fill mode backwards in before phase (local time before start) should deactivate the animation.] + expected: FAIL + + [Effect without fill mode forwards in after phase (local time beyond end) should deactivate the animation.] + expected: FAIL + + [Effect without fill mode in after phase (local time at end) should deactivate the animation.] + expected: FAIL + + [Effect with fill mode backwards in before phase produces output that is equivalent to effect's start value.] + expected: FAIL + diff --git a/testing/web-platform/meta/animation-worklet/worklet-animation-with-invalid-effect.https.html.ini b/testing/web-platform/meta/animation-worklet/worklet-animation-with-invalid-effect.https.html.ini new file mode 100644 index 000000000000..41fe06887f7e --- /dev/null +++ b/testing/web-platform/meta/animation-worklet/worklet-animation-with-invalid-effect.https.html.ini @@ -0,0 +1,4 @@ +[worklet-animation-with-invalid-effect.https.html] + [Trying to play invalid worklet animation should throw an exception.] + expected: FAIL + diff --git a/testing/web-platform/meta/async-local-storage/api-surface.tentative.https.html.ini b/testing/web-platform/meta/async-local-storage/api-surface.tentative.https.html.ini deleted file mode 100644 index 6fc771828557..000000000000 --- a/testing/web-platform/meta/async-local-storage/api-surface.tentative.https.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[api-surface.tentative.https.html] - expected: TIMEOUT diff --git a/testing/web-platform/meta/async-local-storage/key-types.tentative.https.html.ini b/testing/web-platform/meta/async-local-storage/key-types.tentative.https.html.ini deleted file mode 100644 index a878dd98e501..000000000000 --- a/testing/web-platform/meta/async-local-storage/key-types.tentative.https.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[key-types.tentative.https.html] - expected: TIMEOUT diff --git a/testing/web-platform/meta/async-local-storage/non-secure-context-dynamic-import.tentative.html.ini b/testing/web-platform/meta/async-local-storage/non-secure-context-dynamic-import.tentative.html.ini deleted file mode 100644 index b6d895f4c011..000000000000 --- a/testing/web-platform/meta/async-local-storage/non-secure-context-dynamic-import.tentative.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[non-secure-context-dynamic-import.tentative.html] - [Async local storage: should not work in non-secure contexts when included via import()] - expected: FAIL - diff --git a/testing/web-platform/meta/async-local-storage/non-secure-context-import-statement.tentative.html.ini b/testing/web-platform/meta/async-local-storage/non-secure-context-import-statement.tentative.html.ini deleted file mode 100644 index 9edd135f65b7..000000000000 --- a/testing/web-platform/meta/async-local-storage/non-secure-context-import-statement.tentative.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[non-secure-context-import-statement.tentative.html] - expected: TIMEOUT - [Async local storage: should not work in non-secure contexts when included via an import statement] - expected: TIMEOUT - diff --git a/testing/web-platform/meta/async-local-storage/non-secure-context-script-element.tentative.html.ini b/testing/web-platform/meta/async-local-storage/non-secure-context-script-element.tentative.html.ini deleted file mode 100644 index 3c0abd3f2660..000000000000 --- a/testing/web-platform/meta/async-local-storage/non-secure-context-script-element.tentative.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[non-secure-context-script-element.tentative.html] - expected: TIMEOUT - [Async local storage: should not work in non-secure contexts when included via a script element] - expected: TIMEOUT - diff --git a/testing/web-platform/meta/async-local-storage/storage-smoke-test.tentative.https.html.ini b/testing/web-platform/meta/async-local-storage/storage-smoke-test.tentative.https.html.ini deleted file mode 100644 index ed3bae849e65..000000000000 --- a/testing/web-platform/meta/async-local-storage/storage-smoke-test.tentative.https.html.ini +++ /dev/null @@ -1,8 +0,0 @@ -[storage-smoke-test.tentative.https.html] - expected: - if (os == "linux") and debug and not webrender: TIMEOUT - if (os == "linux") and debug and webrender: TIMEOUT - if (os == "linux") and not debug: TIMEOUT - if os == "win": TIMEOUT - if os == "android": TIMEOUT - if os == "mac": TIMEOUT diff --git a/testing/web-platform/meta/background-fetch/fetch-uploads.https.window.js.ini b/testing/web-platform/meta/background-fetch/fetch-uploads.https.window.js.ini index 174c06966f21..080eddac7b4f 100644 --- a/testing/web-platform/meta/background-fetch/fetch-uploads.https.window.js.ini +++ b/testing/web-platform/meta/background-fetch/fetch-uploads.https.window.js.ini @@ -2,3 +2,9 @@ [Fetch with an upload should work] expected: FAIL + [Progress event includes uploaded bytes] + expected: FAIL + + [Duplicate upload requests work and can be distinguished.] + expected: FAIL + diff --git a/testing/web-platform/meta/background-fetch/fetch.https.window.js.ini b/testing/web-platform/meta/background-fetch/fetch.https.window.js.ini index 4bc0ebd50c94..35ba60310ed8 100644 --- a/testing/web-platform/meta/background-fetch/fetch.https.window.js.ini +++ b/testing/web-platform/meta/background-fetch/fetch.https.window.js.ini @@ -50,3 +50,9 @@ [Matching multiple times on the same request works as expected.] expected: FAIL + [Responses failing CORS checks are not leaked] + expected: FAIL + + [Access to active fetches is supported.] + expected: FAIL + diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-filter.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-filter.https.html.ini index c55b8929cfa3..93f000abfc38 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-filter.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-filter.https.html.ini @@ -1,6 +1,7 @@ [empty-filter.https.html] + expected: ERROR [A filter must restrict the devices in some way.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-filters-member.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-filters-member.https.html.ini index 575f1ba8200f..e50cb41d21ca 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-filters-member.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-filters-member.https.html.ini @@ -1,6 +1,7 @@ [empty-filters-member.https.html] + expected: ERROR [An empty |filters| member should result in a TypeError] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-namePrefix.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-namePrefix.https.html.ini index 3f791d024b4e..bffd18c6ab9a 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-namePrefix.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-namePrefix.https.html.ini @@ -1,6 +1,7 @@ [empty-namePrefix.https.html] + expected: ERROR [requestDevice with empty namePrefix. Should reject with TypeError.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-services-member.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-services-member.https.html.ini index 36be184abdd9..1dfb454211ac 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-services-member.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/empty-services-member.https.html.ini @@ -1,6 +1,7 @@ [empty-services-member.https.html] + expected: ERROR [Services member must contain at least one service.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/filters-xor-acceptAllDevices.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/filters-xor-acceptAllDevices.https.html.ini index e18159bae31f..519ea5c0cef4 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/filters-xor-acceptAllDevices.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/filters-xor-acceptAllDevices.https.html.ini @@ -1,6 +1,7 @@ [filters-xor-acceptAllDevices.https.html] + expected: ERROR [RequestDeviceOptions should have exactly one of 'filters' or 'acceptAllDevices:true'. Reject with TypeError if not.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name-unicode.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name-unicode.https.html.ini index b2bee231993d..c43387d34ef9 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name-unicode.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name-unicode.https.html.ini @@ -1,6 +1,7 @@ [max-length-exceeded-name-unicode.https.html] + expected: ERROR [Unicode string with utf8 representation longer than 248 bytes in 'name' must throw TypeError.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name.https.html.ini index d529d400f865..54ad784660a7 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name.https.html.ini @@ -1,6 +1,7 @@ [max-length-exceeded-name.https.html] + expected: ERROR [A device name longer than 248 must reject.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix-unicode.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix-unicode.https.html.ini index 4e96e58a05f9..bb608a0ad695 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix-unicode.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix-unicode.https.html.ini @@ -1,6 +1,7 @@ [max-length-exceeded-namePrefix-unicode.https.html] + expected: ERROR [Unicode string with utf8 representation longer than 248 bytes in 'namePrefix' must throw NotFoundError.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix.https.html.ini index d7aceeb2fb48..113481e4f208 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix.https.html.ini @@ -1,6 +1,7 @@ [max-length-exceeded-namePrefix.https.html] + expected: ERROR [A device name prefix longer than 248 must reject.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-optionalServices-member.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-optionalServices-member.https.html.ini index 5f5e024b87f4..16400e6fad1a 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-optionalServices-member.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-optionalServices-member.https.html.ini @@ -1,6 +1,7 @@ [wrong-service-in-optionalServices-member.https.html] + expected: ERROR [Invalid optional service must reject the promise.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-services-member.https.html.ini b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-services-member.https.html.ini index a3a7870b27c1..3ffccd62fb86 100644 --- a/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-services-member.https.html.ini +++ b/testing/web-platform/meta/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-services-member.https.html.ini @@ -1,6 +1,7 @@ [wrong-service-in-services-member.https.html] + expected: ERROR [Invalid service must reject the promise.] - expected: FAIL + expected: TIMEOUT [Untitled] expected: FAIL diff --git a/testing/web-platform/meta/clipboard-apis/async-navigator-clipboard-basics.https.html.ini b/testing/web-platform/meta/clipboard-apis/async-navigator-clipboard-basics.https.html.ini new file mode 100644 index 000000000000..0a31d3137c74 --- /dev/null +++ b/testing/web-platform/meta/clipboard-apis/async-navigator-clipboard-basics.https.html.ini @@ -0,0 +1,10 @@ +[async-navigator-clipboard-basics.https.html] + [navigator.clipboard.readImageExperimental() succeeds] + expected: FAIL + + [navigator.clipboard.writeImageExperimental(Blob) succeeds] + expected: FAIL + + [navigator.clipboard.writeImageExperimental() fails (expect Blob)] + expected: FAIL + diff --git a/testing/web-platform/meta/compat/webkit-appearance.html.ini b/testing/web-platform/meta/compat/webkit-appearance.html.ini deleted file mode 100644 index 4f2c331caa3a..000000000000 --- a/testing/web-platform/meta/compat/webkit-appearance.html.ini +++ /dev/null @@ -1,72 +0,0 @@ -[webkit-appearance.html] - prefs: [layout.css.webkit-appearance.enabled:true] - [-webkit-appearance: button] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: listbox] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: menulist] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: menulist-text] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: caret] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: bogus-button (invalid)] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: menulist-textfield] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: checkbox] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: menulist-button] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: button-bevel] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: listitem] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: radio] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: textfield] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - - [-webkit-appearance: searchfield] - expected: - if os == "android": FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1502150 - diff --git a/testing/web-platform/meta/cookie-store/serviceworker_cookieStore_cross_origin.tentative.https.sub.html.ini b/testing/web-platform/meta/cookie-store/serviceworker_cookieStore_cross_origin.tentative.https.sub.html.ini new file mode 100644 index 000000000000..0f256a8ca261 --- /dev/null +++ b/testing/web-platform/meta/cookie-store/serviceworker_cookieStore_cross_origin.tentative.https.sub.html.ini @@ -0,0 +1,5 @@ +[serviceworker_cookieStore_cross_origin.tentative.https.sub.html] + expected: TIMEOUT + [cookieStore.get() in ServiceWorker reads cookie set in cross-origin frame] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/css/CSS2/bidi-005.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-005.xht.ini new file mode 100644 index 000000000000..86289cdac222 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/bidi-005.xht.ini @@ -0,0 +1,2 @@ +[bidi-005.xht] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/bidi-006.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-006.xht.ini new file mode 100644 index 000000000000..c48ebe38be89 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/bidi-006.xht.ini @@ -0,0 +1,2 @@ +[bidi-006.xht] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/bidi-007.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-007.xht.ini new file mode 100644 index 000000000000..3ad433b3b272 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/bidi-007.xht.ini @@ -0,0 +1,2 @@ +[bidi-007.xht] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/bidi-008.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-008.xht.ini new file mode 100644 index 000000000000..78e74fba2221 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/bidi-008.xht.ini @@ -0,0 +1,2 @@ +[bidi-008.xht] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/bidi-009.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-009.xht.ini new file mode 100644 index 000000000000..5512b703eec4 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/bidi-009.xht.ini @@ -0,0 +1,2 @@ +[bidi-009.xht] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/bidi-010.xht.ini b/testing/web-platform/meta/css/CSS2/bidi-010.xht.ini new file mode 100644 index 000000000000..6a99a28b88f4 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/bidi-010.xht.ini @@ -0,0 +1,2 @@ +[bidi-010.xht] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/generated-content/content-173.xht.ini b/testing/web-platform/meta/css/CSS2/generated-content/content-173.xht.ini deleted file mode 100644 index 27d146b4f76f..000000000000 --- a/testing/web-platform/meta/css/CSS2/generated-content/content-173.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[content-173.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/positioning/__dir__.ini b/testing/web-platform/meta/css/CSS2/positioning/__dir__.ini new file mode 100644 index 000000000000..daf68383df9a --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/positioning/__dir__.ini @@ -0,0 +1 @@ +leak-threshold: [default:51200] diff --git a/testing/web-platform/meta/css/CSS2/positioning/abspos-float-with-inline-container.html.ini b/testing/web-platform/meta/css/CSS2/positioning/abspos-float-with-inline-container.html.ini new file mode 100644 index 000000000000..d396793faece --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/positioning/abspos-float-with-inline-container.html.ini @@ -0,0 +1,11 @@ +[abspos-float-with-inline-container.html] + expected: + if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-001.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-001.xht.ini deleted file mode 100644 index 5a50c8528bd6..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-001.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-001.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-002.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-002.xht.ini deleted file mode 100644 index 19ddbb368ae6..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-002.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-002.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-003.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-003.xht.ini deleted file mode 100644 index 1d4f55fd3b39..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-003.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-003.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-004.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-004.xht.ini deleted file mode 100644 index 58cecfd0cb5e..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-004.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-004.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-005.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-005.xht.ini index 9d6319419471..9d1939e9de32 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-005.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-005.xht.ini @@ -1,4 +1,3 @@ [first-letter-punctuation-005.xht] expected: if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-006.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-006.xht.ini index 6f001d7953a9..1cf03f27459c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-006.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-006.xht.ini @@ -6,4 +6,3 @@ if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-007.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-007.xht.ini index 4c58bc249f0a..aee17a73a6f5 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-007.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-007.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-008.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-008.xht.ini index ea06eeaaa61c..bddedb2ab2f7 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-008.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-008.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-009.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-009.xht.ini index bb22921b91c8..b3c39867a322 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-009.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-009.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-010.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-010.xht.ini index 0eccc4d8dcab..37930a5e639d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-010.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-010.xht.ini @@ -5,4 +5,3 @@ if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-012.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-012.xht.ini index 145f761eeb13..4728fc82ad78 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-012.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-012.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-013.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-013.xht.ini index 9e2db33da074..565b7d075cbd 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-013.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-013.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-014.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-014.xht.ini index 5d0355dda1a6..fa8a42e27e00 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-014.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-014.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-015.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-015.xht.ini index 4ef0ae03b8b5..ee9e3e646279 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-015.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-015.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-016.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-016.xht.ini index e1a3b089a9a4..ca6237b7af66 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-016.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-016.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-017.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-017.xht.ini index a284f5f7522a..9f7ee113a46b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-017.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-017.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-018.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-018.xht.ini index 1464d0da3887..ec8c8073c25b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-018.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-018.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-019.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-019.xht.ini index 10bf289c2e7c..b5c2ddcfad3c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-019.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-019.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-020.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-020.xht.ini index 9d0ca5abf5ca..78b0876287ef 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-020.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-020.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-021.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-021.xht.ini index b7e628889b7d..0b9a4c4d00a3 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-021.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-021.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-022.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-022.xht.ini index 0626d3366ff0..b6b51569358f 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-022.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-022.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-023.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-023.xht.ini index 65958f9d1ec6..312e80647312 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-023.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-023.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-024.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-024.xht.ini index a71ecf3720b9..015b96413d0f 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-024.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-024.xht.ini @@ -5,4 +5,3 @@ if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-025.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-025.xht.ini index 89e9a58f0ee6..7f46db0d5268 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-025.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-025.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-026.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-026.xht.ini index 92f5de81a7c9..fa0a246bab8c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-026.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-026.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-027.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-027.xht.ini index c6bc8cb7d434..389cc7cc7340 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-027.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-027.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-028.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-028.xht.ini index 9e1689fe84d6..55243b802dd6 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-028.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-028.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-029.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-029.xht.ini index c5b1ecf2fd2d..648f0d890c44 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-029.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-029.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-030.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-030.xht.ini index 90f404ddd00c..f808b5aaf28f 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-030.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-030.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-031.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-031.xht.ini index 1d2ca5776070..03d1ec33854c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-031.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-031.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-032.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-032.xht.ini index 6d3d0cbb9d60..f76f03af8451 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-032.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-032.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-033.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-033.xht.ini index 1b94fed50fd1..2daa7dc72cb9 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-033.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-033.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-034.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-034.xht.ini index 8077277f4817..770fd18b50b4 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-034.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-034.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-035.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-035.xht.ini index 5c28cb76da2e..19f13cca0abf 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-035.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-035.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-036.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-036.xht.ini index 93ac6d1252a4..dc0c14ac15c2 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-036.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-036.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-037.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-037.xht.ini index 582a73984ab1..6dba5a829e40 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-037.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-037.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-038.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-038.xht.ini index 3385968b2d66..4278bad8e177 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-038.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-038.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-039.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-039.xht.ini index 8027beed5aa3..9e75083a82e5 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-039.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-039.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-040.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-040.xht.ini index 3d9568592816..1f31a33e0a82 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-040.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-040.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-041.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-041.xht.ini index 0b1a9e12a7e9..8f910437eb35 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-041.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-041.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-042.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-042.xht.ini index 58f0d5c52320..51bc82af8d37 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-042.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-042.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-043.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-043.xht.ini index 0210a2c7d1fb..081e339890c7 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-043.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-043.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-044.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-044.xht.ini index 9fdfe243d170..5777f7881b88 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-044.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-044.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-047.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-047.xht.ini index 1a2b8e659be0..5e13a9007085 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-047.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-047.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-048.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-048.xht.ini index 27bc52eb0b1f..dc95f5ec2950 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-048.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-048.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-062.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-062.xht.ini index e3b8cf28863c..349a34308353 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-062.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-062.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-063.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-063.xht.ini index 70b06cf24614..06b25f168e31 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-063.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-063.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-064.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-064.xht.ini index 1f9968b1b011..bc2876348108 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-064.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-064.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-065.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-065.xht.ini index ff1fbff77f10..a26258603025 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-065.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-065.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-066.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-066.xht.ini index f8d239af0eb1..8a51fb2854d6 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-066.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-066.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-067.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-067.xht.ini deleted file mode 100644 index 83625c26a4b1..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-067.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-067.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-068.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-068.xht.ini index 9d392a08124e..cecf2a7fe607 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-068.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-068.xht.ini @@ -1,2 +1,3 @@ [first-letter-punctuation-068.xht] - expected: FAIL + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-069.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-069.xht.ini index 768a03e97532..8dd0591eed84 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-069.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-069.xht.ini @@ -1,2 +1,3 @@ [first-letter-punctuation-069.xht] - expected: FAIL + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-070.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-070.xht.ini deleted file mode 100644 index 344ec1d32fcb..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-070.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-070.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-071.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-071.xht.ini deleted file mode 100644 index e6d7651fa91c..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-071.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-071.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-072.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-072.xht.ini deleted file mode 100644 index 214012996fd7..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-072.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-072.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-073.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-073.xht.ini deleted file mode 100644 index e5831ea0c017..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-073.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-073.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-074.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-074.xht.ini deleted file mode 100644 index e0693ff795c4..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-074.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-074.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-075.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-075.xht.ini index 926219642fa9..43c65947e70e 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-075.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-075.xht.ini @@ -2,4 +2,3 @@ expected: if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-076.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-076.xht.ini deleted file mode 100644 index 3163e5af60d5..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-076.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-076.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-077.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-077.xht.ini index 51d481a8a607..628b5ebbe8d2 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-077.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-077.xht.ini @@ -1,2 +1,3 @@ [first-letter-punctuation-077.xht] - expected: FAIL + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-078.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-078.xht.ini index 3f4bf165dfd9..fdbe22835ffd 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-078.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-078.xht.ini @@ -1,5 +1,3 @@ [first-letter-punctuation-078.xht] expected: - if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-079.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-079.xht.ini index 0758e2e8c186..eeb6b5b586b1 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-079.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-079.xht.ini @@ -1,2 +1,3 @@ [first-letter-punctuation-079.xht] - expected: FAIL + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-080.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-080.xht.ini index 719ed5325e0d..37433156ed66 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-080.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-080.xht.ini @@ -2,4 +2,3 @@ expected: if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-081.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-081.xht.ini deleted file mode 100644 index a8275d190386..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-081.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-081.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-082.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-082.xht.ini deleted file mode 100644 index 7f1e4a2c6d5a..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-082.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-082.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-083.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-083.xht.ini deleted file mode 100644 index 8e0f9afd9a18..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-083.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-083.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-084.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-084.xht.ini deleted file mode 100644 index 14a6e991546d..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-084.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-084.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-085.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-085.xht.ini deleted file mode 100644 index 9a6e3abd921d..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-085.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-085.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-086.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-086.xht.ini index 43ccf546cb42..3b89dfa0399d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-086.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-086.xht.ini @@ -2,4 +2,3 @@ expected: if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-087.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-087.xht.ini deleted file mode 100644 index f9201456e9a2..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-087.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-087.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-088.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-088.xht.ini index eff10f9e7fac..74caa2aae924 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-088.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-088.xht.ini @@ -1,2 +1,3 @@ [first-letter-punctuation-088.xht] - expected: FAIL + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-089.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-089.xht.ini deleted file mode 100644 index 5d6f5717cccb..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-089.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-089.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-090.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-090.xht.ini deleted file mode 100644 index 8feaff03af9d..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-090.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-090.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-091.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-091.xht.ini deleted file mode 100644 index f38352f133d4..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-091.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-091.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-092.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-092.xht.ini index 1802c47d708b..2f2090745997 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-092.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-092.xht.ini @@ -1,2 +1,3 @@ [first-letter-punctuation-092.xht] - expected: FAIL + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-093.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-093.xht.ini deleted file mode 100644 index 367505fbf062..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-093.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-093.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-094.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-094.xht.ini deleted file mode 100644 index b53d485c8857..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-094.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-094.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-095.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-095.xht.ini deleted file mode 100644 index ee1f9429991c..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-095.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-095.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-096.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-096.xht.ini deleted file mode 100644 index 6b5ab2768653..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-096.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-096.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-097.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-097.xht.ini deleted file mode 100644 index 15a20aacb08f..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-097.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-097.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-098.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-098.xht.ini deleted file mode 100644 index 1e8ab51b2121..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-098.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-098.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-099.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-099.xht.ini deleted file mode 100644 index f9c3a5dcb977..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-099.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-099.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-100.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-100.xht.ini deleted file mode 100644 index e080a9c2edf1..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-100.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-100.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-101.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-101.xht.ini deleted file mode 100644 index bbd42f06f8fe..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-101.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-101.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-102.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-102.xht.ini deleted file mode 100644 index c9ab1bf2aace..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-102.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-102.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-103.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-103.xht.ini deleted file mode 100644 index 48efd2f06c6d..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-103.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-103.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-104.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-104.xht.ini deleted file mode 100644 index 4369058c823d..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-104.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-104.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-105.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-105.xht.ini deleted file mode 100644 index b291e966696a..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-105.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-105.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-106.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-106.xht.ini deleted file mode 100644 index 3cfdfa17d8cf..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-106.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-106.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-107.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-107.xht.ini index 6bf5229e8a81..2e69976efff9 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-107.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-107.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-108.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-108.xht.ini index fbbf5148f85d..a881133074a5 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-108.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-108.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-109.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-109.xht.ini index a4391144c5f1..1486c57b87d4 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-109.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-109.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-110.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-110.xht.ini index a1b67c33d821..ea526a8c30b7 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-110.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-110.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-111.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-111.xht.ini index e87825ee01e9..2957b3434e4d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-111.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-111.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-112.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-112.xht.ini index 6c510c1bd9ab..4212848aba07 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-112.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-112.xht.ini @@ -3,4 +3,3 @@ if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-113.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-113.xht.ini index bd0399f0a8e9..e9b37c4311d8 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-113.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-113.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-120.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-120.xht.ini index b72fac82742f..1317f87ba7f1 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-120.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-120.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-125.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-125.xht.ini index e9352a5e9ff0..319f4442d6db 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-125.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-125.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-126.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-126.xht.ini index 03c6fb94c394..651bc409c42d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-126.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-126.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-127.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-127.xht.ini index ca0d088058eb..74b43c9f742b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-127.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-127.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-144.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-144.xht.ini index 125530148d70..3721b163ab2d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-144.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-144.xht.ini @@ -6,4 +6,3 @@ if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-145.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-145.xht.ini index 21ae912ec01e..a2ed1c0be443 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-145.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-145.xht.ini @@ -6,4 +6,3 @@ if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-146.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-146.xht.ini index 216644ea8fb1..d2e5e51844ac 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-146.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-146.xht.ini @@ -6,4 +6,3 @@ if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-147.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-147.xht.ini index 28476a12d7c6..d65c5ea07f42 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-147.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-147.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-151.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-151.xht.ini deleted file mode 100644 index d00736924fb3..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-151.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-151.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-152.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-152.xht.ini deleted file mode 100644 index db63dcb358a5..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-152.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-152.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-153.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-153.xht.ini deleted file mode 100644 index 6c52bfb1fc7f..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-153.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-153.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-154.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-154.xht.ini deleted file mode 100644 index ae0e2930c8a4..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-154.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-154.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-155.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-155.xht.ini deleted file mode 100644 index 17abc5e11068..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-155.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-155.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-156.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-156.xht.ini deleted file mode 100644 index 9d2c61e134c6..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-156.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-156.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-157.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-157.xht.ini deleted file mode 100644 index d36aefa17522..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-157.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-157.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-158.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-158.xht.ini deleted file mode 100644 index a2c33f890389..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-158.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-158.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-159.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-159.xht.ini deleted file mode 100644 index 307cdbf8ba19..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-159.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-159.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-160.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-160.xht.ini deleted file mode 100644 index e4c4a1785c00..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-160.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-160.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-161.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-161.xht.ini deleted file mode 100644 index a6a6a10ebeb4..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-161.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-161.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-162.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-162.xht.ini deleted file mode 100644 index 15a8fd20532b..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-162.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-162.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-163.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-163.xht.ini deleted file mode 100644 index 7dc9f549c50f..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-163.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-163.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-164.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-164.xht.ini deleted file mode 100644 index 16baff77a998..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-164.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-164.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-165.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-165.xht.ini deleted file mode 100644 index c708f97b16dd..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-165.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-165.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-166.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-166.xht.ini deleted file mode 100644 index 9bf2794a0375..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-166.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-166.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-167.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-167.xht.ini deleted file mode 100644 index b77e426bf51b..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-167.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-167.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-168.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-168.xht.ini deleted file mode 100644 index c5109c69c7d2..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-168.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-168.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-169.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-169.xht.ini deleted file mode 100644 index b23f97ecc4f5..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-169.xht.ini +++ /dev/null @@ -1,4 +0,0 @@ -[first-letter-punctuation-169.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-170.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-170.xht.ini deleted file mode 100644 index f67d365b6721..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-170.xht.ini +++ /dev/null @@ -1,4 +0,0 @@ -[first-letter-punctuation-170.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-171.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-171.xht.ini deleted file mode 100644 index fa45983d4ad3..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-171.xht.ini +++ /dev/null @@ -1,4 +0,0 @@ -[first-letter-punctuation-171.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-172.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-172.xht.ini deleted file mode 100644 index 9910504b0917..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-172.xht.ini +++ /dev/null @@ -1,4 +0,0 @@ -[first-letter-punctuation-172.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-173.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-173.xht.ini deleted file mode 100644 index c717f68206fc..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-173.xht.ini +++ /dev/null @@ -1,4 +0,0 @@ -[first-letter-punctuation-173.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-174.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-174.xht.ini deleted file mode 100644 index 3eb2ac243fe1..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-174.xht.ini +++ /dev/null @@ -1,4 +0,0 @@ -[first-letter-punctuation-174.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-175.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-175.xht.ini index 8abd598badde..ac70906b3751 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-175.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-175.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-176.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-176.xht.ini index a426bb77973c..9799d35cb735 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-176.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-176.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-177.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-177.xht.ini index a2146a57ae56..b8d63cae5d64 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-177.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-177.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-178.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-178.xht.ini index 3af6db18f197..8f46457376eb 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-178.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-178.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-179.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-179.xht.ini index 9bf223fbb9ae..f2e27d0e1c99 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-179.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-179.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-180.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-180.xht.ini index 754e82e0e89e..a16f275bfd5e 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-180.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-180.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-181.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-181.xht.ini index 8a70623226ba..19b4b6947376 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-181.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-181.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-182.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-182.xht.ini index ec5b0aa20eca..33b7cf47c021 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-182.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-182.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-183.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-183.xht.ini index 6f8a68379328..7ee9975d7580 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-183.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-183.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-184.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-184.xht.ini index ff353891ca98..3a71b978233b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-184.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-184.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-185.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-185.xht.ini index d6ac211e69a3..fa8892acc1b0 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-185.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-185.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-186.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-186.xht.ini index e4fafcb4d6c2..7d162737a11a 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-186.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-186.xht.ini @@ -6,4 +6,3 @@ if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-187.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-187.xht.ini index 2a6933b94864..acce3880a742 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-187.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-187.xht.ini @@ -6,4 +6,3 @@ if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-188.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-188.xht.ini index 22a53eaddb5c..4d6fd581582d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-188.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-188.xht.ini @@ -6,4 +6,3 @@ if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-189.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-189.xht.ini index c6812e55dbe7..c732a9d8bb1b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-189.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-189.xht.ini @@ -1,4 +1,3 @@ [first-letter-punctuation-189.xht] expected: if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-190.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-190.xht.ini index 9a32f478ac69..3ed6bcd8b3a8 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-190.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-190.xht.ini @@ -1,4 +1,3 @@ [first-letter-punctuation-190.xht] expected: if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-197.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-197.xht.ini index 378b11ec80ce..ffdf882b42da 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-197.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-197.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-198.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-198.xht.ini index 842b011e2734..4edb04ba9470 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-198.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-198.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-199.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-199.xht.ini index 509b68bfb86b..2e7ba753b101 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-199.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-199.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-200.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-200.xht.ini index 3fac4f98e901..51c817fc9873 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-200.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-200.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-201.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-201.xht.ini index c325842387ce..873d6f067690 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-201.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-201.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-202.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-202.xht.ini index 1197a20e830d..32d2ea413a4b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-202.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-202.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-203.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-203.xht.ini index 994d1cfceaed..7db43fa45bf2 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-203.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-203.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-204.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-204.xht.ini index c1c6cf0046b6..e24e2053affa 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-204.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-204.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-205.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-205.xht.ini index 3b1e28eb1d85..5fd1b6e49b66 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-205.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-205.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-206.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-206.xht.ini index 7ca8aa095b67..66953b19cdcb 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-206.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-206.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-207.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-207.xht.ini index 4cc79860ba92..0f15e0f878b0 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-207.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-207.xht.ini @@ -1,4 +1,3 @@ [first-letter-punctuation-207.xht] expected: if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-208.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-208.xht.ini index 45a9f9c0df41..db01f2e8860f 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-208.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-208.xht.ini @@ -1,4 +1,3 @@ [first-letter-punctuation-208.xht] expected: if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-211.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-211.xht.ini index 064b7fd361d0..b2be56d58dce 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-211.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-211.xht.ini @@ -3,4 +3,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-212.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-212.xht.ini index b296daa3983f..de59cd0e0063 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-212.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-212.xht.ini @@ -3,4 +3,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-213.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-213.xht.ini index d8caaf00e615..130e398002a1 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-213.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-213.xht.ini @@ -2,4 +2,3 @@ expected: if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-214.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-214.xht.ini index f0fff79e64ce..0319430faf32 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-214.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-214.xht.ini @@ -2,4 +2,3 @@ expected: if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-215.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-215.xht.ini deleted file mode 100644 index 43e64e5a3cb0..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-215.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-215.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-216.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-216.xht.ini deleted file mode 100644 index 1c8c7de48dfb..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-216.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-216.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-217.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-217.xht.ini deleted file mode 100644 index da1fd1d49318..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-217.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-217.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-218.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-218.xht.ini index 5e6057cf68d7..00dd365017e7 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-218.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-218.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-219.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-219.xht.ini index 563b46ac3c8a..bdbe1b636ac6 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-219.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-219.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-220.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-220.xht.ini index f047fb53bf45..d34fc048d31d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-220.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-220.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-221.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-221.xht.ini deleted file mode 100644 index 8aa48a5df9b4..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-221.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-221.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-222.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-222.xht.ini index eb33ebdb376e..ff2ecf62d87f 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-222.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-222.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-223.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-223.xht.ini deleted file mode 100644 index 6790388f4fff..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-223.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-223.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-224.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-224.xht.ini index b6e3b0cc318f..2ac2cad90e7c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-224.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-224.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-225.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-225.xht.ini index f270fd700912..4bdc56fad307 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-225.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-225.xht.ini @@ -1,5 +1,3 @@ [first-letter-punctuation-225.xht] expected: - if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-226.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-226.xht.ini index 8a58eafd7c63..ad3705510360 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-226.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-226.xht.ini @@ -1,5 +1,3 @@ [first-letter-punctuation-226.xht] expected: - if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-227.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-227.xht.ini index 1d170fa4c82e..1c1a55f71b47 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-227.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-227.xht.ini @@ -2,4 +2,3 @@ expected: if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-228.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-228.xht.ini index 610f5b0e02c6..533fd6d3e029 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-228.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-228.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-229.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-229.xht.ini index 91f5a44e52fa..ccfc168ffc4d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-229.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-229.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-230.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-230.xht.ini index 9327c4858833..e93784f5e37e 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-230.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-230.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-231.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-231.xht.ini index 8a4d467759b5..66057923791c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-231.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-231.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-232.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-232.xht.ini index 197026fca572..870dd1789fe2 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-232.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-232.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-233.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-233.xht.ini index 4dad20e3997f..36ada7ea5fda 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-233.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-233.xht.ini @@ -2,4 +2,3 @@ expected: if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-234.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-234.xht.ini index c27c86e133b2..a8888d0c5374 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-234.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-234.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-235.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-235.xht.ini index eed403995f5a..e08b8574ed6c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-235.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-235.xht.ini @@ -2,4 +2,3 @@ expected: if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-236.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-236.xht.ini index 60fccfc57464..f8e9682260a7 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-236.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-236.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-237.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-237.xht.ini index 3fc53670734e..db3902104070 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-237.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-237.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-238.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-238.xht.ini index b3621080612b..2a80b10b7979 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-238.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-238.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-239.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-239.xht.ini index 7b3ed5e44b59..44c500a6ab1e 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-239.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-239.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-240.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-240.xht.ini index a4bae2d2384a..4bc36f35d91e 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-240.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-240.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-241.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-241.xht.ini index ffc92cd1872d..da94efe9feb2 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-241.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-241.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-242.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-242.xht.ini index 5d8f027ed7c6..6e7e80710baa 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-242.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-242.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-243.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-243.xht.ini index bfe02eccf068..8531ac8285a7 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-243.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-243.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-244.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-244.xht.ini index af96ba53de14..3bcfa36f33ef 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-244.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-244.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-245.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-245.xht.ini index 1615843158bb..f67435d91407 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-245.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-245.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-246.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-246.xht.ini index a8bcfc4c5c4d..bd1b8a9a10b2 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-246.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-246.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-247.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-247.xht.ini index c66e76456e34..9f09f38f422d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-247.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-247.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-248.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-248.xht.ini index 919001021ee0..ad4cdc667f80 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-248.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-248.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-249.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-249.xht.ini index abe2437de924..da1e95825940 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-249.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-249.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-250.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-250.xht.ini index 05325a2cef79..802ced88159a 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-250.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-250.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-251.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-251.xht.ini index 8cd4a21af314..9036c47e01b9 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-251.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-251.xht.ini @@ -2,4 +2,3 @@ expected: if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-252.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-252.xht.ini index 50f1505dfa9b..2a8ddeec8a71 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-252.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-252.xht.ini @@ -2,4 +2,3 @@ expected: if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-253.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-253.xht.ini index 1284839bf420..1c744d6f1ae0 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-253.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-253.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-254.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-254.xht.ini index fa1a0601a22b..1c3f03e756af 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-254.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-254.xht.ini @@ -2,4 +2,3 @@ expected: if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-255.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-255.xht.ini index 71c78dc14032..156ebb51cc66 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-255.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-255.xht.ini @@ -2,4 +2,3 @@ expected: if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-256.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-256.xht.ini index d4615348a234..0fbda6f6e5ad 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-256.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-256.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-257.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-257.xht.ini index 24c2c0693661..f5abe67bb634 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-257.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-257.xht.ini @@ -2,4 +2,3 @@ expected: if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-258.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-258.xht.ini index b90bfa4b515f..1bef2a6350aa 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-258.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-258.xht.ini @@ -2,4 +2,3 @@ expected: if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-259.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-259.xht.ini index 3d23cc9f584d..6f119370c064 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-259.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-259.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-260.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-260.xht.ini index 591b06bd882a..f1820ff08f8c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-260.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-260.xht.ini @@ -2,4 +2,3 @@ expected: if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-262.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-262.xht.ini index ef4a42abac0f..ff9a7892c1b6 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-262.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-262.xht.ini @@ -3,4 +3,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-263.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-263.xht.ini index cb07470c152e..058997c6a5d8 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-263.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-263.xht.ini @@ -3,4 +3,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-264.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-264.xht.ini index 743314d5a7ef..ebef0390bcb7 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-264.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-264.xht.ini @@ -3,4 +3,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-265.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-265.xht.ini index 87eb76a01312..8a4932b088c3 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-265.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-265.xht.ini @@ -3,4 +3,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-266.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-266.xht.ini index 3e897bce92b2..f0c41815054b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-266.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-266.xht.ini @@ -3,4 +3,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-267.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-267.xht.ini index 4d6958c503d6..311801ce2888 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-267.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-267.xht.ini @@ -3,4 +3,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-268.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-268.xht.ini deleted file mode 100644 index b98b0be46dd1..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-268.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-268.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-269.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-269.xht.ini deleted file mode 100644 index 3bcf971e56ae..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-269.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-269.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-270.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-270.xht.ini deleted file mode 100644 index 8c915759d0d0..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-270.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-270.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-271.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-271.xht.ini deleted file mode 100644 index 4e2068af9627..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-271.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-271.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-272.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-272.xht.ini deleted file mode 100644 index 38f92a8359ab..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-272.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-272.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-273.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-273.xht.ini deleted file mode 100644 index 74f449529f96..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-273.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-273.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-274.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-274.xht.ini deleted file mode 100644 index b32b3dbd6641..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-274.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-274.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-275.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-275.xht.ini deleted file mode 100644 index ac60c4032d53..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-275.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-275.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-276.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-276.xht.ini deleted file mode 100644 index b618c64c913b..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-276.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-276.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-277.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-277.xht.ini deleted file mode 100644 index 7fbb34a5ed69..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-277.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-277.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-278.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-278.xht.ini deleted file mode 100644 index 9522bd5c3f3d..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-278.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-278.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-279.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-279.xht.ini deleted file mode 100644 index f6b06dfb56d8..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-279.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-279.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-280.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-280.xht.ini deleted file mode 100644 index 4f5b40f6bc35..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-280.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-280.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-281.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-281.xht.ini deleted file mode 100644 index b66a9ebc3c27..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-281.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-281.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-282.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-282.xht.ini deleted file mode 100644 index 1c197418c86b..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-282.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-282.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-283.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-283.xht.ini index ef11fc3601a9..81369dcc4ff8 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-283.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-283.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-284.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-284.xht.ini index ffdfb2f84b11..3ca7bb680b37 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-284.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-284.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-285.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-285.xht.ini index 05a9a9e1f8e0..5ea5b7aa41a8 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-285.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-285.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-286.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-286.xht.ini index 966ca07afca2..ddf88c7d9273 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-286.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-286.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-287.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-287.xht.ini index 4c5ebb7a2128..f1f7a9af30e4 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-287.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-287.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-293.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-293.xht.ini deleted file mode 100644 index f2ec4cd5988b..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-293.xht.ini +++ /dev/null @@ -1,4 +0,0 @@ -[first-letter-punctuation-293.xht] - expected: - if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-294.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-294.xht.ini deleted file mode 100644 index 90dd939c8861..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-294.xht.ini +++ /dev/null @@ -1,4 +0,0 @@ -[first-letter-punctuation-294.xht] - expected: - if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-297.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-297.xht.ini index bd8f48b00374..f14cc991202b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-297.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-297.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-298.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-298.xht.ini index a1a0f951a12e..6c8ff06c762a 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-298.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-298.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-316.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-316.xht.ini index 8f00d9074110..3cdff24f12b3 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-316.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-316.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-317.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-317.xht.ini index 60e930827ba7..3c06f5e4a8ea 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-317.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-317.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-318.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-318.xht.ini index 4487cb17f700..223b210c2525 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-318.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-318.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-319.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-319.xht.ini index 4f46a864293d..b93c3a6561ea 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-319.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-319.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-320.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-320.xht.ini index b63edd587707..49ffce528e99 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-320.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-320.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-321.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-321.xht.ini index 00d8ca60af37..2482c317e6c5 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-321.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-321.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-322.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-322.xht.ini index 74487bb91725..e5f6319d740c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-322.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-322.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-323.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-323.xht.ini index 23e08e6f5028..f754f4fb6960 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-323.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-323.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-324.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-324.xht.ini index 1eccccfdeebc..013fc2d10990 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-324.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-324.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-325.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-325.xht.ini index b1c60f7b2985..9c4d302b25d8 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-325.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-325.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-326.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-326.xht.ini index 291bbaf8b806..0703e2285516 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-326.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-326.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-327.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-327.xht.ini index ebcebad48ef5..b7fe609c9a70 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-327.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-327.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-328.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-328.xht.ini index 66d9511eb388..9eff2e2f0a70 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-328.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-328.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-329.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-329.xht.ini index c29fac9e3f6b..ebfa24047961 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-329.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-329.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-330.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-330.xht.ini index 9671c62e0391..5f19ad024bd1 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-330.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-330.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-331.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-331.xht.ini index f982ac15f82f..4b7708341f98 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-331.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-331.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-332.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-332.xht.ini index d8bf433bf3c2..d1079407af3a 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-332.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-332.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-333.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-333.xht.ini index 9a65617d14e0..ff9efd11604c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-333.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-333.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-334.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-334.xht.ini deleted file mode 100644 index 7622a416b0f1..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-334.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-334.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-335.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-335.xht.ini deleted file mode 100644 index 8abcd07f2e19..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-335.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-335.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-336.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-336.xht.ini index aa51a0ce3e75..3ffdb004970f 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-336.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-336.xht.ini @@ -2,4 +2,3 @@ expected: if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-346.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-346.xht.ini deleted file mode 100644 index 54432fc620e4..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-346.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-346.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-347.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-347.xht.ini deleted file mode 100644 index 22fe051ddae8..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-347.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-347.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-348.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-348.xht.ini deleted file mode 100644 index 56411921667e..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-348.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-348.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-349.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-349.xht.ini deleted file mode 100644 index 7fac43d63320..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-349.xht.ini +++ /dev/null @@ -1,6 +0,0 @@ -[first-letter-punctuation-349.xht] - expected: - if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL - if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL - if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-350.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-350.xht.ini index 276d4cf602ca..f9100240f5f8 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-350.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-350.xht.ini @@ -1,4 +1,3 @@ [first-letter-punctuation-350.xht] expected: if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-351.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-351.xht.ini index b9887b78329d..507fe872c69f 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-351.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-351.xht.ini @@ -6,4 +6,3 @@ if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-352.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-352.xht.ini deleted file mode 100644 index a555e11f31c6..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-352.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-352.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-353.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-353.xht.ini deleted file mode 100644 index 8cca77255263..000000000000 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-353.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[first-letter-punctuation-353.xht] - expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-354.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-354.xht.ini index 11c087ba2fe9..97a9dc85af72 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-354.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-354.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-355.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-355.xht.ini index b04be281fae2..779058696cf1 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-355.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-355.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-356.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-356.xht.ini index 215aff8d3190..ce9844024c97 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-356.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-356.xht.ini @@ -4,4 +4,3 @@ if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-357.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-357.xht.ini index 5d4cab9462d9..e56ca034f682 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-357.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-357.xht.ini @@ -5,4 +5,3 @@ if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-359.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-359.xht.ini index 8e82376ec6fc..f9b73dcd2276 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-359.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-359.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-360.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-360.xht.ini index d8da37b84658..eccaaf71bc3b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-360.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-360.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-361.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-361.xht.ini index f5371f8b563c..337c1536bd0d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-361.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-361.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-362.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-362.xht.ini index 849d1c669102..d79275411af7 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-362.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-362.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-363.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-363.xht.ini index f5bfb87cc904..9fb676d8709d 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-363.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-363.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-364.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-364.xht.ini index 6515e660a633..fd8a1323ce90 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-364.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-364.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-365.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-365.xht.ini index 1d23e05ff455..f467d91ec212 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-365.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-365.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-366.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-366.xht.ini index 52d1e8cf35cb..597ab9768a6e 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-366.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-366.xht.ini @@ -5,4 +5,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-367.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-367.xht.ini index eb5f6333cf9d..cbfbde7746fc 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-367.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-367.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-368.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-368.xht.ini index 26bb73d7c880..f94f75f1d8bc 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-368.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-368.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-369.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-369.xht.ini index b8d030ce36d7..c81af494dba2 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-369.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-369.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-370.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-370.xht.ini index e290198f92ce..7010d6671669 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-370.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-370.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-371.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-371.xht.ini index c9fc6419b1d5..b86f33723c6a 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-371.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-371.xht.ini @@ -5,4 +5,3 @@ if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-372.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-372.xht.ini index c03974e5d089..50905c0fc47f 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-372.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-372.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-373.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-373.xht.ini index 6057f147cf55..fb19c9317cd0 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-373.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-373.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-374.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-374.xht.ini index 316a443966ba..d91a84872f61 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-374.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-374.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-375.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-375.xht.ini index db00cd82428f..42bed241bf3e 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-375.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-375.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-376.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-376.xht.ini index de25d06ef0b5..02368ffaef70 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-376.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-376.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-377.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-377.xht.ini index df6199a549f0..623f1f263afb 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-377.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-377.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-378.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-378.xht.ini index fc0e0a32fca4..4b3ca66f547c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-378.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-378.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-379.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-379.xht.ini index 7fa830f42239..3333150f6982 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-379.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-379.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-380.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-380.xht.ini index 6c3131a09f72..59b19baa82b1 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-380.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-380.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-381.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-381.xht.ini index c7d1c7ab0539..fe84da562685 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-381.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-381.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-382.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-382.xht.ini index 03b5375c901e..96403442f4d2 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-382.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-382.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-383.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-383.xht.ini index 65311bcb9f2f..278449a0378e 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-383.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-383.xht.ini @@ -4,4 +4,3 @@ if debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-384.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-384.xht.ini index 4cd70d7f8406..63ea77fcecb7 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-384.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-384.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-385.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-385.xht.ini index 5715b9a99319..666563c07691 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-385.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-385.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-386.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-386.xht.ini index fe5dbc883c96..7fcc775d33b1 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-386.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-386.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-387.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-387.xht.ini index 8ba12639811b..ae20e831472e 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-387.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-387.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-388.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-388.xht.ini index eda460c8c140..1f24e85eff7c 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-388.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-388.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-389.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-389.xht.ini index 553d4ac74169..52f194ac0789 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-389.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-389.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-390.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-390.xht.ini index 6c3aca8e7c79..9f052de120ea 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-390.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-390.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-391.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-391.xht.ini index aafe7cc8ed14..f1cb1c429ddd 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-391.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-391.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-393.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-393.xht.ini index a35e7df2dca0..6583fde63ca3 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-393.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-393.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-394.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-394.xht.ini index 6284219217f3..e24ea59fbbfb 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-394.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-394.xht.ini @@ -3,4 +3,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-408.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-408.xht.ini index ae207a01fd00..ecc3efd54c1b 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-408.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-408.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-409.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-409.xht.ini index 564a3d57ca9d..660025a71ac6 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-409.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-409.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-410.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-410.xht.ini index 4d80ab9f446c..b5ef74c2a594 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-410.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-410.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-411.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-411.xht.ini index 535b476f2c0b..c816b52ad4ab 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-411.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-411.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-412.xht.ini b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-412.xht.ini index 0384cd964bb3..c734d2353e41 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-412.xht.ini +++ b/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-412.xht.ini @@ -7,4 +7,3 @@ if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if os == "android": PASS - FAIL diff --git a/testing/web-platform/meta/css/CSS2/stacking-context/opacity-change-twice-stacking-context.html.ini b/testing/web-platform/meta/css/CSS2/stacking-context/opacity-change-twice-stacking-context.html.ini new file mode 100644 index 000000000000..ccd71f91cefe --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/stacking-context/opacity-change-twice-stacking-context.html.ini @@ -0,0 +1,7 @@ +[opacity-change-twice-stacking-context.html] + expected: + if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-001.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-001.xht.ini new file mode 100644 index 000000000000..71bc6517475a --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-001.xht.ini @@ -0,0 +1,3 @@ +[white-space-001.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-002.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-002.xht.ini new file mode 100644 index 000000000000..91fd38ace0c1 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-002.xht.ini @@ -0,0 +1,3 @@ +[white-space-002.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-003.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-003.xht.ini new file mode 100644 index 000000000000..182a9fc2d1e7 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-003.xht.ini @@ -0,0 +1,2 @@ +[white-space-003.xht] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-005.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-005.xht.ini new file mode 100644 index 000000000000..53b794745628 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-005.xht.ini @@ -0,0 +1,3 @@ +[white-space-005.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-006.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-006.xht.ini new file mode 100644 index 000000000000..7d4cd56acffc --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-006.xht.ini @@ -0,0 +1,3 @@ +[white-space-006.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-008.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-008.xht.ini new file mode 100644 index 000000000000..8830bca84172 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-008.xht.ini @@ -0,0 +1,10 @@ +[white-space-008.xht] + expected: + if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-001.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-001.xht.ini new file mode 100644 index 000000000000..9a86f6c492e3 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-001.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-001.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-002.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-002.xht.ini new file mode 100644 index 000000000000..eac834bd9e60 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-002.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-002.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-005.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-005.xht.ini new file mode 100644 index 000000000000..10c2559d69db --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-005.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-005.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-006.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-006.xht.ini new file mode 100644 index 000000000000..74b3275ab99f --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-006.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-006.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-007.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-007.xht.ini new file mode 100644 index 000000000000..535e261dfae5 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-007.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-007.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-008.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-008.xht.ini new file mode 100644 index 000000000000..6fe6b3496de7 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-008.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-008.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-009.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-009.xht.ini new file mode 100644 index 000000000000..55d235b3a7d8 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-009.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-009.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-010.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-010.xht.ini new file mode 100644 index 000000000000..59a18d005762 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-010.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-010.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-011.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-011.xht.ini new file mode 100644 index 000000000000..1709881cd8e5 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-011.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-011.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-012.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-012.xht.ini new file mode 100644 index 000000000000..40999df5983c --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-012.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-012.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-013.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-013.xht.ini new file mode 100644 index 000000000000..07596682086a --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-013.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-013.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-014.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-014.xht.ini new file mode 100644 index 000000000000..50de8e4277a7 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-014.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-014.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-015.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-015.xht.ini new file mode 100644 index 000000000000..29fa8c4eb40c --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-applies-to-015.xht.ini @@ -0,0 +1,3 @@ +[white-space-applies-to-015.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-collapsing-breaks-001.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-collapsing-breaks-001.xht.ini new file mode 100644 index 000000000000..254a97604f09 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-collapsing-breaks-001.xht.ini @@ -0,0 +1,8 @@ +[white-space-collapsing-breaks-001.xht] + expected: + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-pre-element-001.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-pre-element-001.xht.ini new file mode 100644 index 000000000000..a93a162650e3 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-pre-element-001.xht.ini @@ -0,0 +1,2 @@ +[white-space-pre-element-001.xht] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-001.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-001.xht.ini new file mode 100644 index 000000000000..d5f20aa91f55 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-001.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-001.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-002.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-002.xht.ini new file mode 100644 index 000000000000..afeca194b374 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-002.xht.ini @@ -0,0 +1,16 @@ +[white-space-processing-002.xht] + expected: + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-003.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-003.xht.ini new file mode 100644 index 000000000000..a9d1b50557f3 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-003.xht.ini @@ -0,0 +1,16 @@ +[white-space-processing-003.xht] + expected: + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-004.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-004.xht.ini new file mode 100644 index 000000000000..0ae55ec31f69 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-004.xht.ini @@ -0,0 +1,16 @@ +[white-space-processing-004.xht] + expected: + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-008.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-008.xht.ini new file mode 100644 index 000000000000..4cb34788db72 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-008.xht.ini @@ -0,0 +1,16 @@ +[white-space-processing-008.xht] + expected: + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-009.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-009.xht.ini new file mode 100644 index 000000000000..e6e61574727d --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-009.xht.ini @@ -0,0 +1,16 @@ +[white-space-processing-009.xht] + expected: + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-010.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-010.xht.ini new file mode 100644 index 000000000000..817418412243 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-010.xht.ini @@ -0,0 +1,16 @@ +[white-space-processing-010.xht] + expected: + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-011.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-011.xht.ini new file mode 100644 index 000000000000..1ce495c703be --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-011.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-011.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-012.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-012.xht.ini new file mode 100644 index 000000000000..542dae332d19 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-012.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-012.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-019.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-019.xht.ini new file mode 100644 index 000000000000..5d519b2057d5 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-019.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-019.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-020.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-020.xht.ini new file mode 100644 index 000000000000..06b3ea2bfca9 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-020.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-020.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-021.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-021.xht.ini new file mode 100644 index 000000000000..1b8630fecd22 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-021.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-021.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-022.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-022.xht.ini new file mode 100644 index 000000000000..e8bccb29020f --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-022.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-022.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-023.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-023.xht.ini new file mode 100644 index 000000000000..ce639823904c --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-023.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-023.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-024.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-024.xht.ini new file mode 100644 index 000000000000..d55e0e52c7db --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-024.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-024.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-025.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-025.xht.ini new file mode 100644 index 000000000000..392ebeca3030 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-025.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-025.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-026.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-026.xht.ini new file mode 100644 index 000000000000..bab33a509c51 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-026.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-026.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-027.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-027.xht.ini new file mode 100644 index 000000000000..1c129dfbc15a --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-027.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-027.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-028.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-028.xht.ini new file mode 100644 index 000000000000..ffdaed88e442 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-028.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-028.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-029.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-029.xht.ini new file mode 100644 index 000000000000..63d2703877d2 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-029.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-029.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-030.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-030.xht.ini new file mode 100644 index 000000000000..431768d30887 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-030.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-030.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-031.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-031.xht.ini new file mode 100644 index 000000000000..789c3eaf6adc --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-031.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-031.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-032.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-032.xht.ini new file mode 100644 index 000000000000..b9ab28a1f9d9 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-032.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-032.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-033.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-033.xht.ini new file mode 100644 index 000000000000..b366ca0de19e --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-033.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-033.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-034.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-034.xht.ini new file mode 100644 index 000000000000..e9a2de8ea197 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-034.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-034.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-035.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-035.xht.ini new file mode 100644 index 000000000000..29b946d65059 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-035.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-035.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-036.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-036.xht.ini new file mode 100644 index 000000000000..f3821b270cd0 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-036.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-036.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-037.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-037.xht.ini new file mode 100644 index 000000000000..6973478ad7d9 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-037.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-037.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-038.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-038.xht.ini new file mode 100644 index 000000000000..e8f5fae1cba4 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-038.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-038.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-039.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-039.xht.ini new file mode 100644 index 000000000000..23a5b4db1be8 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-039.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-039.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-040.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-040.xht.ini new file mode 100644 index 000000000000..73d73909c54b --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-040.xht.ini @@ -0,0 +1,2 @@ +[white-space-processing-040.xht] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-041.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-041.xht.ini new file mode 100644 index 000000000000..482025064f31 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-041.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-041.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-042.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-042.xht.ini new file mode 100644 index 000000000000..e8efe2102493 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-042.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-042.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-050.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-050.xht.ini new file mode 100644 index 000000000000..db1ea52934c5 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-050.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-050.xht] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-051.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-051.xht.ini new file mode 100644 index 000000000000..4fd7b871a433 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-051.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-051.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-054.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-054.xht.ini new file mode 100644 index 000000000000..58430d522f5b --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-054.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-054.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/CSS2/text/white-space-processing-055.xht.ini b/testing/web-platform/meta/css/CSS2/text/white-space-processing-055.xht.ini new file mode 100644 index 000000000000..65ca798fd072 --- /dev/null +++ b/testing/web-platform/meta/css/CSS2/text/white-space-processing-055.xht.ini @@ -0,0 +1,3 @@ +[white-space-processing-055.xht] + expected: + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/css-backgrounds/background-image-first-line.html.ini b/testing/web-platform/meta/css/css-backgrounds/background-image-first-line.html.ini new file mode 100644 index 000000000000..98e9448ed302 --- /dev/null +++ b/testing/web-platform/meta/css/css-backgrounds/background-image-first-line.html.ini @@ -0,0 +1,2 @@ +[background-image-first-line.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-backgrounds/table-cell-background-local.html.ini b/testing/web-platform/meta/css/css-backgrounds/table-cell-background-local.html.ini new file mode 100644 index 000000000000..61e4f26cb33f --- /dev/null +++ b/testing/web-platform/meta/css/css-backgrounds/table-cell-background-local.html.ini @@ -0,0 +1,2 @@ +[table-cell-background-local.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-conditional/idlharness.html.ini b/testing/web-platform/meta/css/css-conditional/idlharness.html.ini index 79d18d7b0e86..1e8365c0517c 100644 --- a/testing/web-platform/meta/css/css-conditional/idlharness.html.ini +++ b/testing/web-platform/meta/css/css-conditional/idlharness.html.ini @@ -11,3 +11,9 @@ [Partial interface CSS: original interface defined] expected: FAIL + [CSSGroupingRule interface: calling insertRule(CSSOMString, unsigned long) on cssMediaRule with too few arguments must throw TypeError] + expected: FAIL + + [CSSGroupingRule interface: calling insertRule(CSSOMString, unsigned long) on cssSupportsRule with too few arguments must throw TypeError] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-contain/contain-size-replaced-001.html.ini b/testing/web-platform/meta/css/css-contain/contain-size-replaced-001.html.ini new file mode 100644 index 000000000000..84b1cc55acc0 --- /dev/null +++ b/testing/web-platform/meta/css/css-contain/contain-size-replaced-001.html.ini @@ -0,0 +1,2 @@ +[contain-size-replaced-001.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-contain/contain-size-replaced-002.html.ini b/testing/web-platform/meta/css/css-contain/contain-size-replaced-002.html.ini new file mode 100644 index 000000000000..bc7645eae0c3 --- /dev/null +++ b/testing/web-platform/meta/css/css-contain/contain-size-replaced-002.html.ini @@ -0,0 +1,2 @@ +[contain-size-replaced-002.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-fonts/font-display/font-display-feature-policy.tentative.html.ini b/testing/web-platform/meta/css/css-fonts/font-display/font-display-feature-policy.tentative.html.ini new file mode 100644 index 000000000000..5345ae812b9a --- /dev/null +++ b/testing/web-platform/meta/css/css-fonts/font-display/font-display-feature-policy.tentative.html.ini @@ -0,0 +1,2 @@ +[font-display-feature-policy.tentative.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-fonts/idlharness.html.ini b/testing/web-platform/meta/css/css-fonts/idlharness.html.ini index 9bec24d78eef..87eaeb7833c7 100644 --- a/testing/web-platform/meta/css/css-fonts/idlharness.html.ini +++ b/testing/web-platform/meta/css/css-fonts/idlharness.html.ini @@ -68,3 +68,9 @@ [CSSRule interface: constant FONT_PALETTE_VALUES_RULE on interface prototype object] expected: FAIL + [CSSRule interface: cssRule must inherit property "FONT_PALETTE_VALUES_RULE" with the proper type] + expected: FAIL + + [CSSRule interface: cssFontFaceRule must inherit property "FONT_PALETTE_VALUES_RULE" with the proper type] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-fonts/variations/at-font-face-descriptors.html.ini b/testing/web-platform/meta/css/css-fonts/variations/at-font-face-descriptors.html.ini index a30ffe9fbc0b..c26560ae7524 100644 --- a/testing/web-platform/meta/css/css-fonts/variations/at-font-face-descriptors.html.ini +++ b/testing/web-platform/meta/css/css-fonts/variations/at-font-face-descriptors.html.ini @@ -155,3 +155,9 @@ [font-weight(valid): Out-of-range simple calc value (should be clamped): calc(1001)] expected: FAIL + [font-style(valid): 'oblique' followed by calc with out of range value (should be clamped): oblique calc(-91deg)] + expected: FAIL + + [font-style(valid): 'oblique' followed by calc with out of range value (should be clamped): oblique calc(91deg)] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-fonts/variations/font-style-parsing.html.ini b/testing/web-platform/meta/css/css-fonts/variations/font-style-parsing.html.ini new file mode 100644 index 000000000000..8ccf1e00a10c --- /dev/null +++ b/testing/web-platform/meta/css/css-fonts/variations/font-style-parsing.html.ini @@ -0,0 +1,7 @@ +[font-style-parsing.html] + [Font-style (computed): 'oblique' followed by positive angle in radians is valid] + expected: FAIL + + [Font-style (computed): 'oblique' followed by calc is valid even if it mixes units (with computation)] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-grid/abspos/grid-positioned-items-padding-001.html.ini b/testing/web-platform/meta/css/css-grid/abspos/grid-positioned-items-padding-001.html.ini deleted file mode 100644 index 585d4beb8a2d..000000000000 --- a/testing/web-platform/meta/css/css-grid/abspos/grid-positioned-items-padding-001.html.ini +++ /dev/null @@ -1,7 +0,0 @@ -[grid-positioned-items-padding-001.html] - [.grid 4] - expected: FAIL - - [.grid 8] - expected: FAIL - diff --git a/testing/web-platform/meta/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html.ini b/testing/web-platform/meta/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html.ini deleted file mode 100644 index c2530ea78baf..000000000000 --- a/testing/web-platform/meta/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html.ini +++ /dev/null @@ -1,7 +0,0 @@ -[grid-positioned-items-unknown-named-grid-line-001.html] - [.grid 1] - expected: FAIL - - [.grid 2] - expected: FAIL - diff --git a/testing/web-platform/meta/css/css-grid/alignment/__dir__.ini b/testing/web-platform/meta/css/css-grid/alignment/__dir__.ini index e69de29bb2d1..dd7cf64fc5db 100644 --- a/testing/web-platform/meta/css/css-grid/alignment/__dir__.ini +++ b/testing/web-platform/meta/css/css-grid/alignment/__dir__.ini @@ -0,0 +1,2 @@ +leak-threshold: + [default:51200] diff --git a/testing/web-platform/meta/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-001.html.ini b/testing/web-platform/meta/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-001.html.ini new file mode 100644 index 000000000000..07fdcfd2d89a --- /dev/null +++ b/testing/web-platform/meta/css/css-grid/grid-definition/grid-auto-repeat-multiple-values-001.html.ini @@ -0,0 +1,2 @@ +[grid-auto-repeat-multiple-values-001.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-grid/parsing/grid-auto-columns-computed.html.ini b/testing/web-platform/meta/css/css-grid/parsing/grid-auto-columns-computed.html.ini new file mode 100644 index 000000000000..05bfaa880951 --- /dev/null +++ b/testing/web-platform/meta/css/css-grid/parsing/grid-auto-columns-computed.html.ini @@ -0,0 +1,7 @@ +[grid-auto-columns-computed.html] + [Property grid-auto-columns value '1px 2px 3px 0px' computes to '1px 2px 3px 0px'] + expected: FAIL + + [Property grid-auto-columns value 'fit-content(1px) minmax(2px, 3px) 4px' computes to 'fit-content(1px) minmax(2px, 3px) 4px'] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-grid/parsing/grid-auto-rows-computed.html.ini b/testing/web-platform/meta/css/css-grid/parsing/grid-auto-rows-computed.html.ini new file mode 100644 index 000000000000..b66262a1f823 --- /dev/null +++ b/testing/web-platform/meta/css/css-grid/parsing/grid-auto-rows-computed.html.ini @@ -0,0 +1,7 @@ +[grid-auto-rows-computed.html] + [Property grid-auto-rows value '1px 2px 3px 0px' computes to '1px 2px 3px 0px'] + expected: FAIL + + [Property grid-auto-rows value 'fit-content(1px) minmax(2px, 3px) 4px' computes to 'fit-content(1px) minmax(2px, 3px) 4px'] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-grid/parsing/grid-template-areas-computed.html.ini b/testing/web-platform/meta/css/css-grid/parsing/grid-template-areas-computed.html.ini new file mode 100644 index 000000000000..383bf3915d99 --- /dev/null +++ b/testing/web-platform/meta/css/css-grid/parsing/grid-template-areas-computed.html.ini @@ -0,0 +1,10 @@ +[grid-template-areas-computed.html] + [Property grid-template-areas value '"first ..."' computes to '"first ."'] + expected: FAIL + + [Property grid-template-areas value '"c\td"' computes to '"c d"'] + expected: FAIL + + [Property grid-template-areas value '" a \t b "' computes to '"a b"'] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-layout-api/__dir__.ini b/testing/web-platform/meta/css/css-layout-api/__dir__.ini new file mode 100644 index 000000000000..2e2a85383b01 --- /dev/null +++ b/testing/web-platform/meta/css/css-layout-api/__dir__.ini @@ -0,0 +1 @@ +leak-threshold: [gpu:51200] diff --git a/testing/web-platform/meta/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html.ini b/testing/web-platform/meta/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html.ini new file mode 100644 index 000000000000..55072c46d3bd --- /dev/null +++ b/testing/web-platform/meta/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html.ini @@ -0,0 +1,8 @@ +[list-marker-with-lineheight-and-overflow-hidden-001.html] + expected: + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/css/css-overflow/parsing/block-ellipsis-valid.html.ini b/testing/web-platform/meta/css/css-overflow/parsing/block-ellipsis-valid.html.ini new file mode 100644 index 000000000000..3df969da93aa --- /dev/null +++ b/testing/web-platform/meta/css/css-overflow/parsing/block-ellipsis-valid.html.ini @@ -0,0 +1,10 @@ +[block-ellipsis-valid.html] + [e.style['block-ellipsis'\] = "none" should set the property value] + expected: FAIL + + [e.style['block-ellipsis'\] = "auto" should set the property value] + expected: FAIL + + [e.style['block-ellipsis'\] = "\\" etc., etc. \\"" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-overflow/parsing/continue-valid.html.ini b/testing/web-platform/meta/css/css-overflow/parsing/continue-valid.html.ini new file mode 100644 index 000000000000..c61519615c90 --- /dev/null +++ b/testing/web-platform/meta/css/css-overflow/parsing/continue-valid.html.ini @@ -0,0 +1,7 @@ +[continue-valid.html] + [e.style['continue'\] = "auto" should set the property value] + expected: FAIL + + [e.style['continue'\] = "discard" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-overflow/parsing/line-clamp-valid.html.ini b/testing/web-platform/meta/css/css-overflow/parsing/line-clamp-valid.html.ini new file mode 100644 index 000000000000..45a042147d0c --- /dev/null +++ b/testing/web-platform/meta/css/css-overflow/parsing/line-clamp-valid.html.ini @@ -0,0 +1,19 @@ +[line-clamp-valid.html] + [e.style['line-clamp'\] = "9 \\" etc., etc. \\"" should set the property value] + expected: FAIL + + [e.style['line-clamp'\] = "8 auto" should set the property value] + expected: FAIL + + [e.style['line-clamp'\] = "7 none" should set the property value] + expected: FAIL + + [e.style['line-clamp'\] = "none" should set the property value] + expected: FAIL + + [e.style['line-clamp'\] = "1" should set the property value] + expected: FAIL + + [e.style['line-clamp'\] = "6" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-overflow/parsing/max-lines-valid.html.ini b/testing/web-platform/meta/css/css-overflow/parsing/max-lines-valid.html.ini new file mode 100644 index 000000000000..e33df223ae4e --- /dev/null +++ b/testing/web-platform/meta/css/css-overflow/parsing/max-lines-valid.html.ini @@ -0,0 +1,10 @@ +[max-lines-valid.html] + [e.style['max-lines'\] = "1" should set the property value] + expected: FAIL + + [e.style['max-lines'\] = "none" should set the property value] + expected: FAIL + + [e.style['max-lines'\] = "6" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-overflow/parsing/overflow-computed.html.ini b/testing/web-platform/meta/css/css-overflow/parsing/overflow-computed.html.ini new file mode 100644 index 000000000000..4265475754df --- /dev/null +++ b/testing/web-platform/meta/css/css-overflow/parsing/overflow-computed.html.ini @@ -0,0 +1,28 @@ +[overflow-computed.html] + [Property overflow value 'clip' computes to 'clip'] + expected: FAIL + + [Property overflow value 'clip auto' computes to 'hidden auto'] + expected: FAIL + + [Property overflow value 'auto clip' computes to 'auto hidden'] + expected: FAIL + + [Property overflow value 'clip clip' computes to 'clip'] + expected: FAIL + + [Property overflow value 'clip hidden' computes to 'hidden'] + expected: FAIL + + [Property overflow value 'clip scroll' computes to 'hidden scroll'] + expected: FAIL + + [Property overflow value 'hidden clip' computes to 'hidden'] + expected: FAIL + + [Property overflow value 'scroll clip' computes to 'scroll hidden'] + expected: FAIL + + [Property overflow-y value 'clip' computes to 'clip'] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-overflow/parsing/overflow-valid.html.ini b/testing/web-platform/meta/css/css-overflow/parsing/overflow-valid.html.ini new file mode 100644 index 000000000000..4467fb7d6fe9 --- /dev/null +++ b/testing/web-platform/meta/css/css-overflow/parsing/overflow-valid.html.ini @@ -0,0 +1,22 @@ +[overflow-valid.html] + [e.style['overflow-inline'\] = "scroll" should set the property value] + expected: FAIL + + [e.style['overflow-block'\] = "hidden" should set the property value] + expected: FAIL + + [e.style['overflow-inline'\] = "visible" should set the property value] + expected: FAIL + + [e.style['overflow'\] = "clip" should set the property value] + expected: FAIL + + [e.style['overflow-y'\] = "clip" should set the property value] + expected: FAIL + + [e.style['overflow'\] = "clip clip" should set the property value] + expected: FAIL + + [e.style['overflow-block'\] = "clip" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-pseudo/idlharness.html.ini b/testing/web-platform/meta/css/css-pseudo/idlharness.html.ini index f34d22de93c8..b531461f97c0 100644 --- a/testing/web-platform/meta/css/css-pseudo/idlharness.html.ini +++ b/testing/web-platform/meta/css/css-pseudo/idlharness.html.ini @@ -1,5 +1,4 @@ prefs: [dom.animations-api.getAnimations.enabled:true] - [idlharness.html] [CSSPseudoElementList interface: existence and properties of interface object] expected: FAIL @@ -76,3 +75,9 @@ prefs: [dom.animations-api.getAnimations.enabled:true] [CSSPseudoElementList interface: calling item(unsigned long) on beforeElements with too few arguments must throw TypeError] expected: FAIL + [CSSPseudoElement interface: attribute element] + expected: FAIL + + [CSSPseudoElement interface: beforeElements.item(0) must inherit property "element" with the proper type] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/ancestor-change-heuristic.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/ancestor-change-heuristic.html.ini new file mode 100644 index 000000000000..7d82ea7f9ea3 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/ancestor-change-heuristic.html.ini @@ -0,0 +1,6 @@ +[ancestor-change-heuristic.html] + [Ancestor changes in document scroller.] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): PASS + FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/anchoring-with-bounds-clamping.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/anchoring-with-bounds-clamping.html.ini new file mode 100644 index 000000000000..bb9826f7f974 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/anchoring-with-bounds-clamping.html.ini @@ -0,0 +1,4 @@ +[anchoring-with-bounds-clamping.html] + [Anchoring combined with scroll bounds clamping in the document.] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/basic.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/basic.html.ini new file mode 100644 index 000000000000..3bddafec54cf --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/basic.html.ini @@ -0,0 +1,7 @@ +[basic.html] + [Minimal scroll anchoring example.] + expected: + if os == "win": "FAIL" + if os == "mac": "FAIL" + if os == "linux": "FAIL" + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/descend-into-container-with-float.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/descend-into-container-with-float.html.ini new file mode 100644 index 000000000000..2146d798eddb --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/descend-into-container-with-float.html.ini @@ -0,0 +1,6 @@ +[descend-into-container-with-float.html] + [Zero-height container with float.] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): PASS + FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/descend-into-container-with-overflow.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/descend-into-container-with-overflow.html.ini new file mode 100644 index 000000000000..c1feae84e7e9 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/descend-into-container-with-overflow.html.ini @@ -0,0 +1,6 @@ +[descend-into-container-with-overflow.html] + [Zero-height container with visible overflow.] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): PASS + FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/exclude-fixed-position.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/exclude-fixed-position.html.ini new file mode 100644 index 000000000000..b1885c1940e8 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/exclude-fixed-position.html.ini @@ -0,0 +1,6 @@ +[exclude-fixed-position.html] + [Fixed-position header.] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): PASS + FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/inline-block.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/inline-block.html.ini new file mode 100644 index 000000000000..586ca2ba3735 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/inline-block.html.ini @@ -0,0 +1,7 @@ +[inline-block.html] + [Anchor selection descent into inline blocks.] + expected: + if os == "linux": "FAIL" + if os == "mac": "FAIL" + if os == "win": "FAIL" + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/position-change-heuristic.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/position-change-heuristic.html.ini new file mode 100644 index 000000000000..1ef4c4c38a86 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/position-change-heuristic.html.ini @@ -0,0 +1,6 @@ +[position-change-heuristic.html] + [Position changes in document scroller.] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): PASS + FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/start-edge-in-block-layout-direction.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/start-edge-in-block-layout-direction.html.ini new file mode 100644 index 000000000000..679fec45ad8c --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/start-edge-in-block-layout-direction.html.ini @@ -0,0 +1,19 @@ +[start-edge-in-block-layout-direction.html] + [Vertical-RL LTR.] + expected: FAIL + + [Horizontal RTL.] + expected: FAIL + + [Vertical-LR LTR.] + expected: FAIL + + [Horizontal LTR.] + expected: FAIL + + [Vertical-RL RTL.] + expected: FAIL + + [Vertical-LR RTL.] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/subtree-exclusion.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/subtree-exclusion.html.ini new file mode 100644 index 000000000000..5c23c1d4f65c --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/subtree-exclusion.html.ini @@ -0,0 +1,7 @@ +[subtree-exclusion.html] + [Subtree exclusion with overflow-anchor.] + expected: + if os == "win": "FAIL" + if os == "mac": "FAIL" + if os == "linux": "FAIL" + diff --git a/testing/web-platform/meta/css/css-scroll-anchoring/wrapped-text.html.ini b/testing/web-platform/meta/css/css-scroll-anchoring/wrapped-text.html.ini new file mode 100644 index 000000000000..b2af9315a287 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-anchoring/wrapped-text.html.ini @@ -0,0 +1,7 @@ +[wrapped-text.html] + [Anchoring with text wrapping changes.] + expected: + if os == "win": "FAIL" + if os == "mac": "FAIL" + if os == "linux": "FAIL" + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-margin-block-valid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-margin-block-valid.html.ini new file mode 100644 index 000000000000..e6862aad65ba --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-margin-block-valid.html.ini @@ -0,0 +1,22 @@ +[scroll-margin-block-valid.html] + [e.style['scroll-margin-block-start'\] = "-10px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-block-end'\] = "-10px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-block'\] = "1px 2px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-block'\] = "-10px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-block-start'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin-block-end'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin-block'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-margin-inline-valid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-margin-inline-valid.html.ini new file mode 100644 index 000000000000..26e1c2ce8385 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-margin-inline-valid.html.ini @@ -0,0 +1,22 @@ +[scroll-margin-inline-valid.html] + [e.style['scroll-margin-inline'\] = "1px 2px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-inline-end'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin-inline-start'\] = "-10px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-inline'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin-inline'\] = "-10px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-inline-start'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin-inline-end'\] = "-10px" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-margin-valid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-margin-valid.html.ini new file mode 100644 index 000000000000..0503f8d83f33 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-margin-valid.html.ini @@ -0,0 +1,40 @@ +[scroll-margin-valid.html] + [e.style['scroll-margin-right'\] = "-10px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-top'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin'\] = "1px 2px 3px 4px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-left'\] = "-10px" should set the property value] + expected: FAIL + + [e.style['scroll-margin'\] = "1px 2px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-right'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin'\] = "1px 2px 3px" should set the property value] + expected: FAIL + + [e.style['scroll-margin'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin-bottom'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin-bottom'\] = "-10px" should set the property value] + expected: FAIL + + [e.style['scroll-margin-left'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-margin-top'\] = "-10px" should set the property value] + expected: FAIL + + [e.style['scroll-margin'\] = "-10px" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-padding-block-valid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-padding-block-valid.html.ini new file mode 100644 index 000000000000..68ed4a690326 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-padding-block-valid.html.ini @@ -0,0 +1,55 @@ +[scroll-padding-block-valid.html] + [e.style['scroll-padding-block'\] = "auto auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-end'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-start'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-end'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block'\] = "1px 2px" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-start'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-start'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-start'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block'\] = "1px auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-end'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-end'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-start'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block-end'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-block'\] = "auto" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-padding-inline-valid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-padding-inline-valid.html.ini new file mode 100644 index 000000000000..eddb4026d0b9 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-padding-inline-valid.html.ini @@ -0,0 +1,55 @@ +[scroll-padding-inline-valid.html] + [e.style['scroll-padding-inline-start'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline-end'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline-end'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline-start'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline'\] = "1px 2px" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline'\] = "1px auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline-start'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline'\] = "auto auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline-start'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline-end'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline-end'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline-end'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-inline-start'\] = "10px" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-padding-valid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-padding-valid.html.ini new file mode 100644 index 000000000000..373d704d429b --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-padding-valid.html.ini @@ -0,0 +1,88 @@ +[scroll-padding-valid.html] + [e.style['scroll-padding-bottom'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-top'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-right'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding-left'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding'\] = "1px 2px 3% 4px" should set the property value] + expected: FAIL + + [e.style['scroll-padding'\] = "1px auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-bottom'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-left'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-right'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-right'\] = "calc(50% + 60px)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-top'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-right'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-bottom'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding'\] = "1px 2px 3%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-left'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-bottom'\] = "20%" should set the property value] + expected: FAIL + + [e.style['scroll-padding-bottom'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-left'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-right'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding-left'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-top'\] = "10px" should set the property value] + expected: FAIL + + [e.style['scroll-padding'\] = "1px 2px" should set the property value] + expected: FAIL + + [e.style['scroll-padding-top'\] = "auto" should set the property value] + expected: FAIL + + [e.style['scroll-padding-top'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['scroll-padding'\] = "auto auto auto auto" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-align-valid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-align-valid.html.ini new file mode 100644 index 000000000000..7c0160ba5039 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-align-valid.html.ini @@ -0,0 +1,19 @@ +[scroll-snap-align-valid.html] + [e.style['scroll-snap-align'\] = "end" should set the property value] + expected: FAIL + + [e.style['scroll-snap-align'\] = "start none" should set the property value] + expected: FAIL + + [e.style['scroll-snap-align'\] = "center end" should set the property value] + expected: FAIL + + [e.style['scroll-snap-align'\] = "center" should set the property value] + expected: FAIL + + [e.style['scroll-snap-align'\] = "none" should set the property value] + expected: FAIL + + [e.style['scroll-snap-align'\] = "start" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-stop-valid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-stop-valid.html.ini new file mode 100644 index 000000000000..6a9a17ee6583 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-stop-valid.html.ini @@ -0,0 +1,7 @@ +[scroll-snap-stop-valid.html] + [e.style['scroll-snap-stop'\] = "normal" should set the property value] + expected: FAIL + + [e.style['scroll-snap-stop'\] = "always" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-type-invalid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-type-invalid.html.ini new file mode 100644 index 000000000000..1816e37a4244 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-type-invalid.html.ini @@ -0,0 +1,7 @@ +[scroll-snap-type-invalid.html] + [e.style['scroll-snap-type'\] = "mandatory" should not set the property value] + expected: FAIL + + [e.style['scroll-snap-type'\] = "proximity" should not set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-type-valid.html.ini b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-type-valid.html.ini new file mode 100644 index 000000000000..0a0dc4f9c777 --- /dev/null +++ b/testing/web-platform/meta/css/css-scroll-snap/parsing/scroll-snap-type-valid.html.ini @@ -0,0 +1,22 @@ +[scroll-snap-type-valid.html] + [e.style['scroll-snap-type'\] = "block" should set the property value] + expected: FAIL + + [e.style['scroll-snap-type'\] = "y mandatory" should set the property value] + expected: FAIL + + [e.style['scroll-snap-type'\] = "both" should set the property value] + expected: FAIL + + [e.style['scroll-snap-type'\] = "inline proximity" should set the property value] + expected: FAIL + + [e.style['scroll-snap-type'\] = "y" should set the property value] + expected: FAIL + + [e.style['scroll-snap-type'\] = "inline" should set the property value] + expected: FAIL + + [e.style['scroll-snap-type'\] = "x" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-shadow-parts/interaction-with-placeholder.html.ini b/testing/web-platform/meta/css/css-shadow-parts/interaction-with-placeholder.html.ini new file mode 100644 index 000000000000..9dcaf1419f08 --- /dev/null +++ b/testing/web-platform/meta/css/css-shadow-parts/interaction-with-placeholder.html.ini @@ -0,0 +1,2 @@ +[interaction-with-placeholder.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-shadow-parts/interaction-with-pseudo-elements.html.ini b/testing/web-platform/meta/css/css-shadow-parts/interaction-with-pseudo-elements.html.ini new file mode 100644 index 000000000000..4ae088115b82 --- /dev/null +++ b/testing/web-platform/meta/css/css-shadow-parts/interaction-with-pseudo-elements.html.ini @@ -0,0 +1,19 @@ +[interaction-with-pseudo-elements.html] + [::first-letter in selected host is styled] + expected: FAIL + + [::first-line in selected host is styled] + expected: FAIL + + [::before in selected host is styled] + expected: FAIL + + [::placeholder in selected host is styled] + expected: FAIL + + [::selection in selected host is styled] + expected: FAIL + + [::after in selected host is styled] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-sizing/range-percent-intrinsic-size-1.html.ini b/testing/web-platform/meta/css/css-sizing/range-percent-intrinsic-size-1.html.ini new file mode 100644 index 000000000000..fd80ec7f7ad9 --- /dev/null +++ b/testing/web-platform/meta/css/css-sizing/range-percent-intrinsic-size-1.html.ini @@ -0,0 +1,2 @@ +[range-percent-intrinsic-size-1.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-sizing/range-percent-intrinsic-size-2.html.ini b/testing/web-platform/meta/css/css-sizing/range-percent-intrinsic-size-2.html.ini new file mode 100644 index 000000000000..d5c1fee515ce --- /dev/null +++ b/testing/web-platform/meta/css/css-sizing/range-percent-intrinsic-size-2.html.ini @@ -0,0 +1,9 @@ +[range-percent-intrinsic-size-2.html] + expected: + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/css-syntax/escaped-eof.html.ini b/testing/web-platform/meta/css/css-syntax/escaped-eof.html.ini new file mode 100644 index 000000000000..60eef66c2449 --- /dev/null +++ b/testing/web-platform/meta/css/css-syntax/escaped-eof.html.ini @@ -0,0 +1,10 @@ +[escaped-eof.html] + [Escaped EOF turns into a U+FFFD in a dimension token.] + expected: FAIL + + [Escaped EOF turns into a U+FFFD in an ident token.] + expected: FAIL + + [Escaped EOF turns into a U+FFFD in a url token.] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-tables/parsing/border-spacing-valid.html.ini b/testing/web-platform/meta/css/css-tables/parsing/border-spacing-valid.html.ini new file mode 100644 index 000000000000..9dfc328541da --- /dev/null +++ b/testing/web-platform/meta/css/css-tables/parsing/border-spacing-valid.html.ini @@ -0,0 +1,4 @@ +[border-spacing-valid.html] + [e.style['border-spacing'\] = "calc(10px + 0.5em) calc(10px - 0.5em)" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-tables/parsing/caption-side-invalid.html.ini b/testing/web-platform/meta/css/css-tables/parsing/caption-side-invalid.html.ini new file mode 100644 index 000000000000..95b9ef8c3e42 --- /dev/null +++ b/testing/web-platform/meta/css/css-tables/parsing/caption-side-invalid.html.ini @@ -0,0 +1,7 @@ +[caption-side-invalid.html] + [e.style['caption-side'\] = "left" should not set the property value] + expected: FAIL + + [e.style['caption-side'\] = "right" should not set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/overflow-wrap/overflow-wrap-anywhere-002.html.ini b/testing/web-platform/meta/css/css-text/overflow-wrap/overflow-wrap-anywhere-002.html.ini new file mode 100644 index 000000000000..26d0016107d3 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/overflow-wrap/overflow-wrap-anywhere-002.html.ini @@ -0,0 +1,2 @@ +[overflow-wrap-anywhere-002.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/overflow-wrap/overflow-wrap-anywhere-003.html.ini b/testing/web-platform/meta/css/css-text/overflow-wrap/overflow-wrap-anywhere-003.html.ini new file mode 100644 index 000000000000..4f7a36e2280f --- /dev/null +++ b/testing/web-platform/meta/css/css-text/overflow-wrap/overflow-wrap-anywhere-003.html.ini @@ -0,0 +1,2 @@ +[overflow-wrap-anywhere-003.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/overflow-wrap/overflow-wrap-break-word-006.html.ini b/testing/web-platform/meta/css/css-text/overflow-wrap/overflow-wrap-break-word-006.html.ini new file mode 100644 index 000000000000..b27839133938 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/overflow-wrap/overflow-wrap-break-word-006.html.ini @@ -0,0 +1,2 @@ +[overflow-wrap-break-word-006.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/parsing/hanging-punctuation-valid.html.ini b/testing/web-platform/meta/css/css-text/parsing/hanging-punctuation-valid.html.ini new file mode 100644 index 000000000000..3d74b5a3efaf --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/hanging-punctuation-valid.html.ini @@ -0,0 +1,52 @@ +[hanging-punctuation-valid.html] + [e.style['hanging-punctuation'\] = "allow-end last first" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "force-end" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "force-end last" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "none" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "first force-end" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "allow-end" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "last first force-end" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "last first" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "first allow-end last" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "allow-end first" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "last" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "first" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "first last force-end" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "last allow-end" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "last allow-end first" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "first last" should set the property value] + expected: FAIL + + [e.style['hanging-punctuation'\] = "force-end first last" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/parsing/line-break-valid.html.ini b/testing/web-platform/meta/css/css-text/parsing/line-break-valid.html.ini new file mode 100644 index 000000000000..6ff20f08110c --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/line-break-valid.html.ini @@ -0,0 +1,16 @@ +[line-break-valid.html] + [e.style['line-break'\] = "loose" should set the property value] + expected: FAIL + + [e.style['line-break'\] = "normal" should set the property value] + expected: FAIL + + [e.style['line-break'\] = "anywhere" should set the property value] + expected: FAIL + + [e.style['line-break'\] = "auto" should set the property value] + expected: FAIL + + [e.style['line-break'\] = "strict" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/parsing/tab-size-valid.html.ini b/testing/web-platform/meta/css/css-text/parsing/tab-size-valid.html.ini new file mode 100644 index 000000000000..289b9e8e4e1c --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/tab-size-valid.html.ini @@ -0,0 +1,16 @@ +[tab-size-valid.html] + [e.style['tab-size'\] = "0px" should set the property value] + expected: FAIL + + [e.style['tab-size'\] = "10px" should set the property value] + expected: FAIL + + [e.style['tab-size'\] = "0" should set the property value] + expected: FAIL + + [e.style['tab-size'\] = "calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['tab-size'\] = "2.5" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/parsing/text-align-all-valid.html.ini b/testing/web-platform/meta/css/css-text/parsing/text-align-all-valid.html.ini new file mode 100644 index 000000000000..e08690369fcd --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/text-align-all-valid.html.ini @@ -0,0 +1,22 @@ +[text-align-all-valid.html] + [e.style['text-align-all'\] = "match-parent" should set the property value] + expected: FAIL + + [e.style['text-align-all'\] = "left" should set the property value] + expected: FAIL + + [e.style['text-align-all'\] = "center" should set the property value] + expected: FAIL + + [e.style['text-align-all'\] = "start" should set the property value] + expected: FAIL + + [e.style['text-align-all'\] = "end" should set the property value] + expected: FAIL + + [e.style['text-align-all'\] = "right" should set the property value] + expected: FAIL + + [e.style['text-align-all'\] = "justify" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/parsing/text-align-last-valid.html.ini b/testing/web-platform/meta/css/css-text/parsing/text-align-last-valid.html.ini new file mode 100644 index 000000000000..275698aae137 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/text-align-last-valid.html.ini @@ -0,0 +1,4 @@ +[text-align-last-valid.html] + [e.style['text-align-last'\] = "match-parent" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/parsing/text-align-valid.html.ini b/testing/web-platform/meta/css/css-text/parsing/text-align-valid.html.ini new file mode 100644 index 000000000000..d83652a4ee34 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/text-align-valid.html.ini @@ -0,0 +1,4 @@ +[text-align-valid.html] + [e.style['text-align'\] = "justify-all" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/parsing/text-indent-valid.html.ini b/testing/web-platform/meta/css/css-text/parsing/text-indent-valid.html.ini new file mode 100644 index 000000000000..97f8781bd76a --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/text-indent-valid.html.ini @@ -0,0 +1,25 @@ +[text-indent-valid.html] + [e.style['text-indent'\] = "calc(2em + 3ex) hanging each-line" should set the property value] + expected: FAIL + + [e.style['text-indent'\] = "calc(50% + 60px) each-line hanging" should set the property value] + expected: FAIL + + [e.style['text-indent'\] = "10px hanging" should set the property value] + expected: FAIL + + [e.style['text-indent'\] = "20% each-line" should set the property value] + expected: FAIL + + [e.style['text-indent'\] = "hanging 20% each-line" should set the property value] + expected: FAIL + + [e.style['text-indent'\] = "each-line hanging calc(2em + 3ex)" should set the property value] + expected: FAIL + + [e.style['text-indent'\] = "each-line 10px" should set the property value] + expected: FAIL + + [e.style['text-indent'\] = "hanging calc(50% + 60px)" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/parsing/text-transform-valid.html.ini b/testing/web-platform/meta/css/css-text/parsing/text-transform-valid.html.ini new file mode 100644 index 000000000000..bdf9f29e85ae --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/text-transform-valid.html.ini @@ -0,0 +1,37 @@ +[text-transform-valid.html] + [e.style['text-transform'\] = "full-size-kana full-width capitalize" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "capitalize full-width" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "full-size-kana full-width" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "capitalize full-width full-size-kana" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "full-width full-size-kana" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "full-size-kana lowercase full-width" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "full-size-kana capitalize" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "lowercase full-size-kana full-width" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "full-width lowercase" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "full-width full-size-kana uppercase" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "uppercase full-size-kana" should set the property value] + expected: FAIL + + [e.style['text-transform'\] = "full-width uppercase full-size-kana" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/parsing/white-space-valid.html.ini b/testing/web-platform/meta/css/css-text/parsing/white-space-valid.html.ini new file mode 100644 index 000000000000..1ad73fcbb720 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/white-space-valid.html.ini @@ -0,0 +1,4 @@ +[white-space-valid.html] + [e.style['white-space'\] = "break-spaces" should set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/parsing/word-spacing-invalid.html.ini b/testing/web-platform/meta/css/css-text/parsing/word-spacing-invalid.html.ini new file mode 100644 index 000000000000..ff76e8dbd132 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/parsing/word-spacing-invalid.html.ini @@ -0,0 +1,4 @@ +[word-spacing-invalid.html] + [e.style['word-spacing'\] = "20%" should not set the property value] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-text/tab-size/tab-size-inheritance-001.html.ini b/testing/web-platform/meta/css/css-text/tab-size/tab-size-inheritance-001.html.ini new file mode 100644 index 000000000000..9950ceeb7d89 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/tab-size/tab-size-inheritance-001.html.ini @@ -0,0 +1,2 @@ +[tab-size-inheritance-001.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/tab-size/tab-size-spacing-001.html.ini b/testing/web-platform/meta/css/css-text/tab-size/tab-size-spacing-001.html.ini new file mode 100644 index 000000000000..5624b9715792 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/tab-size/tab-size-spacing-001.html.ini @@ -0,0 +1,2 @@ +[tab-size-spacing-001.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-292.xht.ini b/testing/web-platform/meta/css/css-text/text-indent/text-indent-percentage-004.html.ini similarity index 82% rename from testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-292.xht.ini rename to testing/web-platform/meta/css/css-text/text-indent/text-indent-percentage-004.html.ini index 5495b1d70543..bb7694ec9a0a 100644 --- a/testing/web-platform/meta/css/CSS2/selectors/first-letter-punctuation-292.xht.ini +++ b/testing/web-platform/meta/css/css-text/text-indent/text-indent-percentage-004.html.ini @@ -1,4 +1,5 @@ -[first-letter-punctuation-292.xht] +[text-indent-percentage-004.html] expected: if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/css/css-text/text-transform/text-transform-shaping-001.html.ini b/testing/web-platform/meta/css/css-text/text-transform/text-transform-shaping-001.html.ini new file mode 100644 index 000000000000..cca2292ebdef --- /dev/null +++ b/testing/web-platform/meta/css/css-text/text-transform/text-transform-shaping-001.html.ini @@ -0,0 +1,2 @@ +[text-transform-shaping-001.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/text-transform/text-transform-shaping-002.html.ini b/testing/web-platform/meta/css/css-text/text-transform/text-transform-shaping-002.html.ini new file mode 100644 index 000000000000..2ba238436ec0 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/text-transform/text-transform-shaping-002.html.ini @@ -0,0 +1,2 @@ +[text-transform-shaping-002.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/text-transform/text-transform-shaping-003.html.ini b/testing/web-platform/meta/css/css-text/text-transform/text-transform-shaping-003.html.ini new file mode 100644 index 000000000000..7e956c7dfde8 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/text-transform/text-transform-shaping-003.html.ini @@ -0,0 +1,2 @@ +[text-transform-shaping-003.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/break-spaces-004.html.ini b/testing/web-platform/meta/css/css-text/white-space/break-spaces-004.html.ini new file mode 100644 index 000000000000..3b579655b8e4 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/break-spaces-004.html.ini @@ -0,0 +1,2 @@ +[break-spaces-004.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/break-spaces-005.html.ini b/testing/web-platform/meta/css/css-text/white-space/break-spaces-005.html.ini new file mode 100644 index 000000000000..c2c621bfe62c --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/break-spaces-005.html.ini @@ -0,0 +1,2 @@ +[break-spaces-005.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/break-spaces-006.html.ini b/testing/web-platform/meta/css/css-text/white-space/break-spaces-006.html.ini new file mode 100644 index 000000000000..971ef8db4452 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/break-spaces-006.html.ini @@ -0,0 +1,2 @@ +[break-spaces-006.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/break-spaces-007.html.ini b/testing/web-platform/meta/css/css-text/white-space/break-spaces-007.html.ini new file mode 100644 index 000000000000..8f26da2e6ee6 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/break-spaces-007.html.ini @@ -0,0 +1,2 @@ +[break-spaces-007.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/break-spaces-008.html.ini b/testing/web-platform/meta/css/css-text/white-space/break-spaces-008.html.ini new file mode 100644 index 000000000000..129efde61a2f --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/break-spaces-008.html.ini @@ -0,0 +1,2 @@ +[break-spaces-008.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/pre-wrap-012.html.ini b/testing/web-platform/meta/css/css-text/white-space/pre-wrap-012.html.ini new file mode 100644 index 000000000000..ad5a035d5f92 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/pre-wrap-012.html.ini @@ -0,0 +1,2 @@ +[pre-wrap-012.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/pre-wrap-013.html.ini b/testing/web-platform/meta/css/css-text/white-space/pre-wrap-013.html.ini new file mode 100644 index 000000000000..27a4a1b189d9 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/pre-wrap-013.html.ini @@ -0,0 +1,2 @@ +[pre-wrap-013.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/pre-wrap-014.html.ini b/testing/web-platform/meta/css/css-text/white-space/pre-wrap-014.html.ini new file mode 100644 index 000000000000..11c523245cc3 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/pre-wrap-014.html.ini @@ -0,0 +1,2 @@ +[pre-wrap-014.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/pre-wrap-016.html.ini b/testing/web-platform/meta/css/css-text/white-space/pre-wrap-016.html.ini new file mode 100644 index 000000000000..cbbf9cabc21f --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/pre-wrap-016.html.ini @@ -0,0 +1,2 @@ +[pre-wrap-016.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/tab-stop-threshold-005.html.ini b/testing/web-platform/meta/css/css-text/white-space/tab-stop-threshold-005.html.ini new file mode 100644 index 000000000000..24e74516b9f9 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/tab-stop-threshold-005.html.ini @@ -0,0 +1,2 @@ +[tab-stop-threshold-005.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/tab-stop-threshold-006.html.ini b/testing/web-platform/meta/css/css-text/white-space/tab-stop-threshold-006.html.ini new file mode 100644 index 000000000000..fe22ef9105df --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/tab-stop-threshold-006.html.ini @@ -0,0 +1,2 @@ +[tab-stop-threshold-006.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-001.html.ini b/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-001.html.ini new file mode 100644 index 000000000000..6bfbd15b49d4 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-001.html.ini @@ -0,0 +1,2 @@ +[white-space-intrinsic-size-001.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-002.html.ini b/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-002.html.ini new file mode 100644 index 000000000000..bddf7af6aae4 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-002.html.ini @@ -0,0 +1,2 @@ +[white-space-intrinsic-size-002.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-003.html.ini b/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-003.html.ini new file mode 100644 index 000000000000..60f075ed1e3f --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-003.html.ini @@ -0,0 +1,2 @@ +[white-space-intrinsic-size-003.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-004.html.ini b/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-004.html.ini new file mode 100644 index 000000000000..ec010b1bfd9b --- /dev/null +++ b/testing/web-platform/meta/css/css-text/white-space/white-space-intrinsic-size-004.html.ini @@ -0,0 +1,2 @@ +[white-space-intrinsic-size-004.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/word-break/word-break-break-all-012.html.ini b/testing/web-platform/meta/css/css-text/word-break/word-break-break-all-012.html.ini new file mode 100644 index 000000000000..508737adbc17 --- /dev/null +++ b/testing/web-platform/meta/css/css-text/word-break/word-break-break-all-012.html.ini @@ -0,0 +1,2 @@ +[word-break-break-all-012.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-text/word-break/word-break-break-all-013.html.ini b/testing/web-platform/meta/css/css-text/word-break/word-break-break-all-013.html.ini new file mode 100644 index 000000000000..9985af751f7d --- /dev/null +++ b/testing/web-platform/meta/css/css-text/word-break/word-break-break-all-013.html.ini @@ -0,0 +1,2 @@ +[word-break-break-all-013.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-typed-om/interfaces.html.ini b/testing/web-platform/meta/css/css-typed-om/interfaces.html.ini index 87c25ffdf1c2..90f10bb0ceba 100644 --- a/testing/web-platform/meta/css/css-typed-om/interfaces.html.ini +++ b/testing/web-platform/meta/css/css-typed-om/interfaces.html.ini @@ -1514,3 +1514,15 @@ [CSS namespace: operation mm(double)] expected: FAIL + [CSSTransformValue interface: iterable] + expected: FAIL + + [CSSNumericArray interface: iterable] + expected: FAIL + + [StylePropertyMapReadOnly interface: iterable] + expected: FAIL + + [CSSUnparsedValue interface: iterable] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-ui/appearance-cssom-001.html.ini b/testing/web-platform/meta/css/css-ui/appearance-cssom-001.html.ini new file mode 100644 index 000000000000..7d8a39a15b3f --- /dev/null +++ b/testing/web-platform/meta/css/css-ui/appearance-cssom-001.html.ini @@ -0,0 +1,1124 @@ +[appearance-cssom-001.html] + [appearance: menulist-button] + expected: FAIL + + [appearance: continuous-capacity-level-indicator (invalid)] + expected: FAIL + + [appearance: toolbarbutton-dropdown (invalid)] + expected: FAIL + + [appearance: statusbar (invalid)] + expected: FAIL + + [appearance: button-arrow-next (invalid)] + expected: FAIL + + [appearance: meterchunk (invalid)] + expected: FAIL + + [appearance: resizerpanel (invalid)] + expected: FAIL + + [appearance: media-volume-slider (invalid)] + expected: FAIL + + [appearance: scrollbarbutton-left (invalid)] + expected: FAIL + + [appearance: scale-vertical (invalid)] + expected: FAIL + + [appearance: menucheckbox (invalid)] + expected: FAIL + + [-webkit-appearance: square-button] + expected: FAIL + + [appearance: -moz-window-button-restore (invalid)] + expected: FAIL + + [appearance: media-time-remaining-display (invalid)] + expected: FAIL + + [-webkit-appearance: progressbar (invalid)] + expected: FAIL + + [appearance: radio-container (invalid)] + expected: FAIL + + [appearance: media-seek-back-button (invalid)] + expected: FAIL + + [appearance: media-seek-forward-button (invalid)] + expected: FAIL + + [-webkit-appearance: auto] + expected: FAIL + + [appearance: relevancy-level-indicator (invalid)] + expected: FAIL + + [appearance: listitem (invalid)] + expected: FAIL + + [appearance: scrollbarbutton-down (invalid)] + expected: FAIL + + [appearance: scalethumb-vertical (invalid)] + expected: FAIL + + [appearance: scrollbarbutton-up (invalid)] + expected: FAIL + + [-webkit-appearance: scalethumbend (invalid)] + expected: FAIL + + [appearance: tabpanel (invalid)] + expected: FAIL + + [appearance: sliderthumb-vertical (invalid)] + expected: FAIL + + [appearance: button-arrow-down (invalid)] + expected: FAIL + + [appearance: textarea] + expected: FAIL + + [appearance: menulist-textfield] + expected: FAIL + + [appearance: number-input (invalid)] + expected: FAIL + + [appearance: tabpanels (invalid)] + expected: FAIL + + [-webkit-appearance: range-thumb (invalid)] + expected: FAIL + + [-webkit-appearance: inner-spin-button (invalid)] + expected: FAIL + + [appearance: -moz-win-communicationstext (invalid)] + expected: FAIL + + [appearance: treeheadercell (invalid)] + expected: FAIL + + [appearance: inner-spin-button (invalid)] + expected: FAIL + + [appearance: tab (invalid)] + expected: FAIL + + [appearance: scrollbarthumb-vertical (invalid)] + expected: FAIL + + [appearance: scalethumb-horizontal (invalid)] + expected: FAIL + + [appearance: media-exit-fullscreen-button (invalid)] + expected: FAIL + + [appearance: color-well (invalid)] + expected: FAIL + + [appearance: media-sliderthumb (invalid)] + expected: FAIL + + [appearance: media-fullscreen-volume-slider (invalid)] + expected: FAIL + + [appearance: media-current-time-display (invalid)] + expected: FAIL + + [-webkit-appearance: listitem (invalid)] + expected: FAIL + + [appearance: separator (invalid)] + expected: FAIL + + [appearance: dualbutton (invalid)] + expected: FAIL + + [appearance: bogus-button (invalid)] + expected: FAIL + + [appearance: searchfield-decoration (invalid)] + expected: FAIL + + [appearance: scalethumbend (invalid)] + expected: FAIL + + [appearance: -moz-win-browsertabbar-toolbox (invalid)] + expected: FAIL + + [appearance: menupopup (invalid)] + expected: FAIL + + [appearance: checkmenuitem (invalid)] + expected: FAIL + + [appearance: caret] + expected: FAIL + + [appearance: radio-label (invalid)] + expected: FAIL + + [appearance: progress-bar] + expected: FAIL + + [appearance: menulist-text] + expected: FAIL + + [appearance: button-focus (invalid)] + expected: FAIL + + [appearance: -moz-window-button-close (invalid)] + expected: FAIL + + [appearance: listbox] + expected: FAIL + + [appearance: media-volume-slider-mute-button (invalid)] + expected: FAIL + + [appearance: checkbox-container (invalid)] + expected: FAIL + + [appearance: button] + expected: FAIL + + [appearance: progresschunk-vertical (invalid)] + expected: FAIL + + [appearance: treetwisty (invalid)] + expected: FAIL + + [-webkit-appearance: scrollbartrack-horizontal (invalid)] + expected: FAIL + + [-webkit-appearance: scalethumbtick (invalid)] + expected: FAIL + + [-webkit-appearance: push-button] + expected: FAIL + + [appearance: menuarrow (invalid)] + expected: FAIL + + [appearance: scrollbartrack-vertical (invalid)] + expected: FAIL + + [appearance: treeitem (invalid)] + expected: FAIL + + [appearance: media-play-button (invalid)] + expected: FAIL + + [appearance: searchfield] + expected: FAIL + + [appearance: rating-level-indicator (invalid)] + expected: FAIL + + [appearance: -moz-window-frame-right (invalid)] + expected: FAIL + + [appearance: spinner-downbutton (invalid)] + expected: FAIL + + [appearance: splitter (invalid)] + expected: FAIL + + [appearance: media-controls-background (invalid)] + expected: FAIL + + [appearance: square-button] + expected: FAIL + + [appearance: resizer (invalid)] + expected: FAIL + + [appearance: -moz-win-borderless-glass (invalid)] + expected: FAIL + + [appearance: toolbox (invalid)] + expected: FAIL + + [appearance: media-enter-fullscreen-button (invalid)] + expected: FAIL + + [appearance: statusbarpanel (invalid)] + expected: FAIL + + [appearance: -moz-window-titlebar-maximized (invalid)] + expected: FAIL + + [appearance: media-controls-light-bar-background (invalid)] + expected: FAIL + + [appearance: push-button] + expected: FAIL + + [appearance: treetwistyopen (invalid)] + expected: FAIL + + [appearance: progress-bar-value (invalid)] + expected: FAIL + + [appearance: scrollbarbutton-right (invalid)] + expected: FAIL + + [appearance: borderless-attachment (invalid)] + expected: FAIL + + [appearance: media-controls-fullscreen-background (invalid)] + expected: FAIL + + [appearance: treeheader (invalid)] + expected: FAIL + + [appearance: slider-horizontal] + expected: FAIL + + [appearance: checkbox-label (invalid)] + expected: FAIL + + [appearance: -apple-pay-button (invalid)] + expected: FAIL + + [-webkit-appearance: progressbar-vertical (invalid)] + expected: FAIL + + [appearance: -moz-window-button-box (invalid)] + expected: FAIL + + [appearance: spinner-upbutton (invalid)] + expected: FAIL + + [appearance: groupbox (invalid)] + expected: FAIL + + [appearance: snapshotted-plugin-overlay (invalid)] + expected: FAIL + + [appearance: discrete-capacity-level-indicator (invalid)] + expected: FAIL + + [appearance: media-volume-slider-container (invalid)] + expected: FAIL + + [appearance: caps-lock-indicator (invalid)] + expected: FAIL + + [-webkit-appearance: scrollbarthumb-horizontal (invalid)] + expected: FAIL + + [appearance: auto] + expected: FAIL + + [appearance: progressbar-vertical (invalid)] + expected: FAIL + + [appearance: tooltip (invalid)] + expected: FAIL + + [appearance: button-arrow-previous (invalid)] + expected: FAIL + + [appearance: toolbarbutton (invalid)] + expected: FAIL + + [appearance: searchfield-cancel-button (invalid)] + expected: FAIL + + [appearance: -moz-win-exclude-glass (invalid)] + expected: FAIL + + [appearance: media-return-to-realtime-button (invalid)] + expected: FAIL + + [-webkit-appearance: meterbar (invalid)] + expected: FAIL + + [-webkit-appearance: slider-horizontal] + expected: FAIL + + [appearance: -moz-window-frame-left (invalid)] + expected: FAIL + + [-webkit-appearance: scalethumb-vertical (invalid)] + expected: FAIL + + [appearance: media-toggle-closed-captions-button (invalid)] + expected: FAIL + + [appearance: checkbox] + expected: FAIL + + [appearance: textfield-multiline (invalid)] + expected: FAIL + + [appearance: treeline (invalid)] + expected: FAIL + + [appearance: attachment (invalid)] + expected: FAIL + + [appearance: none] + expected: FAIL + + [appearance: searchfield-results-button (invalid)] + expected: FAIL + + [appearance: searchfield-results-decoration (invalid)] + expected: FAIL + + [appearance: radiomenuitem (invalid)] + expected: FAIL + + [appearance: progresschunk (invalid)] + expected: FAIL + + [appearance: toolbar (invalid)] + expected: FAIL + + [appearance: menulist] + expected: FAIL + + [-webkit-appearance: scalethumbstart (invalid)] + expected: FAIL + + [appearance: treeview (invalid)] + expected: FAIL + + [appearance: toolbargripper (invalid)] + expected: FAIL + + [appearance: slider-vertical (invalid)] + expected: FAIL + + [-webkit-appearance: scale-vertical (invalid)] + expected: FAIL + + [appearance: sheet (invalid)] + expected: FAIL + + [appearance: menuimage (invalid)] + expected: FAIL + + [appearance: media-rewind-button (invalid)] + expected: FAIL + + [appearance: menuseparator (invalid)] + expected: FAIL + + [appearance: list-button (invalid)] + expected: FAIL + + [appearance: listitem] + expected: FAIL + + [-webkit-appearance: scalethumb-horizontal (invalid)] + expected: FAIL + + [-webkit-appearance: number-input (invalid)] + expected: FAIL + + [-webkit-appearance: scrollbarthumb-vertical (invalid)] + expected: FAIL + + [appearance: -moz-window-button-maximize (invalid)] + expected: FAIL + + [appearance: scale-horizontal (invalid)] + expected: FAIL + + [appearance: button-arrow-up (invalid)] + expected: FAIL + + [appearance: media-controls-dark-bar-background (invalid)] + expected: FAIL + + [appearance: menuitemtext (invalid)] + expected: FAIL + + [appearance: -moz-window-titlebar (invalid)] + expected: FAIL + + [appearance: menubar (invalid)] + expected: FAIL + + [appearance: tab-scroll-arrow-back (invalid)] + expected: FAIL + + [appearance: menuradio (invalid)] + expected: FAIL + + [appearance: range-thumb (invalid)] + expected: FAIL + + [appearance: -moz-window-button-box-maximized (invalid)] + expected: FAIL + + [appearance: media-mute-button (invalid)] + expected: FAIL + + [appearance: textfield] + expected: FAIL + + [appearance: meterbar (invalid)] + expected: FAIL + + [-moz-appearance (should not be supported)] + expected: FAIL + + [appearance: default-button (invalid)] + expected: FAIL + + [appearance: media-fullscreen-volume-slider-thumb (invalid)] + expected: FAIL + + [appearance: media-overlay-play-button (invalid)] + expected: FAIL + + [appearance: button-bevel] + expected: FAIL + + [appearance: scalethumbtick (invalid)] + expected: FAIL + + [appearance: radio] + expected: FAIL + + [appearance: -moz-win-media-toolbox (invalid)] + expected: FAIL + + [appearance: progressbar (invalid)] + expected: FAIL + + [appearance: media-slider (invalid)] + expected: FAIL + + [appearance: scalethumbstart (invalid)] + expected: FAIL + + [-webkit-appearance: range (invalid)] + expected: FAIL + + [appearance: spinner-textfield (invalid)] + expected: FAIL + + [appearance: spinner (invalid)] + expected: FAIL + + [appearance: treeheadersortarrow (invalid)] + expected: FAIL + + [appearance: -moz-win-glass (invalid)] + expected: FAIL + + [appearance: meter] + expected: FAIL + + [appearance: image-controls-button (invalid)] + expected: FAIL + + [appearance: -moz-window-button-minimize (invalid)] + expected: FAIL + + [appearance: scrollbartrack-horizontal (invalid)] + expected: FAIL + + [appearance: sliderthumb-horizontal (invalid)] + expected: FAIL + + [appearance: menuitem (invalid)] + expected: FAIL + + [appearance: scrollbarthumb-horizontal (invalid)] + expected: FAIL + + [-webkit-appearance: scrollbartrack-vertical (invalid)] + expected: FAIL + + [appearance: range (invalid)] + expected: FAIL + + [appearance: media-volume-sliderthumb (invalid)] + expected: FAIL + + [-webkit-appearance: textfield-multiline (invalid)] + expected: FAIL + + [appearance: -moz-window-frame-bottom (invalid)] + expected: FAIL + + [appearance: -moz-win-communications-toolbox (invalid)] + expected: FAIL + + [appearance: tab-scroll-arrow-forward (invalid)] + expected: FAIL + + [-webkit-appearance: scale-horizontal (invalid)] + expected: FAIL + + [-webkit-appearance: -moz-window-frame-bottom (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menuseparator (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-volume-slider-container (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: attachment (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-win-borderless-glass (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-exit-fullscreen-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: sliderthumb-horizontal (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menulist-text] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: button-arrow-previous (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: statusbar (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: list-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: radio-container (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menupopup (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: discrete-capacity-level-indicator (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: button] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: scrollbarbutton-left (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: checkmenuitem (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: toolbox (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: toolbarbutton (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: tab-scroll-arrow-back (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: tab (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: color-well (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: treeheader (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: splitter (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: listbox] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: image-controls-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-win-exclude-glass (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -apple-pay-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: button-bevel] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-button-minimize (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: treeheadersortarrow (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: snapshotted-plugin-overlay (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: spinner-textfield (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: sheet (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: treeline (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-controls-background (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: searchfield-decoration (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-frame-left (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: toolbar (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: spinner-upbutton (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-win-communicationstext (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: checkbox] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-button-close (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-rewind-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: progresschunk (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: rating-level-indicator (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: bogus-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-controls-fullscreen-background (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: treeheadercell (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: scrollbarbutton-up (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-seek-forward-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: caret] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: relevancy-level-indicator (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-current-time-display (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: treetwistyopen (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: radiomenuitem (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: meterchunk (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: toolbarbutton-dropdown (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-titlebar (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: default-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-sliderthumb (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menulist] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: button-arrow-down (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-controls-light-bar-background (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-win-communications-toolbox (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: caps-lock-indicator (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: listitem] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: resizer (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: resizerpanel (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: dualbutton (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: searchfield-cancel-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: textarea] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: tab-scroll-arrow-forward (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: treetwisty (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: radio-label (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-button-box (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: tabpanel (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menuitemtext (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: button-arrow-up (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: searchfield] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: toolbargripper (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-seek-back-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: button-focus (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-volume-slider-mute-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-fullscreen-volume-slider (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: scrollbarbutton-right (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-win-glass (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: textfield] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: spinner (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-button-restore (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: spinner-downbutton (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: progresschunk-vertical (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: radio] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-time-remaining-display (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-button-maximize (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-win-browsertabbar-toolbox (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: separator (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-win-media-toolbox (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: sliderthumb-vertical (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: tooltip (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: button-arrow-next (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-volume-slider (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-return-to-realtime-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: scrollbarbutton-down (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: checkbox-container (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-toggle-closed-captions-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: searchfield-results-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-overlay-play-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: progress-bar-value (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: checkbox-label (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: borderless-attachment (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menubar (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menuimage (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menuarrow (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: statusbarpanel (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: tabpanels (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-controls-dark-bar-background (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-frame-right (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-mute-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: treeview (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: treeitem (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menulist-button] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-enter-fullscreen-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-fullscreen-volume-slider-thumb (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: continuous-capacity-level-indicator (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menulist-textfield] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: groupbox (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: meter] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menucheckbox (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: searchfield-results-decoration (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-titlebar-maximized (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menuradio (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: -moz-window-button-box-maximized (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: slider-vertical (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: progress-bar] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-slider (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-volume-sliderthumb (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: menuitem (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [-webkit-appearance: media-play-button (invalid)] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + diff --git a/testing/web-platform/meta/css/css-values/ic-unit-008.html.ini b/testing/web-platform/meta/css/css-values/ic-unit-008.html.ini new file mode 100644 index 000000000000..027af6d19c9d --- /dev/null +++ b/testing/web-platform/meta/css/css-values/ic-unit-008.html.ini @@ -0,0 +1,2 @@ +[ic-unit-008.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-values/ic-unit-009.html.ini b/testing/web-platform/meta/css/css-values/ic-unit-009.html.ini new file mode 100644 index 000000000000..ec079625a5fc --- /dev/null +++ b/testing/web-platform/meta/css/css-values/ic-unit-009.html.ini @@ -0,0 +1,2 @@ +[ic-unit-009.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-values/ic-unit-010.html.ini b/testing/web-platform/meta/css/css-values/ic-unit-010.html.ini new file mode 100644 index 000000000000..ed3149ae20c9 --- /dev/null +++ b/testing/web-platform/meta/css/css-values/ic-unit-010.html.ini @@ -0,0 +1,2 @@ +[ic-unit-010.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-values/ic-unit-011.html.ini b/testing/web-platform/meta/css/css-values/ic-unit-011.html.ini new file mode 100644 index 000000000000..fc139eb97d57 --- /dev/null +++ b/testing/web-platform/meta/css/css-values/ic-unit-011.html.ini @@ -0,0 +1,2 @@ +[ic-unit-011.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-values/ic-unit-012.html.ini b/testing/web-platform/meta/css/css-values/ic-unit-012.html.ini new file mode 100644 index 000000000000..3c08ad5954fa --- /dev/null +++ b/testing/web-platform/meta/css/css-values/ic-unit-012.html.ini @@ -0,0 +1,2 @@ +[ic-unit-012.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-values/vh-support-atviewport.html.ini b/testing/web-platform/meta/css/css-values/vh-support-atviewport.html.ini new file mode 100644 index 000000000000..9d9d54aebb6f --- /dev/null +++ b/testing/web-platform/meta/css/css-values/vh-support-atviewport.html.ini @@ -0,0 +1,2 @@ +[vh-support-atviewport.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/cssom/CSSStyleSheet-constructable.html.ini b/testing/web-platform/meta/css/cssom/CSSStyleSheet-constructable.html.ini index 1578162f33ca..2aabcbe418eb 100644 --- a/testing/web-platform/meta/css/cssom/CSSStyleSheet-constructable.html.ini +++ b/testing/web-platform/meta/css/cssom/CSSStyleSheet-constructable.html.ini @@ -56,3 +56,6 @@ [Importing a shadow host will not copy shadow root, and also adoptedStyleSheets] expected: FAIL + [Adopting a shadow host will empty adoptedStyleSheets if adopting to a different document] + expected: FAIL + diff --git a/testing/web-platform/meta/css/cssom/cssom-pagerule.html.ini b/testing/web-platform/meta/css/cssom/cssom-pagerule.html.ini new file mode 100644 index 000000000000..bcc665831fa7 --- /dev/null +++ b/testing/web-platform/meta/css/cssom/cssom-pagerule.html.ini @@ -0,0 +1,4 @@ +[cssom-pagerule.html] + [Page selector is initially the empty string] + expected: FAIL + diff --git a/testing/web-platform/meta/css/filter-effects/filter-subregion-01.html.ini b/testing/web-platform/meta/css/filter-effects/filter-subregion-01.html.ini new file mode 100644 index 000000000000..4fce4d6e53c8 --- /dev/null +++ b/testing/web-platform/meta/css/filter-effects/filter-subregion-01.html.ini @@ -0,0 +1,2 @@ +[filter-subregion-01.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/filter-effects/filtered-inline-applies-to-float.html.ini b/testing/web-platform/meta/css/filter-effects/filtered-inline-applies-to-float.html.ini new file mode 100644 index 000000000000..198ae38f80fc --- /dev/null +++ b/testing/web-platform/meta/css/filter-effects/filtered-inline-applies-to-float.html.ini @@ -0,0 +1,7 @@ +[filtered-inline-applies-to-float.html] + expected: + if not debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS + if debug and webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): PASS + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): PASS + FAIL diff --git a/testing/web-platform/meta/css/mediaqueries/prefers-color-scheme.html.ini b/testing/web-platform/meta/css/mediaqueries/prefers-color-scheme.html.ini new file mode 100644 index 000000000000..b04f76984f59 --- /dev/null +++ b/testing/web-platform/meta/css/mediaqueries/prefers-color-scheme.html.ini @@ -0,0 +1,40 @@ +[prefers-color-scheme.html] + [Should be parseable: '(prefers-color-scheme)'] + expected: FAIL + + [Check that no-preference evaluates to false in the boolean context] + expected: FAIL + + [Should be parseable: '(prefers-color-scheme: dark)'] + expected: FAIL + + [Should be parseable: '(prefers-color-scheme: light)'] + expected: FAIL + + [Should be parseable: '(prefers-color-scheme: no-preference)'] + expected: FAIL + + [Should be parseable in JS: '(prefers-color-scheme: dark)'] + expected: FAIL + + [Should be parseable in a CSS stylesheet: '(prefers-color-scheme: light)'] + expected: FAIL + + [Should be parseable in a CSS stylesheet: '(prefers-color-scheme)'] + expected: FAIL + + [Should be parseable in JS: '(prefers-color-scheme: no-preference)'] + expected: FAIL + + [Should be parseable in a CSS stylesheet: '(prefers-color-scheme: dark)'] + expected: FAIL + + [Should be parseable in JS: '(prefers-color-scheme)'] + expected: FAIL + + [Should be parseable in a CSS stylesheet: '(prefers-color-scheme: no-preference)'] + expected: FAIL + + [Should be parseable in JS: '(prefers-color-scheme: light)'] + expected: FAIL + diff --git a/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001b.xhtml.ini b/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001b.xhtml.ini index b421616b6257..618c4e7ccc70 100644 --- a/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001b.xhtml.ini +++ b/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001b.xhtml.ini @@ -1,7 +1,5 @@ [flexbox-justify-content-horiz-001b.xhtml] expected: if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): PASS - FAIL disabled: if os == "android": https://github.com/web-platform-tests/wpt/pull/14965 - diff --git a/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003.xhtml.ini b/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003.xhtml.ini deleted file mode 100644 index 1416bdedf25a..000000000000 --- a/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003.xhtml.ini +++ /dev/null @@ -1,2 +0,0 @@ -[flexbox-justify-content-vert-003.xhtml] - expected: FAIL diff --git a/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html.ini b/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html.ini new file mode 100644 index 000000000000..33fe3d35e506 --- /dev/null +++ b/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html.ini @@ -0,0 +1,2 @@ +[vert-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1.html.ini b/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1.html.ini deleted file mode 100644 index 813f59209005..000000000000 --- a/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[calc-width-table-auto-1.html] - expected: FAIL diff --git a/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1.html.ini b/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1.html.ini deleted file mode 100644 index 5fbe72116468..000000000000 --- a/testing/web-platform/meta/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[calc-width-table-fixed-1.html] - expected: FAIL diff --git a/testing/web-platform/meta/dom/events/Event-dispatch-click.html.ini b/testing/web-platform/meta/dom/events/Event-dispatch-click.html.ini index 2cc82dd080d5..dfec0afafc10 100644 --- a/testing/web-platform/meta/dom/events/Event-dispatch-click.html.ini +++ b/testing/web-platform/meta/dom/events/Event-dispatch-click.html.ini @@ -5,9 +5,6 @@ [pick the first with activation behavior ] expected: FAIL - [pick the first with activation behavior ] - expected: FAIL - [event state during post-click handling] expected: FAIL diff --git a/testing/web-platform/meta/editing/run/delete.html.ini b/testing/web-platform/meta/editing/run/delete.html.ini index a970148c97b1..0b6c9654e1df 100644 --- a/testing/web-platform/meta/editing/run/delete.html.ini +++ b/testing/web-platform/meta/editing/run/delete.html.ini @@ -1010,6 +1010,9 @@ [[["defaultparagraphseparator","p"\],["delete",""\]\] "

    foo

    {

    }bar

    " compare innerHTML] expected: FAIL + [delete - HTML editing conformance tests] + expected: FAIL + [delete.html?3001-4000] [[["stylewithcss","true"\],["defaultparagraphseparator","div"\],["delete",""\]\] "

    foo

    [\]bar" compare innerHTML] diff --git a/testing/web-platform/meta/editing/run/multitest.html.ini b/testing/web-platform/meta/editing/run/multitest.html.ini index 49bd353d90d0..3e4aec3b6100 100644 --- a/testing/web-platform/meta/editing/run/multitest.html.ini +++ b/testing/web-platform/meta/editing/run/multitest.html.ini @@ -2215,3 +2215,6 @@ [[["underline","","first application"\],["underline","","second application"\],["createlink","http://www.google.com/"\],["inserttext","a"\]\] "foo[\]bar" queryCommandState("underline") after] expected: FAIL + [multitest - HTML editing conformance tests] + expected: FAIL + diff --git a/testing/web-platform/meta/encoding/legacy-mb-japanese/euc-jp/__dir__.ini b/testing/web-platform/meta/encoding/legacy-mb-japanese/euc-jp/__dir__.ini deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/testing/web-platform/meta/encoding/legacy-mb-japanese/iso-2022-jp/__dir__.ini b/testing/web-platform/meta/encoding/legacy-mb-japanese/iso-2022-jp/__dir__.ini deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/testing/web-platform/meta/encoding/legacy-mb-tchinese/big5/__dir__.ini b/testing/web-platform/meta/encoding/legacy-mb-tchinese/big5/__dir__.ini deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/testing/web-platform/meta/encoding/streams/decode-utf8.any.js.ini b/testing/web-platform/meta/encoding/streams/decode-utf8.any.js.ini index 89cf7b8e2269..8d66ce5b5005 100644 --- a/testing/web-platform/meta/encoding/streams/decode-utf8.any.js.ini +++ b/testing/web-platform/meta/encoding/streams/decode-utf8.any.js.ini @@ -14,6 +14,12 @@ [an initial empty chunk should be ignored] expected: FAIL + [decoding a transferred Uint8Array chunk should give no output] + expected: FAIL + + [decoding a transferred ArrayBuffer chunk should give no output] + expected: FAIL + [decode-utf8.any.html] [decoding one UTF-8 chunk should give one output string] @@ -28,6 +34,12 @@ [an initial empty chunk should be ignored] expected: FAIL + [decoding a transferred Uint8Array chunk should give no output] + expected: FAIL + + [decoding a transferred ArrayBuffer chunk should give no output] + expected: FAIL + [decode-utf8.any.worker.html] [decoding one UTF-8 chunk should give one output string] @@ -42,6 +54,12 @@ [an initial empty chunk should be ignored] expected: FAIL + [decoding a transferred Uint8Array chunk should give no output] + expected: FAIL + + [decoding a transferred ArrayBuffer chunk should give no output] + expected: FAIL + [decode-utf8.any.serviceworker.html] [decoding one UTF-8 chunk should give one output string] @@ -56,3 +74,9 @@ [an initial empty chunk should be ignored] expected: FAIL + [decoding a transferred Uint8Array chunk should give no output] + expected: FAIL + + [decoding a transferred ArrayBuffer chunk should give no output] + expected: FAIL + diff --git a/testing/web-platform/meta/encrypted-media/clearkey-check-encryption-scheme.https.html.ini b/testing/web-platform/meta/encrypted-media/clearkey-check-encryption-scheme.https.html.ini new file mode 100644 index 000000000000..c4b9e939b0b0 --- /dev/null +++ b/testing/web-platform/meta/encrypted-media/clearkey-check-encryption-scheme.https.html.ini @@ -0,0 +1,13 @@ +[clearkey-check-encryption-scheme.https.html] + [org.w3.clearkey support for "cenc" encryption scheme.] + expected: + if os == "linux": "FAIL" + if os == "win": "FAIL" + if os == "mac": "FAIL" + + [org.w3.clearkey support for "cbcs" encryption scheme.] + expected: + if os == "linux": "FAIL" + if os == "mac": "FAIL" + if os == "win": "FAIL" + diff --git a/testing/web-platform/meta/encrypted-media/clearkey-check-status-for-hdcp.https.html.ini b/testing/web-platform/meta/encrypted-media/clearkey-check-status-for-hdcp.https.html.ini new file mode 100644 index 000000000000..e4bef5d0d94a --- /dev/null +++ b/testing/web-platform/meta/encrypted-media/clearkey-check-status-for-hdcp.https.html.ini @@ -0,0 +1,7 @@ +[clearkey-check-status-for-hdcp.https.html] + [org.w3.clearkey support for empty HDCP version.] + expected: FAIL + + [org.w3.clearkey support for HDCP 1.0.] + expected: FAIL + diff --git a/testing/web-platform/meta/encrypted-media/drm-check-encryption-scheme.https.html.ini b/testing/web-platform/meta/encrypted-media/drm-check-encryption-scheme.https.html.ini new file mode 100644 index 000000000000..6e51fc1547e9 --- /dev/null +++ b/testing/web-platform/meta/encrypted-media/drm-check-encryption-scheme.https.html.ini @@ -0,0 +1,17 @@ +[drm-check-encryption-scheme.https.html] + expected: + if os == "linux": "TIMEOUT" + if os == "mac": "TIMEOUT" + if os == "win": "TIMEOUT" + [drm support for "cenc" encryption scheme.] + expected: + if os == "win": "TIMEOUT" + if os == "linux": "TIMEOUT" + if os == "mac": "TIMEOUT" + + [drm support for "cbcs" encryption scheme.] + expected: + if os == "linux": "NOTRUN" + if os == "win": "NOTRUN" + if os == "mac": "NOTRUN" + diff --git a/testing/web-platform/meta/encrypted-media/drm-check-status-for-hdcp.https.html.ini b/testing/web-platform/meta/encrypted-media/drm-check-status-for-hdcp.https.html.ini new file mode 100644 index 000000000000..b06bb2c64bc7 --- /dev/null +++ b/testing/web-platform/meta/encrypted-media/drm-check-status-for-hdcp.https.html.ini @@ -0,0 +1,19 @@ +[drm-check-status-for-hdcp.https.html] + expected: + if os == "linux": "TIMEOUT" + if os == "mac": "TIMEOUT" + if os == "win": "TIMEOUT" + [drm support for HDCP 1.0.] + expected: + if os == "win": "NOTRUN" + if os == "linux": "NOTRUN" + if os == "mac": "NOTRUN" + if os == "android": "FAIL" + + [drm support for empty HDCP version.] + expected: + if os == "linux": "TIMEOUT" + if os == "win": "TIMEOUT" + if os == "android": "FAIL" + if os == "mac": "TIMEOUT" + diff --git a/testing/web-platform/meta/encrypted-media/encrypted-media-supported-by-feature-policy.tentative.html.ini b/testing/web-platform/meta/encrypted-media/encrypted-media-supported-by-feature-policy.tentative.html.ini new file mode 100644 index 000000000000..95961c01f4ab --- /dev/null +++ b/testing/web-platform/meta/encrypted-media/encrypted-media-supported-by-feature-policy.tentative.html.ini @@ -0,0 +1,4 @@ +[encrypted-media-supported-by-feature-policy.tentative.html] + [document.featurePolicy.features should advertise encrypted-media.] + expected: FAIL + diff --git a/testing/web-platform/meta/event-timing/supported-types.window.js.ini b/testing/web-platform/meta/event-timing/supported-types.window.js.ini new file mode 100644 index 000000000000..ebff18886937 --- /dev/null +++ b/testing/web-platform/meta/event-timing/supported-types.window.js.ini @@ -0,0 +1,4 @@ +[supported-types.window.html] + [supportedEntryTypes contains 'event' and 'firstInput'.] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/experimental-features/layout-animations-disabled-violation-report-js-tentative.html.ini b/testing/web-platform/meta/feature-policy/experimental-features/layout-animations-disabled-violation-report-js-tentative.html.ini index 665ab45e5c96..23b3492f11a2 100644 --- a/testing/web-platform/meta/feature-policy/experimental-features/layout-animations-disabled-violation-report-js-tentative.html.ini +++ b/testing/web-platform/meta/feature-policy/experimental-features/layout-animations-disabled-violation-report-js-tentative.html.ini @@ -15,3 +15,6 @@ [Verify that when 'layout-animations' is disabled, an 'element.animate' API including a keyframe that uses a blocked property generates violation report (inline scripts).] expected: NOTRUN + [Verify 'layout-animations' is not in document's feature list.] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/experimental-features/layout-animations-disabled-violation-report-keyframes-tentative.html.ini b/testing/web-platform/meta/feature-policy/experimental-features/layout-animations-disabled-violation-report-keyframes-tentative.html.ini index 491238444a8d..2517c9015cb0 100644 --- a/testing/web-platform/meta/feature-policy/experimental-features/layout-animations-disabled-violation-report-keyframes-tentative.html.ini +++ b/testing/web-platform/meta/feature-policy/experimental-features/layout-animations-disabled-violation-report-keyframes-tentative.html.ini @@ -6,3 +6,6 @@ [Verify that when 'layout-animations' is disabled, a keyframes which includes a blocked property generates violation report.] expected: TIMEOUT + [Sanity-check: 'layout-animations' is not in document's feature list.] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html.ini new file mode 100644 index 000000000000..39f653ec4c1c --- /dev/null +++ b/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html.ini @@ -0,0 +1,235 @@ +[feature-policy-frame-policy-allowed-for-all.https.sub.html] + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc+ same origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc+ cross origin iframe inherit from header policy.] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-self.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-self.https.sub.html.ini index 080a7ab636dd..ce9a1e3f6d02 100644 --- a/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-self.https.sub.html.ini +++ b/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-self.https.sub.html.ini @@ -10,3 +10,250 @@ [Test frame policy on data: URL origin iframe with allow = "*" and allowfullscreen.] expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on data: URL origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on data: URL origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on data: URL origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin sandboxed iframe with allow="fullscreen".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on data: URL origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on sandboxed srcdoc iframe with allow="fullscreen https://www.web-platform.test:8443".] + expected: FAIL + + [Test frame policy on sandboxed iframe with allow="fullscreen".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on sandboxed iframe with allow="fullscreen 'src'".] + expected: FAIL + + [Test frame policy on cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc sandboxed iframe with allow="fullscreen".] + expected: FAIL + + [Test frame policy on srcdoc + same origin sandboxed iframe with allow="fullscreen".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on data: URL origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on data: URL origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-some.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-some.https.sub.html.ini index 794cd9078d32..7ba77d8c2d94 100644 --- a/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-some.https.sub.html.ini +++ b/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-allowed-for-some.https.sub.html.ini @@ -4,3 +4,322 @@ [Test frame policy on data: URL cross origin iframe with allow = "*" and allowfullscreen.] expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc + another cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on another cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc + another cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + another cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc + another cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + another cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc + another cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "*".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + another cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on another cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + another cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-disallowed-for-all.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-disallowed-for-all.https.sub.html.ini new file mode 100644 index 000000000000..43d74e439077 --- /dev/null +++ b/testing/web-platform/meta/feature-policy/feature-policy-frame-policy-disallowed-for-all.https.sub.html.ini @@ -0,0 +1,235 @@ +[feature-policy-frame-policy-disallowed-for-all.https.sub.html] + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on srcdoc iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self'" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on srcdoc iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'none'".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'none';".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe with allow = "*" and allowfullscreen.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'none'" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on srcdoc + cross origin iframe inherit from header policy.] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and header policy = "Feature-Policy: fullscreen *;".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "'self' https://www.web-platform.test:8443 https://www.example.com" and allowfullscreen.] + expected: FAIL + + [Test frame policy on srcdoc + same origin iframe with allow = "'self'".] + expected: FAIL + + [Test frame policy on data: URL cross origin iframe with allow = "*".] + expected: FAIL + + [Test frame policy on same origin iframe with allow = "*" and header policy = "Feature-Policy: fullscreen 'self';".] + expected: FAIL + + [Test frame policy on cross origin iframe with allow = "'self'".] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html.ini new file mode 100644 index 000000000000..5bbea0b45243 --- /dev/null +++ b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html.ini @@ -0,0 +1,16 @@ +[feature-policy-header-policy-allowed-for-all.https.sub.html] + [Feature-Policy: fullscreen * -- test fullscreen is allowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen * -- test fullscreen is allowed on cross-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen *, iframe.allow = fullscreen 'self'; -- test fullscreen is disallowed on cross-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen *, iframe.allow = fullscreen 'self'; -- test fullscreen is allowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen *NaN] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-header-policy-allowed-for-self.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-allowed-for-self.https.sub.html.ini new file mode 100644 index 000000000000..cca74f9e232a --- /dev/null +++ b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-allowed-for-self.https.sub.html.ini @@ -0,0 +1,16 @@ +[feature-policy-header-policy-allowed-for-self.https.sub.html] + [Feature-Policy: fullscreen 'self' -- test allowlist is [same_origin\]] + expected: FAIL + + [Feature-Policy: fullscreen 'self', iframe.allow = fullscreen 'src'; -- test fullscreen is allowed on cross-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self', iframe.allow = fullscreen 'src'; -- test fullscreen is allowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' -- test fullscreen is disallowed on cross-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' -- test fullscreen is allowed on same-origin subframe] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html.ini new file mode 100644 index 000000000000..c3844dacd636 --- /dev/null +++ b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html.ini @@ -0,0 +1,19 @@ +[feature-policy-header-policy-allowed-for-some.https.sub.html] + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com;, iframe.allow = fullscreen 'none'; -- test fullscreen is disallowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com; -- test fullscreen is disallowed on cross-origin https://www1.web-platform.test:8443/feature-policy/resources/feature-policy-allowedfeatures.html subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com; -- test allowlist is [same_origin, cross_origin, https://www.example.com\]] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com; -- test fullscreen is allowed on cross-origin https://www.web-platform.test:8443/feature-policy/resources/feature-policy-allowedfeatures.html subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com; -- test fullscreen is allowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com;iframe.allow = fullscreen 'none'; -- test fullscreen is disallowed on cross-origin subframe] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-header-policy-declined.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-declined.https.sub.html.ini index aa6c7d740d9d..a23305e77db2 100644 --- a/testing/web-platform/meta/feature-policy/feature-policy-header-policy-declined.https.sub.html.ini +++ b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-declined.https.sub.html.ini @@ -2,3 +2,24 @@ [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com; -- test allowlist is [cross_origin, https://www.example.com\]] expected: FAIL + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com;, iframe.allow = fullscreen https://www.web-platform.test:8443 -- test fullscreen is disallowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com;, iframe.allow = fullscreen 'none'; -- test fullscreen is disallowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com; -- test fullscreen is disallowed on cross-origin https://www1.web-platform.test:8443/feature-policy/resources/feature-policy-allowedfeatures.html subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com;iframe.allow = fullscreen https://www.web-platform.test:8443 -- test fullscreen is allowed on specific cross-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com;iframe.allow = fullscreen 'none'; -- test fullscreen is allowed on specific cross-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com; -- test fullscreen is allowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'self' https://www.web-platform.test:8443 https://www.example.com; -- test fullscreen is allowed on cross-origin https://www.web-platform.test:8443/feature-policy/resources/feature-policy-allowedfeatures.html subframe] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-header-policy-disallowed-for-all.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-disallowed-for-all.https.sub.html.ini new file mode 100644 index 000000000000..0acffc506b47 --- /dev/null +++ b/testing/web-platform/meta/feature-policy/feature-policy-header-policy-disallowed-for-all.https.sub.html.ini @@ -0,0 +1,16 @@ +[feature-policy-header-policy-disallowed-for-all.https.sub.html] + [Feature-Policy: fullscreen 'none' -- test fullscreen is disallowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'none' -- test allowlist is [\]] + expected: FAIL + + [Feature-Policy: fullscreen 'none', iframe.allow = fullscreen 'src'; -- test fullscreen is disallowed on cross-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'none', iframe.allow = fullscreen 'src'; -- test fullscreen is disallowed on same-origin subframe] + expected: FAIL + + [Feature-Policy: fullscreen 'none' -- test fullscreen is disallowed on cross-origin subframe] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-nested-header-policy-allowed-for-all.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-nested-header-policy-allowed-for-all.https.sub.html.ini new file mode 100644 index 000000000000..0d0b744764b8 --- /dev/null +++ b/testing/web-platform/meta/feature-policy/feature-policy-nested-header-policy-allowed-for-all.https.sub.html.ini @@ -0,0 +1,19 @@ +[feature-policy-nested-header-policy-allowed-for-all.https.sub.html] + [Test nested header policy with remote iframe on policy "fullscreen *"] + expected: FAIL + + [Test nested header policy with local iframe on policy "fullscreen *"] + expected: FAIL + + [Test nested header policy with remote iframe on policy "fullscreen 'self'"] + expected: FAIL + + [Test nested header policy with local iframe on policy "fullscreen 'self'"] + expected: FAIL + + [Test nested header policy with local iframe on policy "fullscreen 'none'"] + expected: FAIL + + [Test nested header policy with remote iframe on policy "fullscreen 'none'"] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-nested-header-policy-allowed-for-self.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-nested-header-policy-allowed-for-self.https.sub.html.ini new file mode 100644 index 000000000000..d5d938c1b355 --- /dev/null +++ b/testing/web-platform/meta/feature-policy/feature-policy-nested-header-policy-allowed-for-self.https.sub.html.ini @@ -0,0 +1,19 @@ +[feature-policy-nested-header-policy-allowed-for-self.https.sub.html] + [Test nested header policy with remote iframe on policy "fullscreen *"] + expected: FAIL + + [Test nested header policy with local iframe on policy "fullscreen *"] + expected: FAIL + + [Test nested header policy with remote iframe on policy "fullscreen 'self'"] + expected: FAIL + + [Test nested header policy with local iframe on policy "fullscreen 'self'"] + expected: FAIL + + [Test nested header policy with local iframe on policy "fullscreen 'none'"] + expected: FAIL + + [Test nested header policy with remote iframe on policy "fullscreen 'none'"] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/feature-policy-nested-header-policy-disallowed-for-all.https.sub.html.ini b/testing/web-platform/meta/feature-policy/feature-policy-nested-header-policy-disallowed-for-all.https.sub.html.ini new file mode 100644 index 000000000000..147ffd111edf --- /dev/null +++ b/testing/web-platform/meta/feature-policy/feature-policy-nested-header-policy-disallowed-for-all.https.sub.html.ini @@ -0,0 +1,19 @@ +[feature-policy-nested-header-policy-disallowed-for-all.https.sub.html] + [Test nested header policy with remote iframe on policy "fullscreen 'self'".] + expected: FAIL + + [Test nested header policy with local iframe on policy "fullscreen 'self'".] + expected: FAIL + + [Test nested header policy with local iframe on policy "fullscreen *".] + expected: FAIL + + [Test nested header policy with local iframe on policy "fullscreen 'none'".] + expected: FAIL + + [Test nested header policy with remote iframe on policy "fullscreen 'none'".] + expected: FAIL + + [Test nested header policy with remote iframe on policy "fullscreen *".] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/idlharness.window.js.ini b/testing/web-platform/meta/feature-policy/idlharness.window.js.ini new file mode 100644 index 000000000000..4c2325d05a6d --- /dev/null +++ b/testing/web-platform/meta/feature-policy/idlharness.window.js.ini @@ -0,0 +1,31 @@ +[idlharness.window.html] + [HTMLIFrameElement interface: attribute featurePolicy] + expected: FAIL + + [Document interface: attribute featurePolicy] + expected: FAIL + + [Document interface: document must inherit property "featurePolicy" with the proper type] + expected: FAIL + + [FeaturePolicy interface: document.featurePolicy must inherit property "allowsFeature(DOMString, DOMString)" with the proper type] + expected: FAIL + + [FeaturePolicy interface: document.featurePolicy must inherit property "getAllowlistForFeature(DOMString)" with the proper type] + expected: FAIL + + [FeaturePolicy interface: document.featurePolicy must inherit property "allowedFeatures()" with the proper type] + expected: FAIL + + [FeaturePolicy interface: calling getAllowlistForFeature(DOMString) on document.featurePolicy with too few arguments must throw TypeError] + expected: FAIL + + [Stringification of document.featurePolicy] + expected: FAIL + + [FeaturePolicy interface: calling allowsFeature(DOMString, DOMString) on document.featurePolicy with too few arguments must throw TypeError] + expected: FAIL + + [FeaturePolicy interface: document.featurePolicy must inherit property "features()" with the proper type] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/payment-supported-by-feature-policy.tentative.html.ini b/testing/web-platform/meta/feature-policy/payment-supported-by-feature-policy.tentative.html.ini new file mode 100644 index 000000000000..934359e3ee68 --- /dev/null +++ b/testing/web-platform/meta/feature-policy/payment-supported-by-feature-policy.tentative.html.ini @@ -0,0 +1,4 @@ +[payment-supported-by-feature-policy.tentative.html] + [document.featurePolicy.features should advertise payment.] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/picture-in-picture-supported-by-feature-policy.html.ini b/testing/web-platform/meta/feature-policy/picture-in-picture-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..9993cee3360c --- /dev/null +++ b/testing/web-platform/meta/feature-policy/picture-in-picture-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[picture-in-picture-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise picture-in-picture.] + expected: FAIL + diff --git a/testing/web-platform/meta/feature-policy/reporting/legacy-image-formats-reporting.html.ini b/testing/web-platform/meta/feature-policy/reporting/legacy-image-formats-reporting.html.ini new file mode 100644 index 000000000000..dab507ff7602 --- /dev/null +++ b/testing/web-platform/meta/feature-policy/reporting/legacy-image-formats-reporting.html.ini @@ -0,0 +1,5 @@ +[legacy-image-formats-reporting.html] + expected: TIMEOUT + [Unsized-media Report Format] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/feature-policy/reporting/unoptimized-images-reporting.html.ini b/testing/web-platform/meta/feature-policy/reporting/unoptimized-images-reporting.html.ini new file mode 100644 index 000000000000..4fff6832567e --- /dev/null +++ b/testing/web-platform/meta/feature-policy/reporting/unoptimized-images-reporting.html.ini @@ -0,0 +1,5 @@ +[unoptimized-images-reporting.html] + expected: TIMEOUT + [unoptimized-images Report Format] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/fetch/api/cors/__dir__.ini b/testing/web-platform/meta/fetch/api/cors/__dir__.ini index 8e88d68a5d5c..3dfa2e56792f 100644 --- a/testing/web-platform/meta/fetch/api/cors/__dir__.ini +++ b/testing/web-platform/meta/fetch/api/cors/__dir__.ini @@ -1,2 +1,2 @@ -lsan-allowed: [Alloc, Create, EntrySlotOrCreate, FetchDriverObserver, Malloc, NewPage, Realloc, alloc_system::platform::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$alloc_system..System$GT$::alloc, alloc_system::platform::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$alloc_system..System$GT$::realloc, mozilla::SchedulerGroup::CreateEventTargetFor, mozilla::ThrottledEventQueue::Create, mozilla::dom::ChromeUtils::GenerateQI, mozilla::dom::InternalRequest::GetRequestConstructorCopy, mozilla::dom::Performance::CreateForMainThread, mozilla::dom::PerformanceMainThread::CreateNavigationTimingEntry, mozilla::dom::PerformanceStorageWorker::Create, mozilla::dom::PromiseWorkerProxy::Create, mozilla::dom::WorkerCSPEventListener::Create, mozilla::dom::WorkerFetchResolver::Create, mozilla::net::nsStandardURL::TemplatedMutator] +lsan-allowed: [Alloc, Create, EntrySlotOrCreate, FetchDriverObserver, Malloc, NewPage, Realloc, alloc_system::platform::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$alloc_system..System$GT$::alloc, alloc_system::platform::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$alloc_system..System$GT$::realloc, mozilla::SchedulerGroup::CreateEventTargetFor, mozilla::ThrottledEventQueue::Create, mozilla::dom::ChromeUtils::GenerateQI, mozilla::dom::InternalRequest::GetRequestConstructorCopy, mozilla::dom::Performance::CreateForMainThread, mozilla::dom::PerformanceMainThread::CreateNavigationTimingEntry, mozilla::dom::PerformanceStorageWorker::Create, mozilla::dom::PromiseWorkerProxy::Create, mozilla::dom::WorkerCSPEventListener::Create, mozilla::dom::WorkerFetchResolver::Create, mozilla::net::nsStandardURL::TemplatedMutator, std::sys::unix::alloc::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$std..alloc..System$GT$::alloc, std::sys::unix::alloc::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$std..alloc..System$GT$::realloc] leak-threshold: [tab:307200] diff --git a/testing/web-platform/meta/fetch/cross-origin-resource-policy/fetch.any.js.ini b/testing/web-platform/meta/fetch/cross-origin-resource-policy/fetch.any.js.ini index 4e3b8aca90a0..c6ad5b558690 100644 --- a/testing/web-platform/meta/fetch/cross-origin-resource-policy/fetch.any.js.ini +++ b/testing/web-platform/meta/fetch/cross-origin-resource-policy/fetch.any.js.ini @@ -17,6 +17,9 @@ [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' redirect response header.] expected: FAIL + [Cross-scheme (HTTP to HTTPS) no-cors fetch to a same-site URL with a 'Cross-Origin-Resource-Policy: same-site' response header.] + expected: FAIL + [fetch.any.html] [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header.] @@ -37,6 +40,9 @@ [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' redirect response header.] expected: FAIL + [Cross-scheme (HTTP to HTTPS) no-cors fetch to a same-site URL with a 'Cross-Origin-Resource-Policy: same-site' response header.] + expected: FAIL + [fetch.any.serviceworker.html] [Valid cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-site' response header.] @@ -77,3 +83,6 @@ [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-site' response header.] expected: FAIL + [Cross-scheme (HTTP to HTTPS) no-cors fetch to a same-site URL with a 'Cross-Origin-Resource-Policy: same-site' response header.] + expected: FAIL + diff --git a/testing/web-platform/meta/fetch/cross-origin-resource-policy/fetch.https.any.js.ini b/testing/web-platform/meta/fetch/cross-origin-resource-policy/fetch.https.any.js.ini new file mode 100644 index 000000000000..13a8e6e0db1a --- /dev/null +++ b/testing/web-platform/meta/fetch/cross-origin-resource-policy/fetch.https.any.js.ini @@ -0,0 +1,55 @@ +[fetch.https.any.html] + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header after a redirection.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' redirect response header.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-site' response header.] + expected: FAIL + + +[fetch.https.any.worker.html] + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header after a redirection.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' redirect response header.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-site' response header.] + expected: FAIL + + +[fetch.https.any.sharedworker.html] + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header after a redirection.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' redirect response header.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-site' response header.] + expected: FAIL + + +[fetch.https.any.serviceworker.html] + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header after a redirection.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' redirect response header.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header.] + expected: FAIL + + [Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-site' response header.] + expected: FAIL + diff --git a/testing/web-platform/meta/fetch/http-cache/post-patch.html.ini b/testing/web-platform/meta/fetch/http-cache/post-patch.html.ini new file mode 100644 index 000000000000..4e150db256a8 --- /dev/null +++ b/testing/web-platform/meta/fetch/http-cache/post-patch.html.ini @@ -0,0 +1,7 @@ +[post-patch.html] + [HTTP cache uses content after POST request with response containing Content-Location and cache-allowing header] + expected: FAIL + + [HTTP cache uses content after PATCH request with response containing Content-Location and cache-allowing header] + expected: FAIL + diff --git a/testing/web-platform/meta/fetch/stale-while-revalidate/stale-css.tentative.html.ini b/testing/web-platform/meta/fetch/stale-while-revalidate/stale-css.tentative.html.ini new file mode 100644 index 000000000000..1c8951b7a672 --- /dev/null +++ b/testing/web-platform/meta/fetch/stale-while-revalidate/stale-css.tentative.html.ini @@ -0,0 +1,5 @@ +[stale-css.tentative.html] + expected: ERROR + [Cache returns stale resource] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/fetch/stale-while-revalidate/stale-image.tentative.html.ini b/testing/web-platform/meta/fetch/stale-while-revalidate/stale-image.tentative.html.ini new file mode 100644 index 000000000000..3cafa2962f47 --- /dev/null +++ b/testing/web-platform/meta/fetch/stale-while-revalidate/stale-image.tentative.html.ini @@ -0,0 +1,5 @@ +[stale-image.tentative.html] + expected: ERROR + [Cache returns stale resource] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/fetch/stale-while-revalidate/stale-script.tentative.html.ini b/testing/web-platform/meta/fetch/stale-while-revalidate/stale-script.tentative.html.ini new file mode 100644 index 000000000000..ee451fc9a4d5 --- /dev/null +++ b/testing/web-platform/meta/fetch/stale-while-revalidate/stale-script.tentative.html.ini @@ -0,0 +1,4 @@ +[stale-script.tentative.html] + [Cache returns stale resource] + expected: FAIL + diff --git a/testing/web-platform/meta/geolocation-sensor/GeolocationSensor-supported-by-feature-policy.html.ini b/testing/web-platform/meta/geolocation-sensor/GeolocationSensor-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..d4d1b0b56e5b --- /dev/null +++ b/testing/web-platform/meta/geolocation-sensor/GeolocationSensor-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[GeolocationSensor-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise geolocation.] + expected: FAIL + diff --git a/testing/web-platform/meta/gyroscope/Gyroscope-supported-by-feature-policy.html.ini b/testing/web-platform/meta/gyroscope/Gyroscope-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..0bdc6911ced7 --- /dev/null +++ b/testing/web-platform/meta/gyroscope/Gyroscope-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[Gyroscope-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise gyroscope.] + expected: FAIL + diff --git a/testing/web-platform/meta/html/dom/interfaces.https.html.ini b/testing/web-platform/meta/html/dom/interfaces.https.html.ini index 55623514d367..f5dc45165287 100644 --- a/testing/web-platform/meta/html/dom/interfaces.https.html.ini +++ b/testing/web-platform/meta/html/dom/interfaces.https.html.ini @@ -381,6 +381,31 @@ if nightly_build: FAIL bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1510437 + [Window interface: attribute onformdata] + expected: FAIL + + [Window interface: window must inherit property "onformdata" with the proper type] + expected: FAIL + + [Document interface: new Document() must inherit property "onformdata" with the proper type] + expected: FAIL + + [Document interface: iframe.contentDocument must inherit property "onformdata" with the proper type] + expected: FAIL + + [Document interface: attribute onformdata] + expected: FAIL + + [Window interface: window must inherit property "queueMicrotask(VoidFunction)" with the proper type] + expected: FAIL + + [Window interface: calling queueMicrotask(VoidFunction) on window with too few arguments must throw TypeError] + expected: FAIL + + [Window interface: operation queueMicrotask(VoidFunction)] + expected: FAIL + + [interfaces.https.html?include=HTML.*] [HTMLAllCollection must be primary interface of document.all] expected: FAIL @@ -658,6 +683,24 @@ [HTMLFrameSetElement interface: document.createElement("frameset") must inherit property "onunload" with the proper type] disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1505149 + [HTMLElement interface: attribute onformdata] + expected: FAIL + + [HTMLElement interface: document.createElement("noscript") must inherit property "onformdata" with the proper type] + expected: FAIL + + [HTMLElement interface: document.createElement("noscript") must inherit property "autocapitalize" with the proper type] + expected: FAIL + + [HTMLElement interface: attribute enterKeyHint] + expected: FAIL + + [HTMLElement interface: document.createElement("noscript") must inherit property "enterKeyHint" with the proper type] + expected: FAIL + + [HTMLElement interface: attribute autocapitalize] + expected: FAIL + [interfaces.https.html?exclude=(Document|Window|HTML.*)] [AudioTrackList interface: existence and properties of interface object] @@ -1296,3 +1339,87 @@ [ImageData interface: new ImageData(10, 10) must inherit property "data" with the proper type] expected: FAIL + [FormDataEvent interface object name] + expected: FAIL + + [FormDataEvent interface: existence and properties of interface prototype object's "constructor" property] + expected: FAIL + + [FormDataEvent interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [FormDataEvent interface: attribute formData] + expected: FAIL + + [Stringification of new FormDataEvent("formdata", { formData: new FormData() })] + expected: FAIL + + [FormDataEvent interface: new FormDataEvent("formdata", { formData: new FormData() }) must inherit property "formData" with the proper type] + expected: FAIL + + [FormDataEvent interface: existence and properties of interface object] + expected: FAIL + + [FormDataEvent interface object length] + expected: FAIL + + [FormDataEvent must be primary interface of new FormDataEvent("formdata", { formData: new FormData() })] + expected: FAIL + + [FormDataEvent interface: existence and properties of interface prototype object] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: operation measureText(DOMString)] + expected: FAIL + + [CanvasRenderingContext2D interface: document.createElement("canvas").getContext("2d") must inherit property "getContextAttributes()" with the proper type] + expected: FAIL + + [External interface: existence and properties of interface prototype object's "constructor" property] + expected: FAIL + + [External must be primary interface of window.external] + expected: FAIL + + [CanvasRenderingContext2D interface: operation getContextAttributes()] + expected: FAIL + + [External interface object name] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: operation fillText(DOMString, unrestricted double, unrestricted double, unrestricted double)] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: attribute direction] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: attribute textAlign] + expected: FAIL + + [External interface: operation AddSearchProvider()] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: attribute font] + expected: FAIL + + [External interface: operation IsSearchProviderInstalled()] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: operation strokeText(DOMString, unrestricted double, unrestricted double, unrestricted double)] + expected: FAIL + + [External interface: existence and properties of interface prototype object] + expected: FAIL + + [External interface: existence and properties of interface object] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: attribute textBaseline] + expected: FAIL + + [External interface object length] + expected: FAIL + + [External interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + diff --git a/testing/web-platform/meta/html/dom/interfaces.worker.js.ini b/testing/web-platform/meta/html/dom/interfaces.worker.js.ini index 12dd18a6c7a1..35a46e9009e1 100644 --- a/testing/web-platform/meta/html/dom/interfaces.worker.js.ini +++ b/testing/web-platform/meta/html/dom/interfaces.worker.js.ini @@ -428,3 +428,129 @@ [Test driver] expected: FAIL + [OffscreenCanvasRenderingContext2D interface: operation measureText(DOMString)] + expected: FAIL + + [PromiseRejectionEvent interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: operation strokeText(DOMString, unrestricted double, unrestricted double, unrestricted double)] + expected: FAIL + + [TextMetrics interface object length] + expected: FAIL + + [TextMetrics interface: attribute emHeightAscent] + expected: FAIL + + [DedicatedWorkerGlobalScope interface: calling requestAnimationFrame(FrameRequestCallback) on self with too few arguments must throw TypeError] + expected: FAIL + + [TextMetrics interface: attribute ideographicBaseline] + expected: FAIL + + [WorkerGlobalScope interface: self must inherit property "queueMicrotask(VoidFunction)" with the proper type] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [WorkerGlobalScope interface: operation queueMicrotask(VoidFunction)] + expected: FAIL + + [TextMetrics interface: attribute actualBoundingBoxAscent] + expected: FAIL + + [CanvasPattern interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [TextMetrics interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [WorkerGlobalScope interface: calling queueMicrotask(VoidFunction) on self with too few arguments must throw TypeError] + expected: FAIL + + [DedicatedWorkerGlobalScope interface: self must inherit property "cancelAnimationFrame(unsigned long)" with the proper type] + expected: FAIL + + [SharedWorker interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [TextMetrics interface: attribute emHeightDescent] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: operation fillText(DOMString, unrestricted double, unrestricted double, unrestricted double)] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: attribute direction] + expected: FAIL + + [TextMetrics interface: attribute actualBoundingBoxDescent] + expected: FAIL + + [TextMetrics interface: attribute actualBoundingBoxLeft] + expected: FAIL + + [TextMetrics interface: existence and properties of interface object] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: attribute font] + expected: FAIL + + [DedicatedWorkerGlobalScope interface: calling cancelAnimationFrame(unsigned long) on self with too few arguments must throw TypeError] + expected: FAIL + + [TextMetrics interface: attribute hangingBaseline] + expected: FAIL + + [TextMetrics interface: attribute width] + expected: FAIL + + [Path2D interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [TextMetrics interface: attribute actualBoundingBoxRight] + expected: FAIL + + [TextMetrics interface: attribute fontBoundingBoxAscent] + expected: FAIL + + [TextMetrics interface: attribute alphabeticBaseline] + expected: FAIL + + [TextMetrics interface: existence and properties of interface prototype object] + expected: FAIL + + [CanvasGradient interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [TextMetrics interface: attribute fontBoundingBoxDescent] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: attribute textBaseline] + expected: FAIL + + [OffscreenCanvasRenderingContext2D interface: attribute textAlign] + expected: FAIL + + [TextMetrics interface: existence and properties of interface prototype object's "constructor" property] + expected: FAIL + + [DedicatedWorkerGlobalScope interface: self must inherit property "requestAnimationFrame(FrameRequestCallback)" with the proper type] + expected: FAIL + + [OffscreenCanvas interface: operation getContext(OffscreenRenderingContextId, any)] + expected: FAIL + + [DedicatedWorkerGlobalScope interface: operation cancelAnimationFrame(unsigned long)] + expected: FAIL + + [DedicatedWorkerGlobalScope interface: operation requestAnimationFrame(FrameRequestCallback)] + expected: FAIL + + [OffscreenCanvas interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [TextMetrics interface object name] + expected: FAIL + diff --git a/testing/web-platform/meta/html/rendering/non-replaced-elements/tables/table-attribute.html.ini b/testing/web-platform/meta/html/rendering/non-replaced-elements/tables/table-attribute.html.ini new file mode 100644 index 000000000000..7dd09036a9ea --- /dev/null +++ b/testing/web-platform/meta/html/rendering/non-replaced-elements/tables/table-attribute.html.ini @@ -0,0 +1,79 @@ +[table-attribute.html] + [table td align attribute left is correct] + expected: FAIL + + [table tfoot align attribute center is correct] + expected: FAIL + + [table th align attribute middle is correct] + expected: FAIL + + [table thead align attribute right is correct] + expected: FAIL + + [table thead align attribute middle is correct] + expected: FAIL + + [table tr align attribute center is correct] + expected: FAIL + + [table th align attribute left is correct] + expected: FAIL + + [table tbody align attribute right is correct] + expected: FAIL + + [table thead align attribute left is correct] + expected: FAIL + + [table th align attribute center is correct] + expected: FAIL + + [table td align attribute center is correct] + expected: FAIL + + [table tr align attribute middle is correct] + expected: FAIL + + [table tfoot align attribute middle is correct] + expected: FAIL + + [table bordercolor attribute is correct] + expected: FAIL + + [table th align attribute right is correct] + expected: FAIL + + [table cellpadding attribute is correct] + expected: FAIL + + [table tr align attribute left is correct] + expected: FAIL + + [table td align attribute right is correct] + expected: FAIL + + [table tfoot align attribute left is correct] + expected: FAIL + + [table tfoot align attribute right is correct] + expected: FAIL + + [table thead align attribute center is correct] + expected: FAIL + + [table tbody align attribute middle is correct] + expected: FAIL + + [table tbody align attribute left is correct] + expected: FAIL + + [table tbody align attribute center is correct] + expected: FAIL + + [table td align attribute middle is correct] + expected: FAIL + + [table tr align attribute right is correct] + expected: FAIL + diff --git a/testing/web-platform/meta/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html.ini b/testing/web-platform/meta/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html.ini new file mode 100644 index 000000000000..49e7050b6d2e --- /dev/null +++ b/testing/web-platform/meta/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html.ini @@ -0,0 +1,4 @@ +[stylesheet-not-removed-until-next-stylesheet-loads.html] + [Check that a style sheet loaded by a is available until its successor is loaded] + expected: FAIL + diff --git a/testing/web-platform/meta/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html.ini b/testing/web-platform/meta/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..41e9161e0c22 --- /dev/null +++ b/testing/web-platform/meta/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[autoplay-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise autoplay.] + expected: FAIL + diff --git a/testing/web-platform/meta/html/semantics/embedded-content/media-elements/video_loop_base.html.ini~e0ac563c0260... Update metadata b/testing/web-platform/meta/html/semantics/embedded-content/media-elements/video_loop_base.html.ini~e0ac563c0260... Update metadata deleted file mode 100644 index 0027101fa879..000000000000 --- a/testing/web-platform/meta/html/semantics/embedded-content/media-elements/video_loop_base.html.ini~e0ac563c0260... Update metadata +++ /dev/null @@ -1,3 +0,0 @@ -[video_loop_base.html] - expected: - if (os == "linux") and not debug and webrender: CRASH diff --git a/testing/web-platform/meta/html/semantics/forms/form-submission-0/FormDataEvent.window.js.ini b/testing/web-platform/meta/html/semantics/forms/form-submission-0/FormDataEvent.window.js.ini new file mode 100644 index 000000000000..73c78e8da193 --- /dev/null +++ b/testing/web-platform/meta/html/semantics/forms/form-submission-0/FormDataEvent.window.js.ini @@ -0,0 +1,7 @@ +[FormDataEvent.window.html] + [Successful FormDataEvent constructor] + expected: FAIL + + [Failing FormDataEvent constructor] + expected: FAIL + diff --git a/testing/web-platform/meta/html/semantics/forms/form-submission-0/constructing-form-data-set.html.ini b/testing/web-platform/meta/html/semantics/forms/form-submission-0/constructing-form-data-set.html.ini new file mode 100644 index 000000000000..7b8dd782e23b --- /dev/null +++ b/testing/web-platform/meta/html/semantics/forms/form-submission-0/constructing-form-data-set.html.ini @@ -0,0 +1,13 @@ +[constructing-form-data-set.html] + [Entries added to "formData" IDL attribute should be submitted.] + expected: FAIL + + ["formData" IDL attribute should have entries for form-associated elements in the first event handler, and the second handler can read entries set by the first handler.] + expected: FAIL + + ["formdata" event bubbles, and is not cancelable.] + expected: FAIL + + ["formdata" event bubbles in an orphan tree.] + expected: FAIL + diff --git a/testing/web-platform/meta/html/semantics/forms/form-submission-0/form-submission-algorithm.html.ini b/testing/web-platform/meta/html/semantics/forms/form-submission-0/form-submission-algorithm.html.ini new file mode 100644 index 000000000000..c26f0be3d27d --- /dev/null +++ b/testing/web-platform/meta/html/semantics/forms/form-submission-0/form-submission-algorithm.html.ini @@ -0,0 +1,7 @@ +[form-submission-algorithm.html] + [Cannot navigate (after constructing the entry list)] + expected: FAIL + + [If constructing entry list flag of form is true, then return] + expected: FAIL + diff --git a/testing/web-platform/meta/html/semantics/selectors/pseudo-classes/link.html.ini b/testing/web-platform/meta/html/semantics/selectors/pseudo-classes/link.html.ini deleted file mode 100644 index bcca007d37a9..000000000000 --- a/testing/web-platform/meta/html/semantics/selectors/pseudo-classes/link.html.ini +++ /dev/null @@ -1,7 +0,0 @@ -[link.html] - [Only s, s and s that have a href attribute match ':link'] - expected: FAIL - - [':link' doesn't match elements whos href attribute has been removed] - expected: FAIL - diff --git a/testing/web-platform/meta/html/syntax/parsing/__dir__.ini b/testing/web-platform/meta/html/syntax/parsing/__dir__.ini deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/testing/web-platform/meta/html/webappapis/scripting/events/compile-event-handler-lexical-scopes.html.ini b/testing/web-platform/meta/html/webappapis/scripting/events/compile-event-handler-lexical-scopes.html.ini new file mode 100644 index 000000000000..07fcdc86d247 --- /dev/null +++ b/testing/web-platform/meta/html/webappapis/scripting/events/compile-event-handler-lexical-scopes.html.ini @@ -0,0 +1,13 @@ +[compile-event-handler-lexical-scopes.html] + [The EventHandler is an element's event handler and has no form owner.] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [The EventHandler is an element's event handler and has a form owner.] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [The EventHandler is not an element's event handler (i.e. Window's event handler) and has no form owner.] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + diff --git a/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-all-global-events.html.ini b/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-all-global-events.html.ini index 6c550cf08f7c..66f194ecefaa 100644 --- a/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-all-global-events.html.ini +++ b/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-all-global-events.html.ini @@ -35,3 +35,15 @@ [onsecuritypolicyviolation: the content attribute must execute when an event is dispatched] expected: FAIL + [onformdata: the content attribute must execute when an event is dispatched] + expected: FAIL + + [onformdata: the content attribute must be compiled into a function as the corresponding property] + expected: FAIL + + [onformdata: must be on the appropriate locations for GlobalEventHandlers] + expected: FAIL + + [onformdata: the default value must be null] + expected: FAIL + diff --git a/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-body-window.html.ini b/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-body-window.html.ini index 902c075af236..af6ed524fc83 100644 --- a/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-body-window.html.ini +++ b/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-body-window.html.ini @@ -134,4 +134,12 @@ if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + [not shadowed formdata (window)] + expected: FAIL + + [not shadowed formdata (document.body)] + expected: FAIL + + [not shadowed formdata (document.createElement("body"))] + expected: FAIL diff --git a/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-frameset-window.html.ini b/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-frameset-window.html.ini index 8e58ff4e584b..6197778eff79 100644 --- a/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-frameset-window.html.ini +++ b/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-frameset-window.html.ini @@ -101,4 +101,12 @@ if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + [not shadowed formdata (document.body)] + expected: FAIL + + [not shadowed formdata (document.createElement("frameset"))] + expected: FAIL + + [not shadowed formdata (window)] + expected: FAIL diff --git a/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-windowless-body.html.ini b/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-windowless-body.html.ini index 61a54defff59..f3c91c54a274 100644 --- a/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-windowless-body.html.ini +++ b/testing/web-platform/meta/html/webappapis/scripting/events/event-handler-attributes-windowless-body.html.ini @@ -41,3 +41,9 @@ [securitypolicyviolation is unaffected on a windowless frameset] expected: FAIL + [formdata is unaffected on a windowless frameset] + expected: FAIL + + [formdata is unaffected on a windowless body] + expected: FAIL + diff --git a/testing/web-platform/meta/idle-detection/basics.tentative.https.any.js.ini b/testing/web-platform/meta/idle-detection/basics.tentative.https.any.js.ini new file mode 100644 index 000000000000..bba50329c649 --- /dev/null +++ b/testing/web-platform/meta/idle-detection/basics.tentative.https.any.js.ini @@ -0,0 +1,51 @@ +[basics.tentative.https.any.html] + [query() throws with invalid threshold (null)] + expected: FAIL + + [query() uses a default value for the threshold when none is passed] + expected: FAIL + + [query() uses threshold property] + expected: FAIL + + [query() throws with invalid threshold (-1)] + expected: FAIL + + [query() basics] + expected: FAIL + + [query() uses a default value for the threshold] + expected: FAIL + + [query() throws with invalid threshold (NaN)] + expected: FAIL + + [query() throws with invalid threshold (0)] + expected: FAIL + + +[basics.tentative.https.any.worker.html] + [query() throws with invalid threshold (null)] + expected: FAIL + + [query() uses a default value for the threshold when none is passed] + expected: FAIL + + [query() uses threshold property] + expected: FAIL + + [query() throws with invalid threshold (-1)] + expected: FAIL + + [query() basics] + expected: FAIL + + [query() uses a default value for the threshold] + expected: FAIL + + [query() throws with invalid threshold (NaN)] + expected: FAIL + + [query() throws with invalid threshold (0)] + expected: FAIL + diff --git a/testing/web-platform/meta/idle-detection/idlharness.https.any.js.ini b/testing/web-platform/meta/idle-detection/idlharness.https.any.js.ini new file mode 100644 index 000000000000..ab4889268c1e --- /dev/null +++ b/testing/web-platform/meta/idle-detection/idlharness.https.any.js.ini @@ -0,0 +1,9 @@ +[idlharness.https.any.worker.html] + [Test IDL implementation of Idle Detection API] + expected: FAIL + + +[idlharness.https.any.html] + [Test IDL implementation of Idle Detection API] + expected: FAIL + diff --git a/testing/web-platform/meta/intersection-observer/root-margin.html.ini b/testing/web-platform/meta/intersection-observer/root-margin.html.ini index fc4cadd78145..c4339c818a83 100644 --- a/testing/web-platform/meta/intersection-observer/root-margin.html.ini +++ b/testing/web-platform/meta/intersection-observer/root-margin.html.ini @@ -15,3 +15,7 @@ expected: if os == "android": FAIL + [document.scrollingElement.scrollTop = document.documentElement.clientHeight + 200] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + diff --git a/testing/web-platform/meta/kv-storage/api-surface.https.html.ini b/testing/web-platform/meta/kv-storage/api-surface.https.html.ini new file mode 100644 index 000000000000..e6048e42a510 --- /dev/null +++ b/testing/web-platform/meta/kv-storage/api-surface.https.html.ini @@ -0,0 +1,2 @@ +[api-surface.https.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/kv-storage/cause-errors-via-idb.https.html.ini b/testing/web-platform/meta/kv-storage/cause-errors-via-idb.https.html.ini new file mode 100644 index 000000000000..899e2dc44ab1 --- /dev/null +++ b/testing/web-platform/meta/kv-storage/cause-errors-via-idb.https.html.ini @@ -0,0 +1,2 @@ +[cause-errors-via-idb.https.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/kv-storage/entries.https.html.ini b/testing/web-platform/meta/kv-storage/entries.https.html.ini new file mode 100644 index 000000000000..fdbbd5e4db22 --- /dev/null +++ b/testing/web-platform/meta/kv-storage/entries.https.html.ini @@ -0,0 +1,2 @@ +[entries.https.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/kv-storage/key-types.https.html.ini b/testing/web-platform/meta/kv-storage/key-types.https.html.ini new file mode 100644 index 000000000000..129cb6095c6f --- /dev/null +++ b/testing/web-platform/meta/kv-storage/key-types.https.html.ini @@ -0,0 +1,2 @@ +[key-types.https.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/kv-storage/keys-values-entries.https.html.ini b/testing/web-platform/meta/kv-storage/keys-values-entries.https.html.ini new file mode 100644 index 000000000000..33ef1ab5b213 --- /dev/null +++ b/testing/web-platform/meta/kv-storage/keys-values-entries.https.html.ini @@ -0,0 +1,2 @@ +[keys-values-entries.https.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/kv-storage/keys.https.html.ini b/testing/web-platform/meta/kv-storage/keys.https.html.ini new file mode 100644 index 000000000000..a393d5f4767a --- /dev/null +++ b/testing/web-platform/meta/kv-storage/keys.https.html.ini @@ -0,0 +1,2 @@ +[keys.https.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/kv-storage/non-secure-context-dynamic-import.html.ini b/testing/web-platform/meta/kv-storage/non-secure-context-dynamic-import.html.ini new file mode 100644 index 000000000000..db0a8f57e446 --- /dev/null +++ b/testing/web-platform/meta/kv-storage/non-secure-context-dynamic-import.html.ini @@ -0,0 +1,4 @@ +[non-secure-context-dynamic-import.html] + [KV Storage: should not work in non-secure contexts when included via import()] + expected: FAIL + diff --git a/testing/web-platform/meta/kv-storage/non-secure-context-import-statement.html.ini b/testing/web-platform/meta/kv-storage/non-secure-context-import-statement.html.ini new file mode 100644 index 000000000000..d57ce188791f --- /dev/null +++ b/testing/web-platform/meta/kv-storage/non-secure-context-import-statement.html.ini @@ -0,0 +1,5 @@ +[non-secure-context-import-statement.html] + expected: TIMEOUT + [KV Storage: should not work in non-secure contexts when included via an import statement] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/kv-storage/non-secure-context-script-element.html.ini b/testing/web-platform/meta/kv-storage/non-secure-context-script-element.html.ini new file mode 100644 index 000000000000..de64176062ff --- /dev/null +++ b/testing/web-platform/meta/kv-storage/non-secure-context-script-element.html.ini @@ -0,0 +1,5 @@ +[non-secure-context-script-element.html] + expected: TIMEOUT + [KV Storage: should not work in non-secure contexts when included via a script element] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/kv-storage/storage-smoke-test.https.html.ini b/testing/web-platform/meta/kv-storage/storage-smoke-test.https.html.ini new file mode 100644 index 000000000000..40847320c46c --- /dev/null +++ b/testing/web-platform/meta/kv-storage/storage-smoke-test.https.html.ini @@ -0,0 +1,2 @@ +[storage-smoke-test.https.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/kv-storage/undefined-value.https.html.ini b/testing/web-platform/meta/kv-storage/undefined-value.https.html.ini new file mode 100644 index 000000000000..8c875aec20ac --- /dev/null +++ b/testing/web-platform/meta/kv-storage/undefined-value.https.html.ini @@ -0,0 +1,2 @@ +[undefined-value.https.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/kv-storage/values.https.html.ini b/testing/web-platform/meta/kv-storage/values.https.html.ini new file mode 100644 index 000000000000..6a0776e606bb --- /dev/null +++ b/testing/web-platform/meta/kv-storage/values.https.html.ini @@ -0,0 +1,2 @@ +[values.https.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/magnetometer/Magnetometer-supported-by-feature-policy.html.ini b/testing/web-platform/meta/magnetometer/Magnetometer-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..d724359d197a --- /dev/null +++ b/testing/web-platform/meta/magnetometer/Magnetometer-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[Magnetometer-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise magnetometer.] + expected: FAIL + diff --git a/testing/web-platform/meta/mediacapture-record/MediaRecorder-creation.https.html.ini b/testing/web-platform/meta/mediacapture-record/MediaRecorder-creation.https.html.ini new file mode 100644 index 000000000000..983b8299ee8d --- /dev/null +++ b/testing/web-platform/meta/mediacapture-record/MediaRecorder-creation.https.html.ini @@ -0,0 +1,10 @@ +[MediaRecorder-creation.https.html] + [Video+Audio MediaRecorder] + expected: FAIL + + [Video-only MediaRecorder] + expected: FAIL + + [Audio-only MediaRecorder] + expected: FAIL + diff --git a/testing/web-platform/meta/mediacapture-record/MediaRecorder-detached-context.html.ini b/testing/web-platform/meta/mediacapture-record/MediaRecorder-detached-context.html.ini new file mode 100644 index 000000000000..76921fa82544 --- /dev/null +++ b/testing/web-platform/meta/mediacapture-record/MediaRecorder-detached-context.html.ini @@ -0,0 +1,4 @@ +[MediaRecorder-detached-context.html] + [MediaRecorder creation with detached context] + expected: FAIL + diff --git a/testing/web-platform/meta/mediacapture-record/MediaRecorder-disabled-tracks.https.html.ini b/testing/web-platform/meta/mediacapture-record/MediaRecorder-disabled-tracks.https.html.ini new file mode 100644 index 000000000000..be5a714951ea --- /dev/null +++ b/testing/web-platform/meta/mediacapture-record/MediaRecorder-disabled-tracks.https.html.ini @@ -0,0 +1,10 @@ +[MediaRecorder-disabled-tracks.https.html] + [audio-video] + expected: FAIL + + [video-only] + expected: FAIL + + [audio-only] + expected: FAIL + diff --git a/testing/web-platform/meta/mediacapture-record/MediaRecorder-events-and-exceptions.html.ini b/testing/web-platform/meta/mediacapture-record/MediaRecorder-events-and-exceptions.html.ini new file mode 100644 index 000000000000..e81b7344a5a0 --- /dev/null +++ b/testing/web-platform/meta/mediacapture-record/MediaRecorder-events-and-exceptions.html.ini @@ -0,0 +1,4 @@ +[MediaRecorder-events-and-exceptions.html] + [MediaRecorder events and exceptions] + expected: FAIL + diff --git a/testing/web-platform/meta/mediacapture-streams/MediaStream-supported-by-feature-policy.html.ini b/testing/web-platform/meta/mediacapture-streams/MediaStream-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..ce475a2b1413 --- /dev/null +++ b/testing/web-platform/meta/mediacapture-streams/MediaStream-supported-by-feature-policy.html.ini @@ -0,0 +1,7 @@ +[MediaStream-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise microphone.] + expected: FAIL + + [document.featurePolicy.features should advertise camera.] + expected: FAIL + diff --git a/testing/web-platform/meta/mozilla-sync b/testing/web-platform/meta/mozilla-sync index 3fadcafb245f..e1548ae0a7ca 100644 --- a/testing/web-platform/meta/mozilla-sync +++ b/testing/web-platform/meta/mozilla-sync @@ -1,2 +1,2 @@ -local: 98affb33e20d59c431485e155552539fcb671bd8 -upstream: 8506febdb9bdce487ef7e4ff91e9b70853019b38 +local: 43e3aad0ad8f7bc99b03c1871e25193e9382aa7a +upstream: 9c5701192b581208a028144cb0fc27e462541a49 diff --git a/testing/web-platform/meta/payment-handler/__dir__.ini b/testing/web-platform/meta/payment-handler/__dir__.ini index 32ab257be4a3..66bddb027bbb 100644 --- a/testing/web-platform/meta/payment-handler/__dir__.ini +++ b/testing/web-platform/meta/payment-handler/__dir__.ini @@ -1,5 +1,5 @@ prefs: [dom.payments.request.enabled:true] disabled: if not nightly_build: https://bugzilla.mozilla.org/show_bug.cgi?id=1495301 -lsan-allowed: [Alloc, CompareNetwork, EntrySlotOrCreate, MakeUnique, Malloc, NS_NewLoadGroup, NewChannelFromURIWithProxyFlagsInternal, NewPage, PLDHashTable::Add, Realloc, mozilla::dom::cache::CacheOpChild::Recv__delete__, mozilla::dom::serviceWorkerScriptCache::, mozilla::net::HttpBaseChannel::HttpBaseChannel, mozilla::net::HttpChannelChild::HttpChannelChild, mozilla::net::nsHttpHandler::NewProxiedChannel2, mozilla::net::nsStandardURL::TemplatedMutator] +lsan-allowed: [Alloc, CompareNetwork, EntrySlotOrCreate, MakeUnique, Malloc, NS_NewLoadGroup, NewChannelFromURIWithProxyFlagsInternal, NewPage, PLDHashTable::Add, Realloc, js::Call, mozilla::dom::NativeHandlerCallback, mozilla::dom::cache::CacheOpChild::Recv__delete__, mozilla::dom::serviceWorkerScriptCache::, mozilla::net::HttpBaseChannel::HttpBaseChannel, mozilla::net::HttpChannelChild::HttpChannelChild, mozilla::net::nsHttpHandler::NewProxiedChannel2, mozilla::net::nsStandardURL::TemplatedMutator] leak-threshold: [tab:51200] diff --git a/testing/web-platform/meta/payment-request/allowpaymentrequest/allowpaymentrequest-attribute-cross-origin-bc-containers.https.html.ini b/testing/web-platform/meta/payment-request/allowpaymentrequest/allowpaymentrequest-attribute-cross-origin-bc-containers.https.html.ini index 185ff5f2b57e..12afe189a063 100644 --- a/testing/web-platform/meta/payment-request/allowpaymentrequest/allowpaymentrequest-attribute-cross-origin-bc-containers.https.html.ini +++ b/testing/web-platform/meta/payment-request/allowpaymentrequest/allowpaymentrequest-attribute-cross-origin-bc-containers.https.html.ini @@ -9,9 +9,8 @@ [object] expected: - if not e10s: FAIL + if (os == "linux") and debug and not webrender and not e10s: "FAIL" [embed] expected: if not e10s: FAIL - diff --git a/testing/web-platform/meta/payment-request/historical.https.html.ini b/testing/web-platform/meta/payment-request/historical.https.html.ini index 1134f2f75bdb..84fdc262d29e 100644 --- a/testing/web-platform/meta/payment-request/historical.https.html.ini +++ b/testing/web-platform/meta/payment-request/historical.https.html.ini @@ -31,3 +31,6 @@ expected: if not e10s: FAIL + [regionCode in PaymentAddress] + expected: FAIL + diff --git a/testing/web-platform/meta/payment-request/payment-is-showing.https.html.ini b/testing/web-platform/meta/payment-request/payment-is-showing.https.html.ini new file mode 100644 index 000000000000..a15ecedc374c --- /dev/null +++ b/testing/web-platform/meta/payment-request/payment-is-showing.https.html.ini @@ -0,0 +1,65 @@ +[payment-is-showing.https.html] + expected: + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): OK + TIMEOUT + [Simple payment-relevant browsing context's payment request is showing boolean is true] + expected: FAIL + + [Navigating an nested browsing context sets 'payment request is showing boolean' back to false] + expected: FAIL + + [Given multiple nested browsing contexts, and an iframe calls show() first, other nested browsing contexts can't show a request.] + expected: + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): TIMEOUT + FAIL + + [Using a popup window prevents the top-browsing context from showing a payment request] + expected: FAIL + + [An iframe cannot show a payment request if the top-level window is already showing one.] + expected: FAIL + + [Given multiple nested browsing contexts, and popup calls show() first, other nested browsing contexts can't show a request.] + expected: FAIL + + [The top browsing context can only show one payment sheet at a time.] + expected: FAIL + + [Navigating an iframe as a nested browsing context sets 'payment request is showing boolean' to false.] + expected: + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): TIMEOUT + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): TIMEOUT + if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): TIMEOUT + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): TIMEOUT + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): TIMEOUT + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): TIMEOUT + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): TIMEOUT + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): TIMEOUT + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): NOTRUN + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): TIMEOUT + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): TIMEOUT + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): TIMEOUT + FAIL + + [Given multiple nested browsing contexts, and window calls show() first, other nested browsing contexts can't show a request.] + expected: FAIL + + [If an iframe shows a payment request, the top-level browsing context can't also show one.] + expected: FAIL + + [Navigating a popup as a nested browsing context sets 'payment request is showing boolean' to false.] + expected: + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): NOTRUN + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): NOTRUN + if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): NOTRUN + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): NOTRUN + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): NOTRUN + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): NOTRUN + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): NOTRUN + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): NOTRUN + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): NOTRUN + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): NOTRUN + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): NOTRUN + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): NOTRUN + FAIL + diff --git a/testing/web-platform/meta/performance-timeline/idlharness.any.js.ini b/testing/web-platform/meta/performance-timeline/idlharness.any.js.ini index 0d675cb553f6..cc9f00f5c550 100644 --- a/testing/web-platform/meta/performance-timeline/idlharness.any.js.ini +++ b/testing/web-platform/meta/performance-timeline/idlharness.any.js.ini @@ -5,18 +5,54 @@ [PerformanceObserver interface: attribute supportedEntryTypes] expected: FAIL + [PerformanceMark interface: attribute detail] + expected: FAIL + + [PerformanceMark interface: mark must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface object length] + expected: FAIL + [idlharness.any.sharedworker.html] [PerformanceObserver interface: attribute supportedEntryTypes] expected: FAIL + [PerformanceMark interface: attribute detail] + expected: FAIL + + [PerformanceMark interface: mark must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface object length] + expected: FAIL + [idlharness.any.html] [PerformanceObserver interface: attribute supportedEntryTypes] expected: FAIL + [PerformanceMark interface: attribute detail] + expected: FAIL + + [PerformanceMark interface: mark must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface object length] + expected: FAIL + [idlharness.any.worker.html] [PerformanceObserver interface: attribute supportedEntryTypes] expected: FAIL + [PerformanceMark interface: attribute detail] + expected: FAIL + + [PerformanceMark interface: mark must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface object length] + expected: FAIL + diff --git a/testing/web-platform/meta/picture-in-picture/idlharness.window.js.ini b/testing/web-platform/meta/picture-in-picture/idlharness.window.js.ini index 3dfb3609d11a..d50c5e656a8b 100644 --- a/testing/web-platform/meta/picture-in-picture/idlharness.window.js.ini +++ b/testing/web-platform/meta/picture-in-picture/idlharness.window.js.ini @@ -116,3 +116,9 @@ [HTMLVideoElement interface: video must inherit property "requestPictureInPicture()" with the proper type] expected: FAIL + [HTMLVideoElement interface: attribute autoPictureInPicture] + expected: FAIL + + [HTMLVideoElement interface: video must inherit property "autoPictureInPicture" with the proper type] + expected: FAIL + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers.html.ini new file mode 100644 index 000000000000..e1f7f0414cf1 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers.html.ini @@ -0,0 +1,8 @@ +[pointerevent_boundary_events_at_implicit_release_hoverable_pointers.html] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): TIMEOUT + [mouse Event sequence at implicit release on click] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): NOTRUN + FAIL + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_click_during_capture.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_click_during_capture.html.ini new file mode 100644 index 000000000000..c2ac6af5f7ed --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_click_during_capture.html.ini @@ -0,0 +1,6 @@ +[pointerevent_click_during_capture.html] + expected: + if os == "android": "ERROR" + [mouse click target during capture] + expected: FAIL + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_lostpointercapture_for_disconnected_node.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_lostpointercapture_for_disconnected_node.html.ini new file mode 100644 index 000000000000..7f9ab5cc6e2d --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_lostpointercapture_for_disconnected_node.html.ini @@ -0,0 +1,3 @@ +[pointerevent_lostpointercapture_for_disconnected_node.html] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): ERROR diff --git a/testing/web-platform/meta/pointerevents/pointerevent_lostpointercapture_is_first.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_lostpointercapture_is_first.html.ini new file mode 100644 index 000000000000..38542190e490 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_lostpointercapture_is_first.html.ini @@ -0,0 +1,3 @@ +[pointerevent_lostpointercapture_is_first.html] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): ERROR diff --git a/testing/web-platform/meta/pointerevents/pointerevent_pointerenter_does_not_bubble.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_pointerenter_does_not_bubble.html.ini new file mode 100644 index 000000000000..323dae42a123 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_pointerenter_does_not_bubble.html.ini @@ -0,0 +1,25 @@ +[pointerevent_pointerenter_does_not_bubble.html] + expected: + if os == "android": "TIMEOUT" + [ mouse pointerenter.fromElement value is null.] + expected: FAIL + + [ mouse pointerenter.toElement attribute exists] + expected: FAIL + + [ mouse pointerenter.toElement IDL type object (JS type was undefined)] + expected: FAIL + + [ mouse pointerenter.fromElement IDL type object (JS type was undefined)] + expected: FAIL + + [ mouse pointerenter.fromElement attribute exists] + expected: FAIL + + [ mouse pointerenter.toElement value is null.] + expected: FAIL + + [pointerEnter event does not bubble] + expected: + if os == "android": "NOTRUN" + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_pointerleave_descendant_over.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_pointerleave_descendant_over.html.ini new file mode 100644 index 000000000000..056ff1dc4d36 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_pointerleave_descendant_over.html.ini @@ -0,0 +1,3 @@ +[pointerevent_pointerleave_descendant_over.html] + expected: + if os == "android": "TIMEOUT" diff --git a/testing/web-platform/meta/pointerevents/pointerevent_pointerleave_descendants.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_pointerleave_descendants.html.ini new file mode 100644 index 000000000000..2fc7acb0424c --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_pointerleave_descendants.html.ini @@ -0,0 +1,7 @@ +[pointerevent_pointerleave_descendants.html] + expected: + if os == "android": "TIMEOUT" + [pointerleave event received] + expected: + if os == "android": "NOTRUN" + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_pointerleave_does_not_bubble.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_pointerleave_does_not_bubble.html.ini new file mode 100644 index 000000000000..45b8bd890fc7 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_pointerleave_does_not_bubble.html.ini @@ -0,0 +1,25 @@ +[pointerevent_pointerleave_does_not_bubble.html] + expected: + if os == "android": "TIMEOUT" + [ mouse pointerleave.toElement value is null.] + expected: FAIL + + [ mouse pointerleave.fromElement value is null.] + expected: FAIL + + [ mouse pointerleave.toElement attribute exists] + expected: FAIL + + [ mouse pointerleave.fromElement attribute exists] + expected: FAIL + + [ mouse pointerleave.fromElement IDL type object (JS type was undefined)] + expected: FAIL + + [ mouse pointerleave.toElement IDL type object (JS type was undefined)] + expected: FAIL + + [pointerLeave event does not bubble] + expected: + if os == "android": "NOTRUN" + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_pointerout_pen.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_pointerout_pen.html.ini new file mode 100644 index 000000000000..1f9c423db515 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_pointerout_pen.html.ini @@ -0,0 +1,2 @@ +[pointerevent_pointerout_pen.html] + expected: ERROR diff --git a/testing/web-platform/meta/pointerevents/pointerevent_pointerout_received_once.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_pointerout_received_once.html.ini new file mode 100644 index 000000000000..43f8f0d289d1 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_pointerout_received_once.html.ini @@ -0,0 +1,3 @@ +[pointerevent_pointerout_received_once.html] + expected: + if os == "android": "TIMEOUT" diff --git a/testing/web-platform/meta/pointerevents/pointerevent_releasepointercapture_invalid_pointerid.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_releasepointercapture_invalid_pointerid.html.ini new file mode 100644 index 000000000000..16a4139a952c --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_releasepointercapture_invalid_pointerid.html.ini @@ -0,0 +1,10 @@ +[pointerevent_releasepointercapture_invalid_pointerid.html] + expected: + if os == "android": "TIMEOUT" + [releasePointerCapture: DOMException NotFoundError] + expected: + if os == "win": "FAIL" + if os == "android": "NOTRUN" + if os == "linux": "FAIL" + if os == "mac": "FAIL" + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_releasepointercapture_onpointerup_mouse.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_releasepointercapture_onpointerup_mouse.html.ini new file mode 100644 index 000000000000..5cde8345ef5d --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_releasepointercapture_onpointerup_mouse.html.ini @@ -0,0 +1,3 @@ +[pointerevent_releasepointercapture_onpointerup_mouse.html] + expected: + if os == "android": "TIMEOUT" diff --git a/testing/web-platform/meta/pointerevents/pointerevent_setpointercapture_disconnected.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_setpointercapture_disconnected.html.ini new file mode 100644 index 000000000000..7e1812ced98d --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_setpointercapture_disconnected.html.ini @@ -0,0 +1,7 @@ +[pointerevent_setpointercapture_disconnected.html] + expected: + if os == "android": "TIMEOUT" + [setPointerCapture: DOMException InvalidStateError] + expected: + if os == "android": "NOTRUN" + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_setpointercapture_invalid_pointerid.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_setpointercapture_invalid_pointerid.html.ini new file mode 100644 index 000000000000..8e7dcf00ffc6 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_setpointercapture_invalid_pointerid.html.ini @@ -0,0 +1,8 @@ +[pointerevent_setpointercapture_invalid_pointerid.html] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): TIMEOUT + [setPointerCapture: DOMException NotFoundError] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): NOTRUN + FAIL + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_setpointercapture_relatedtarget.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_setpointercapture_relatedtarget.html.ini new file mode 100644 index 000000000000..fa261ce32dd8 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_setpointercapture_relatedtarget.html.ini @@ -0,0 +1,3 @@ +[pointerevent_setpointercapture_relatedtarget.html] + expected: + if os == "android": "ERROR" diff --git a/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_click.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_click.html.ini new file mode 100644 index 000000000000..6cfd3044f3fc --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_click.html.ini @@ -0,0 +1,5 @@ +[pointerevent_suppress_compat_events_on_click.html] + [Event log] + expected: + if os == "android": "FAIL" + diff --git a/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html.ini b/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html.ini new file mode 100644 index 000000000000..6d33994b6fd8 --- /dev/null +++ b/testing/web-platform/meta/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html.ini @@ -0,0 +1,7 @@ +[pointerevent_suppress_compat_events_on_drag_mouse.html] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): ERROR + [Event log] + expected: + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + diff --git a/testing/web-platform/meta/portals/portal-activate-event.html.ini b/testing/web-platform/meta/portals/portal-activate-event.html.ini new file mode 100644 index 000000000000..f803deac4d20 --- /dev/null +++ b/testing/web-platform/meta/portals/portal-activate-event.html.ini @@ -0,0 +1,11 @@ +[portal-activate-event.html] + expected: TIMEOUT + [Tests that the PortalActivateEvent is dispatched when a portal is activated.] + expected: TIMEOUT + + [Tests that the portalactivate event handler is dispatched when a portal is activated.] + expected: TIMEOUT + + [Tests that the HTMLBodyElement has the portalactivate event handler.] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/portals/portals-host-null.html.ini b/testing/web-platform/meta/portals/portals-host-null.html.ini new file mode 100644 index 000000000000..8f7cf8bfd87a --- /dev/null +++ b/testing/web-platform/meta/portals/portals-host-null.html.ini @@ -0,0 +1,4 @@ +[portals-host-null.html] + [portals-host-null] + expected: FAIL + diff --git a/testing/web-platform/meta/portals/portals-no-referrer.html.ini b/testing/web-platform/meta/portals/portals-no-referrer.html.ini new file mode 100644 index 000000000000..0ef665bc6481 --- /dev/null +++ b/testing/web-platform/meta/portals/portals-no-referrer.html.ini @@ -0,0 +1,4 @@ +[portals-no-referrer.html] + [portal contents should be loaded with no referrer] + expected: FAIL + diff --git a/testing/web-platform/meta/portals/portals-rendering.html.ini b/testing/web-platform/meta/portals/portals-rendering.html.ini new file mode 100644 index 000000000000..a691bd7c0e66 --- /dev/null +++ b/testing/web-platform/meta/portals/portals-rendering.html.ini @@ -0,0 +1,2 @@ +[portals-rendering.html] + expected: TIMEOUT diff --git a/testing/web-platform/meta/quirks/line-height-in-list-item.tentative.html.ini b/testing/web-platform/meta/quirks/line-height-in-list-item.tentative.html.ini new file mode 100644 index 000000000000..d7ad6098d4df --- /dev/null +++ b/testing/web-platform/meta/quirks/line-height-in-list-item.tentative.html.ini @@ -0,0 +1,2 @@ +[line-height-in-list-item.tentative.html] + expected: FAIL diff --git a/testing/web-platform/meta/referrer-policy/generic/iframe-inheritance.html.ini b/testing/web-platform/meta/referrer-policy/generic/iframe-inheritance.html.ini index 72f948e79462..dae4704bef01 100644 --- a/testing/web-platform/meta/referrer-policy/generic/iframe-inheritance.html.ini +++ b/testing/web-platform/meta/referrer-policy/generic/iframe-inheritance.html.ini @@ -1,4 +1,5 @@ [iframe-inheritance.html] + expected: TIMEOUT [iframes correctly inherit the ancestor's referrer] - expected: FAIL + expected: NOTRUN diff --git a/testing/web-platform/meta/referrer-policy/generic/sandboxed-iframe-with-opaque-origin.html.ini b/testing/web-platform/meta/referrer-policy/generic/sandboxed-iframe-with-opaque-origin.html.ini new file mode 100644 index 000000000000..f4089ce54d78 --- /dev/null +++ b/testing/web-platform/meta/referrer-policy/generic/sandboxed-iframe-with-opaque-origin.html.ini @@ -0,0 +1,8 @@ +[sandboxed-iframe-with-opaque-origin.html] + expected: TIMEOUT + [Sandboxed iframe with tuple origin sends referrers.] + expected: TIMEOUT + + [Sandboxed iframe with opaque origin doesn't send referrers.] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/resource-timing/no-entries-for-cross-origin-css-fetched.sub.html.ini b/testing/web-platform/meta/resource-timing/no-entries-for-cross-origin-css-fetched.sub.html.ini new file mode 100644 index 000000000000..246ce01389f3 --- /dev/null +++ b/testing/web-platform/meta/resource-timing/no-entries-for-cross-origin-css-fetched.sub.html.ini @@ -0,0 +1,4 @@ +[no-entries-for-cross-origin-css-fetched.sub.html] + [Make sure that resources fetched by cross origin CSS are not in the timeline.] + expected: FAIL + diff --git a/testing/web-platform/meta/resource-timing/resource-timing.html.ini b/testing/web-platform/meta/resource-timing/resource-timing.html.ini deleted file mode 100644 index 5873f9d06e9a..000000000000 --- a/testing/web-platform/meta/resource-timing/resource-timing.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[resource-timing.html] - disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1290858 diff --git a/testing/web-platform/meta/resource-timing/resource_connection_reuse.https.html.ini b/testing/web-platform/meta/resource-timing/resource_connection_reuse.https.html.ini new file mode 100644 index 000000000000..6d33348409a9 --- /dev/null +++ b/testing/web-platform/meta/resource-timing/resource_connection_reuse.https.html.ini @@ -0,0 +1,69 @@ +[resource_connection_reuse.https.html] + disabled: Bug 1523562 + + [domainLookupEnd and fetchStart should be the same] + expected: + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if (os == "win") and (version == "10.0.15063") and not debug: "FAIL" + + [secureConnectStart and fetchStart should be the same] + expected: FAIL + + [connectStart and fetchStart should be the same] + expected: + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if (os == "win") and (version == "10.0.15063") and not debug: "FAIL" + + [domainLookupStart and fetchStart should be the same] + expected: + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if (os == "win") and (version == "10.0.15063") and not debug: "FAIL" + + [connectEnd and fetchStart should be the same] + expected: + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if (os == "win") and (version == "10.0.15063") and not debug: "FAIL" + + [secureConnectionStart and fetchStart should be the same] + expected: FAIL + diff --git a/testing/web-platform/meta/resource-timing/resource_connection_reuse_mixed_content.html.ini b/testing/web-platform/meta/resource-timing/resource_connection_reuse_mixed_content.html.ini new file mode 100644 index 000000000000..921fb79c74a8 --- /dev/null +++ b/testing/web-platform/meta/resource-timing/resource_connection_reuse_mixed_content.html.ini @@ -0,0 +1,18 @@ +[resource_connection_reuse_mixed_content.html] + disabled: Bug 1523562 + + [secureConnectionStart and fetchStart should be the same] + expected: FAIL + + [domainLookupEnd and fetchStart should be the same] + expected: FAIL + + [connectStart and fetchStart should be the same] + expected: FAIL + + [domainLookupStart and fetchStart should be the same] + expected: FAIL + + [connectEnd and fetchStart should be the same] + expected: FAIL + diff --git a/testing/web-platform/meta/resource-timing/resource_connection_reuse_mixed_content_redirect.html.ini b/testing/web-platform/meta/resource-timing/resource_connection_reuse_mixed_content_redirect.html.ini new file mode 100644 index 000000000000..502d8e224fa7 --- /dev/null +++ b/testing/web-platform/meta/resource-timing/resource_connection_reuse_mixed_content_redirect.html.ini @@ -0,0 +1,17 @@ +[resource_connection_reuse_mixed_content_redirect.html] + disabled: Bug 1525025 + + [secureConnectionStart and fetchStart should be the same] + expected: FAIL + + [domainLookupEnd and fetchStart should be the same] + expected: FAIL + + [connectStart and fetchStart should be the same] + expected: FAIL + + [domainLookupStart and fetchStart should be the same] + expected: FAIL + + [connectEnd and fetchStart should be the same] + expected: FAIL diff --git a/testing/web-platform/meta/resource-timing/resource_initiator_types.html.ini b/testing/web-platform/meta/resource-timing/resource_initiator_types.html.ini index ffe0c6dcd45a..eb6ff9f799c3 100644 --- a/testing/web-platform/meta/resource-timing/resource_initiator_types.html.ini +++ b/testing/web-platform/meta/resource-timing/resource_initiator_types.html.ini @@ -67,3 +67,7 @@ [http://web-platform.test:8000/resource-timing/resources/blue.png?id=picture-99x-img-srcset is not expected to be in the Resource Timing buffer] expected: if os == "android": FAIL + + [Testing resource entries] + expected: FAIL + diff --git a/testing/web-platform/meta/resource-timing/resource_reparenting.html.ini b/testing/web-platform/meta/resource-timing/resource_reparenting.html.ini index e5d647b4d84b..c21a795ef19e 100644 --- a/testing/web-platform/meta/resource-timing/resource_reparenting.html.ini +++ b/testing/web-platform/meta/resource-timing/resource_reparenting.html.ini @@ -2,3 +2,19 @@ [http://web-platform.test:8000/resource-timing/blue.png?id=move_to_child is not expected to be in the Resource Timing buffer] expected: FAIL + [Testing resource entries] + expected: + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL + if debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and webrender and e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not webrender and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if os == "win": "FAIL" + diff --git a/testing/web-platform/meta/resource-timing/test_resource_timing.https.html.ini b/testing/web-platform/meta/resource-timing/test_resource_timing.https.html.ini new file mode 100644 index 000000000000..dc12dd11500a --- /dev/null +++ b/testing/web-platform/meta/resource-timing/test_resource_timing.https.html.ini @@ -0,0 +1,3 @@ +[test_resource_timing.https.html] + [PerformanceEntry has correct order of timing attributes (iframe)] + expected: FAIL diff --git a/testing/web-platform/meta/service-workers/service-worker/claim-fetch-with-appcache.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/claim-fetch-with-appcache.https.html.ini new file mode 100644 index 000000000000..d6ca14b1a22b --- /dev/null +++ b/testing/web-platform/meta/service-workers/service-worker/claim-fetch-with-appcache.https.html.ini @@ -0,0 +1,11 @@ +[claim-fetch-with-appcache.https.html] + [fetch() should be intercepted after the client is claimed.] + expected: + if (os == "linux") and debug and not webrender and e10s and not sw-e10s: FAIL + if (os == "linux") and debug and webrender: FAIL + if (os == "linux") and not debug: FAIL + if os == "win": FAIL + if os == "android": FAIL + if os == "mac": FAIL + if (os == "linux") and debug and not webrender and not e10s: "FAIL" + diff --git a/testing/web-platform/meta/service-workers/service-worker/claim-fetch.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/claim-fetch.https.html.ini new file mode 100644 index 000000000000..05a6f579f488 --- /dev/null +++ b/testing/web-platform/meta/service-workers/service-worker/claim-fetch.https.html.ini @@ -0,0 +1,13 @@ +[claim-fetch.https.html] + [fetch() should be intercepted after the client is claimed.] + expected: + if (os == "linux") and debug and not webrender and e10s and not sw-e10s and (processor == "x86"): FAIL + if (os == "linux") and debug and not webrender and e10s and sw-e10s: FAIL + if (os == "linux") and debug and webrender: FAIL + if (os == "linux") and not debug: FAIL + if os == "win": FAIL + if os == "mac": FAIL + if os == "android": FAIL + if (os == "linux") and debug and not webrender and e10s: FAIL + FAIL + diff --git a/testing/web-platform/meta/service-workers/service-worker/clients-matchall-order.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/clients-matchall-order.https.html.ini index aa9068dc1fd9..89696dd2024c 100644 --- a/testing/web-platform/meta/service-workers/service-worker/clients-matchall-order.https.html.ini +++ b/testing/web-platform/meta/service-workers/service-worker/clients-matchall-order.https.html.ini @@ -1,13 +1,13 @@ [clients-matchall-order.https.html] [Clients.matchAll() returns uncontrolled windows in focus order. Case 1.] expected: - if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if os == "android": "FAIL" [Clients.matchAll() returns controlled windows in focus order. Case 1.] expected: - if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if os == "android": "FAIL" [Clients.matchAll() returns controlled windows and frames in focus order.] expected: - if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if os == "android": "FAIL" diff --git a/testing/web-platform/meta/service-workers/service-worker/installing.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/installing.https.html.ini index c856224a3431..52c077177db9 100644 --- a/testing/web-platform/meta/service-workers/service-worker/installing.https.html.ini +++ b/testing/web-platform/meta/service-workers/service-worker/installing.https.html.ini @@ -5,4 +5,3 @@ [installing is set] expected: FAIL - diff --git a/testing/web-platform/meta/service-workers/service-worker/navigation-timing.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/navigation-timing.https.html.ini index 5b8738b73e7a..9dfaab6687b5 100644 --- a/testing/web-platform/meta/service-workers/service-worker/navigation-timing.https.html.ini +++ b/testing/web-platform/meta/service-workers/service-worker/navigation-timing.https.html.ini @@ -1,4 +1,3 @@ [navigation-timing.https.html] disabled: if os == "android": https://bugzilla.mozilla.org/show_bug.cgi?id=1499972 - diff --git a/testing/web-platform/meta/service-workers/service-worker/windowclient-navigate.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/windowclient-navigate.https.html.ini index 1a99dcd750e0..b532d9da070b 100644 --- a/testing/web-platform/meta/service-workers/service-worker/windowclient-navigate.https.html.ini +++ b/testing/web-platform/meta/service-workers/service-worker/windowclient-navigate.https.html.ini @@ -8,3 +8,28 @@ [out of scope] expected: FAIL + [invalid url (view-source://example.com)] + expected: + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [invalid url (http://[example.com\])] + expected: + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [invalid url (about:blank)] + expected: + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [invalid url (file:///)] + expected: + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + + [cross orgin url] + expected: + if debug and not webrender and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + if not debug and not webrender and not e10s and (os == "android") and (version == "Ubuntu 16.04") and (processor == "x86") and (bits == 32): FAIL + diff --git a/testing/web-platform/meta/shadow-dom/scroll-to-the-fragment-in-shadow-tree.html.ini b/testing/web-platform/meta/shadow-dom/scroll-to-the-fragment-in-shadow-tree.html.ini deleted file mode 100644 index f42ff0edf2da..000000000000 --- a/testing/web-platform/meta/shadow-dom/scroll-to-the-fragment-in-shadow-tree.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[scroll-to-the-fragment-in-shadow-tree.html] - [The user agent scroll to the fragment when there is an element with an ID exactly equal to the decoded fragid] - expected: - if os == "android": FAIL diff --git a/testing/web-platform/meta/shape-detection/idlharness.any.js.ini b/testing/web-platform/meta/shape-detection/idlharness.any.js.ini index 1edcc0bd917e..53d8a2e80228 100644 --- a/testing/web-platform/meta/shape-detection/idlharness.any.js.ini +++ b/testing/web-platform/meta/shape-detection/idlharness.any.js.ini @@ -98,6 +98,9 @@ [DetectedBarcode interface: attribute cornerPoints] expected: FAIL + [BarcodeDetector interface: operation getSupportedFormats()] + expected: FAIL + [idlharness.any.worker.html] [FaceDetector interface: existence and properties of interface object] @@ -145,3 +148,6 @@ [BarcodeDetector interface: operation detect(ImageBitmapSource)] expected: FAIL + [BarcodeDetector interface: operation getSupportedFormats()] + expected: FAIL + diff --git a/testing/web-platform/meta/signed-exchange/check-cert-request.tentative.html.ini b/testing/web-platform/meta/signed-exchange/check-cert-request.tentative.html.ini new file mode 100644 index 000000000000..c91e3e4fd16a --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/check-cert-request.tentative.html.ini @@ -0,0 +1,4 @@ +[check-cert-request.tentative.html] + [Verify that certificate request has correct parameters.] + expected: FAIL + diff --git a/testing/web-platform/meta/signed-exchange/sxg-head-request.tentative.html.ini b/testing/web-platform/meta/signed-exchange/sxg-head-request.tentative.html.ini deleted file mode 100644 index 8c7ba6014ec2..000000000000 --- a/testing/web-platform/meta/signed-exchange/sxg-head-request.tentative.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[sxg-head-request.tentative.html] - [Loading SignedHTTPExchange with HEAD request method must fail] - expected: FAIL - diff --git a/testing/web-platform/meta/signed-exchange/sxg-hsts.tentative.html.ini b/testing/web-platform/meta/signed-exchange/sxg-hsts.tentative.html.ini new file mode 100644 index 000000000000..1e7743617116 --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-hsts.tentative.html.ini @@ -0,0 +1,4 @@ +[sxg-hsts.tentative.html] + [Loading SignedHTTPExchange with an uncached header Strict-Transport-Security must fail and fallback redirect.] + expected: FAIL + diff --git a/testing/web-platform/meta/signed-exchange/sxg-non-secure-origin.tentative.html.ini b/testing/web-platform/meta/signed-exchange/sxg-non-secure-origin.tentative.html.ini new file mode 100644 index 000000000000..e163f28021b1 --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-non-secure-origin.tentative.html.ini @@ -0,0 +1,4 @@ +[sxg-non-secure-origin.tentative.html] + [Loading SignedHTTPExchange from non secure origin must fail] + expected: FAIL + diff --git a/testing/web-platform/meta/signed-exchange/sxg-noncacheable.tentative.html.ini b/testing/web-platform/meta/signed-exchange/sxg-noncacheable.tentative.html.ini new file mode 100644 index 000000000000..66140aa5a6bf --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-noncacheable.tentative.html.ini @@ -0,0 +1,4 @@ +[sxg-noncacheable.tentative.html] + [Loading SignedHTTPExchange with non-cacheable response must fail] + expected: FAIL + diff --git a/testing/web-platform/meta/signed-exchange/sxg-referrer-policy-header.tentative.https.html.ini b/testing/web-platform/meta/signed-exchange/sxg-referrer-policy-header.tentative.https.html.ini new file mode 100644 index 000000000000..19a519dc1b88 --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-referrer-policy-header.tentative.https.html.ini @@ -0,0 +1,23 @@ +[sxg-referrer-policy-header.tentative.https.html] + expected: TIMEOUT + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg?pipe=header(Referrer-Policy,origin)","expectedReferrer":"https://web-platform.test:8443/"}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg?pipe=header(Referrer-Policy,strict-origin-when-cross-origin)","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-policy-header.tentative.https.html"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg?pipe=header(Referrer-Policy,same-origin)","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-policy-header.tentative.https.html"}] + expected: TIMEOUT + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg?pipe=header(Referrer-Policy,strict-origin)","expectedReferrer":"https://web-platform.test:8443/"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg?pipe=header(Referrer-Policy,no-referrer-when-downgrade)","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-policy-header.tentative.https.html"}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg?pipe=header(Referrer-Policy,unsafe-url)","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-policy-header.tentative.https.html"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg?pipe=header(Referrer-Policy,no-referrer)","expectedReferrer":""}] + expected: FAIL + diff --git a/testing/web-platform/meta/signed-exchange/sxg-referrer-remote-physical-remote-logical.tentative.https.html.ini b/testing/web-platform/meta/signed-exchange/sxg-referrer-remote-physical-remote-logical.tentative.https.html.ini new file mode 100644 index 000000000000..1d21ec9858a0 --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-referrer-remote-physical-remote-logical.tentative.https.html.ini @@ -0,0 +1,26 @@ +[sxg-referrer-remote-physical-remote-logical.tentative.https.html] + expected: TIMEOUT + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"unsafe-url","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-remote-physical-remote-logical.tentative.https.html"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-remote-physical-remote-logical.tentative.https.html"}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"strict-origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"no-referrer-when-downgrade","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-remote-physical-remote-logical.tentative.https.html"}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: TIMEOUT + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"strict-origin-when-cross-origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"no-referrer","expectedReferrer":""}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"same-origin","expectedReferrer":""}] + expected: NOTRUN + diff --git a/testing/web-platform/meta/signed-exchange/sxg-referrer-remote-physical-same-logical.tentative.https.html.ini b/testing/web-platform/meta/signed-exchange/sxg-referrer-remote-physical-same-logical.tentative.https.html.ini new file mode 100644 index 000000000000..b5422061ca80 --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-referrer-remote-physical-same-logical.tentative.https.html.ini @@ -0,0 +1,26 @@ +[sxg-referrer-remote-physical-same-logical.tentative.https.html] + expected: TIMEOUT + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: TIMEOUT + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"no-referrer-when-downgrade","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-remote-physical-same-logical.tentative.https.html"}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"same-origin","expectedReferrer":""}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"strict-origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"strict-origin-when-cross-origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"no-referrer","expectedReferrer":""}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"unsafe-url","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-remote-physical-same-logical.tentative.https.html"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://www1.web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-remote-physical-same-logical.tentative.https.html"}] + expected: FAIL + diff --git a/testing/web-platform/meta/signed-exchange/sxg-referrer-same-physical-remote-logical.tentative.https.html.ini b/testing/web-platform/meta/signed-exchange/sxg-referrer-same-physical-remote-logical.tentative.https.html.ini new file mode 100644 index 000000000000..6fbd1860057c --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-referrer-same-physical-remote-logical.tentative.https.html.ini @@ -0,0 +1,26 @@ +[sxg-referrer-same-physical-remote-logical.tentative.https.html] + expected: TIMEOUT + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"same-origin","expectedReferrer":""}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"strict-origin-when-cross-origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: TIMEOUT + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"no-referrer","expectedReferrer":""}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"unsafe-url","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-same-physical-remote-logical.tentative.https.html"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"strict-origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-same-physical-remote-logical.tentative.https.html"}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-remote-origin.sxg","referrerPolicy":"no-referrer-when-downgrade","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-same-physical-remote-logical.tentative.https.html"}] + expected: FAIL + diff --git a/testing/web-platform/meta/signed-exchange/sxg-referrer-same-physical-same-logical.tentative.https.html.ini b/testing/web-platform/meta/signed-exchange/sxg-referrer-same-physical-same-logical.tentative.https.html.ini new file mode 100644 index 000000000000..5d2f9e79f5fd --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-referrer-same-physical-same-logical.tentative.https.html.ini @@ -0,0 +1,26 @@ +[sxg-referrer-same-physical-same-logical.tentative.https.html] + expected: TIMEOUT + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: TIMEOUT + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"same-origin","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-same-physical-same-logical.tentative.https.html"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"no-referrer","expectedReferrer":""}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"strict-origin-when-cross-origin","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-same-physical-same-logical.tentative.https.html"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"strict-origin","expectedReferrer":"https://web-platform.test:8443/"}] + expected: NOTRUN + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-same-physical-same-logical.tentative.https.html"}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"no-referrer-when-downgrade","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-same-physical-same-logical.tentative.https.html"}] + expected: FAIL + + [Referrer of SignedHTTPExchange test : {"origin":"https://web-platform.test:8443","sxg":"sxg-referrer-same-origin.sxg","referrerPolicy":"unsafe-url","expectedReferrer":"https://web-platform.test:8443/signed-exchange/sxg-referrer-same-physical-same-logical.tentative.https.html"}] + expected: NOTRUN + diff --git a/testing/web-platform/meta/signed-exchange/sxg-utf8-inner-url.tentative.html.ini b/testing/web-platform/meta/signed-exchange/sxg-utf8-inner-url.tentative.html.ini new file mode 100644 index 000000000000..07bb0169be52 --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-utf8-inner-url.tentative.html.ini @@ -0,0 +1,4 @@ +[sxg-utf8-inner-url.tentative.html] + [SignedHTTPExchange with UTF-8 inner URL] + expected: FAIL + diff --git a/testing/web-platform/meta/signed-exchange/sxg-version1b2.tentative.html.ini b/testing/web-platform/meta/signed-exchange/sxg-version1b2.tentative.html.ini new file mode 100644 index 000000000000..ef08014456dd --- /dev/null +++ b/testing/web-platform/meta/signed-exchange/sxg-version1b2.tentative.html.ini @@ -0,0 +1,4 @@ +[sxg-version1b2.tentative.html] + [Loading SignedHTTPExchange of unsupported version must fail and fallback redirect.] + expected: FAIL + diff --git a/testing/web-platform/meta/storage/estimate-usage-details-application-cache.https.tentative.html.ini b/testing/web-platform/meta/storage/estimate-usage-details-application-cache.https.tentative.html.ini new file mode 100644 index 000000000000..9023b89ada20 --- /dev/null +++ b/testing/web-platform/meta/storage/estimate-usage-details-application-cache.https.tentative.html.ini @@ -0,0 +1,4 @@ +[estimate-usage-details-application-cache.https.tentative.html] + [estimate() shows usage increase after app is cached] + expected: FAIL + diff --git a/testing/web-platform/meta/storage/estimate-usage-details-caches.https.tentative.any.js.ini b/testing/web-platform/meta/storage/estimate-usage-details-caches.https.tentative.any.js.ini new file mode 100644 index 000000000000..27f0e4e180d4 --- /dev/null +++ b/testing/web-platform/meta/storage/estimate-usage-details-caches.https.tentative.any.js.ini @@ -0,0 +1,9 @@ +[estimate-usage-details-caches.https.tentative.any.html] + [estimate() shows usage increase after large value is stored] + expected: FAIL + + +[estimate-usage-details-caches.https.tentative.any.worker.html] + [estimate() shows usage increase after large value is stored] + expected: FAIL + diff --git a/testing/web-platform/meta/storage/estimate-usage-details-service-workers.https.tentative.window.js.ini b/testing/web-platform/meta/storage/estimate-usage-details-service-workers.https.tentative.window.js.ini new file mode 100644 index 000000000000..f4655ea8f507 --- /dev/null +++ b/testing/web-platform/meta/storage/estimate-usage-details-service-workers.https.tentative.window.js.ini @@ -0,0 +1,4 @@ +[estimate-usage-details-service-workers.https.tentative.window.html] + [estimate() shows usage increase after large value is stored] + expected: FAIL + diff --git a/testing/web-platform/meta/storage/estimate-usage-details.https.tentative.any.js.ini b/testing/web-platform/meta/storage/estimate-usage-details.https.tentative.any.js.ini new file mode 100644 index 000000000000..2fe9814146a7 --- /dev/null +++ b/testing/web-platform/meta/storage/estimate-usage-details.https.tentative.any.js.ini @@ -0,0 +1,9 @@ +[estimate-usage-details.https.tentative.any.worker.html] + [estimate() resolves to dictionary with members, including usageDetails] + expected: FAIL + + +[estimate-usage-details.https.tentative.any.html] + [estimate() resolves to dictionary with members, including usageDetails] + expected: FAIL + diff --git a/testing/web-platform/meta/svg/geometry/parsing/sizing-properties-computed.svg.ini b/testing/web-platform/meta/svg/geometry/parsing/sizing-properties-computed.svg.ini new file mode 100644 index 000000000000..5a61d39d73c0 --- /dev/null +++ b/testing/web-platform/meta/svg/geometry/parsing/sizing-properties-computed.svg.ini @@ -0,0 +1,25 @@ +[sizing-properties-computed.svg] + [Property height value 'calc(50% + 60px)' computes to 'calc(50% + 60px)'] + expected: FAIL + + [Property width value 'calc(50% + 60px)' computes to 'calc(50% + 60px)'] + expected: FAIL + + [Property height value '40%' computes to '320px'] + expected: FAIL + + [resolved value is computed value when display is none] + expected: FAIL + + [Property height value 'calc(50% + 1.5em)' computes to '460px'] + expected: FAIL + + [Property width value '40%' computes to '320px'] + expected: FAIL + + [Property width value 'calc(50% + 1.5em)' computes to '460px'] + expected: FAIL + + [resolved value is computed value when display is contents] + expected: FAIL + diff --git a/testing/web-platform/meta/svg/idlharness.window.js.ini b/testing/web-platform/meta/svg/idlharness.window.js.ini index a462ddef551f..4fbd116f06f6 100644 --- a/testing/web-platform/meta/svg/idlharness.window.js.ini +++ b/testing/web-platform/meta/svg/idlharness.window.js.ini @@ -491,3 +491,12 @@ [SVGElement interface: objects.switch must inherit property "correspondingElement" with the proper type] expected: FAIL + [SVGSVGElement interface: operation createSVGTransformFromMatrix(DOMMatrix2DInit)] + expected: FAIL + + [SVGTransform interface: operation setMatrix(DOMMatrix2DInit)] + expected: FAIL + + [SVGTransformList interface: operation createSVGTransformFromMatrix(DOMMatrix2DInit)] + expected: FAIL + diff --git a/testing/web-platform/meta/trusted-types/WorkerGlobalScope-importScripts.https.html.ini b/testing/web-platform/meta/trusted-types/WorkerGlobalScope-importScripts.https.html.ini deleted file mode 100644 index 008ff2cde388..000000000000 --- a/testing/web-platform/meta/trusted-types/WorkerGlobalScope-importScripts.https.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[WorkerGlobalScope-importScripts.https.html] - [WorkerGlobalScope-importScripts] - expected: FAIL - diff --git a/testing/web-platform/meta/trusted-types/block-string-assignment-to-Element-setAttribute.tentative.html.ini b/testing/web-platform/meta/trusted-types/block-string-assignment-to-Element-setAttribute.tentative.html.ini index 7009558f420e..c881fce36ee3 100644 --- a/testing/web-platform/meta/trusted-types/block-string-assignment-to-Element-setAttribute.tentative.html.ini +++ b/testing/web-platform/meta/trusted-types/block-string-assignment-to-Element-setAttribute.tentative.html.ini @@ -1,5 +1,4 @@ [block-string-assignment-to-Element-setAttribute.tentative.html] - expected: ERROR [frame.src accepts only TrustedURL] expected: FAIL @@ -54,3 +53,12 @@ [`Element.prototype.setAttribute.SrC = string` throws.] expected: FAIL + [object.data accepts only TrustedScriptURL] + expected: FAIL + + [object.codeBase accepts only TrustedScriptURL] + expected: FAIL + + [block-string-assignment-to-Element-setAttribute] + expected: FAIL + diff --git a/testing/web-platform/meta/trusted-types/block-string-assignment-to-HTMLElement-generic.tentative.html.ini b/testing/web-platform/meta/trusted-types/block-string-assignment-to-HTMLElement-generic.tentative.html.ini index 78d8859ebb27..fb64ea21fd2a 100644 --- a/testing/web-platform/meta/trusted-types/block-string-assignment-to-HTMLElement-generic.tentative.html.ini +++ b/testing/web-platform/meta/trusted-types/block-string-assignment-to-HTMLElement-generic.tentative.html.ini @@ -63,3 +63,18 @@ [script.innerText accepts only TrustedScript] expected: FAIL + [object.data accepts only TrustedScriptURL] + expected: FAIL + + [object.codeBase accepts only TrustedScriptURL] + expected: FAIL + + [button.formAction accepts only TrustedURL] + expected: FAIL + + [input.formAction accepts only TrustedURL] + expected: FAIL + + [form.action accepts only TrustedURL] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/animation-worklet-import-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/animation-worklet-import-upgrade.https.html.ini new file mode 100644 index 000000000000..52e9d0fb6131 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/animation-worklet-import-upgrade.https.html.ini @@ -0,0 +1,61 @@ +[animation-worklet-import-upgrade.https.html] + [data: =(import)=> secure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => insecure/cross-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/animation-worklet-redirect-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/animation-worklet-redirect-upgrade.https.html.ini new file mode 100644 index 000000000000..d690eaea0f2c --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/animation-worklet-redirect-upgrade.https.html.ini @@ -0,0 +1,49 @@ +[animation-worklet-redirect-upgrade.https.html] + [insecure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [secure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [secure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin => secure/same-origin worklet] + expected: FAIL + + [insecure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [insecure/same-origin => secure/same-origin worklet] + expected: FAIL + + [secure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [secure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [secure/same-origin => insecure/same-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/animation-worklet-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/animation-worklet-upgrade.https.html.ini new file mode 100644 index 000000000000..3244a86c33f1 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/animation-worklet-upgrade.https.html.ini @@ -0,0 +1,13 @@ +[animation-worklet-upgrade.https.html] + [insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin worklet] + expected: FAIL + + [secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/audio-worklet-import-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/audio-worklet-import-upgrade.https.html.ini new file mode 100644 index 000000000000..78dd8b63e35e --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/audio-worklet-import-upgrade.https.html.ini @@ -0,0 +1,61 @@ +[audio-worklet-import-upgrade.https.html] + [data: =(import)=> secure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => insecure/cross-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/audio-worklet-redirect-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/audio-worklet-redirect-upgrade.https.html.ini new file mode 100644 index 000000000000..8f9ce927d6e7 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/audio-worklet-redirect-upgrade.https.html.ini @@ -0,0 +1,49 @@ +[audio-worklet-redirect-upgrade.https.html] + [insecure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [secure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [secure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin => secure/same-origin worklet] + expected: FAIL + + [insecure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [insecure/same-origin => secure/same-origin worklet] + expected: FAIL + + [secure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [secure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [secure/same-origin => insecure/same-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/audio-worklet-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/audio-worklet-upgrade.https.html.ini new file mode 100644 index 000000000000..34eecc413d27 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/audio-worklet-upgrade.https.html.ini @@ -0,0 +1,13 @@ +[audio-worklet-upgrade.https.html] + [insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin worklet] + expected: FAIL + + [secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/layout-worklet-import-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/layout-worklet-import-upgrade.https.html.ini new file mode 100644 index 000000000000..83599cbaa97b --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/layout-worklet-import-upgrade.https.html.ini @@ -0,0 +1,61 @@ +[layout-worklet-import-upgrade.https.html] + [data: =(import)=> secure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => insecure/cross-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/layout-worklet-redirect-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/layout-worklet-redirect-upgrade.https.html.ini new file mode 100644 index 000000000000..089aa9ae816f --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/layout-worklet-redirect-upgrade.https.html.ini @@ -0,0 +1,49 @@ +[layout-worklet-redirect-upgrade.https.html] + [insecure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [secure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [secure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin => secure/same-origin worklet] + expected: FAIL + + [insecure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [insecure/same-origin => secure/same-origin worklet] + expected: FAIL + + [secure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [secure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [secure/same-origin => insecure/same-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/layout-worklet-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/layout-worklet-upgrade.https.html.ini new file mode 100644 index 000000000000..5d72b4fee8c9 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/layout-worklet-upgrade.https.html.ini @@ -0,0 +1,13 @@ +[layout-worklet-upgrade.https.html] + [insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin worklet] + expected: FAIL + + [secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/module-worker-import-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/module-worker-import-upgrade.https.html.ini new file mode 100644 index 000000000000..f9ee0f31c0ea --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/module-worker-import-upgrade.https.html.ini @@ -0,0 +1,61 @@ +[module-worker-import-upgrade.https.html] + [data: =(import)=> secure/same-origin => insecure/cross-origin worker] + expected: FAIL + + [data: =(import)=> secure/cross-origin worker] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/cross-origin worker] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/cross-origin worker] + expected: FAIL + + [data: =(import)=> secure/same-origin => insecure/same-origin worker] + expected: FAIL + + [data: =(import)=> secure/cross-origin => insecure/same-origin worker] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/cross-origin worker] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/same-origin worker] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/same-origin worker] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/cross-origin worker] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/cross-origin worker] + expected: FAIL + + [data: =(import)=> insecure/cross-origin worker] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/cross-origin worker] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/same-origin worker] + expected: FAIL + + [data: =(import)=> insecure/same-origin worker] + expected: FAIL + + [data: =(import)=> secure/cross-origin => insecure/cross-origin worker] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/same-origin worker] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/same-origin worker] + expected: FAIL + + [data: =(import)=> secure/same-origin worker] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/same-origin worker] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/module-worker-redirect-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/module-worker-redirect-upgrade.https.html.ini new file mode 100644 index 000000000000..6c266a0b73f5 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/module-worker-redirect-upgrade.https.html.ini @@ -0,0 +1,10 @@ +[module-worker-redirect-upgrade.https.html] + [insecure/same-origin => secure/same-origin worker] + expected: FAIL + + [insecure/same-origin => insecure/same-origin worker] + expected: FAIL + + [secure/same-origin => insecure/same-origin worker] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/module-worker-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/module-worker-upgrade.https.html.ini new file mode 100644 index 000000000000..7545f9fb37d2 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/module-worker-upgrade.https.html.ini @@ -0,0 +1,4 @@ +[module-worker-upgrade.https.html] + [insecure/same-origin worker] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/paint-worklet-import-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/paint-worklet-import-upgrade.https.html.ini new file mode 100644 index 000000000000..1b3a4feb9d2c --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/paint-worklet-import-upgrade.https.html.ini @@ -0,0 +1,61 @@ +[paint-worklet-import-upgrade.https.html] + [data: =(import)=> secure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> insecure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [data: =(import)=> secure/same-origin => insecure/cross-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/paint-worklet-redirect-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/paint-worklet-redirect-upgrade.https.html.ini new file mode 100644 index 000000000000..f740aaf650af --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/paint-worklet-redirect-upgrade.https.html.ini @@ -0,0 +1,49 @@ +[paint-worklet-redirect-upgrade.https.html] + [insecure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [secure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [secure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin => secure/same-origin worklet] + expected: FAIL + + [insecure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [insecure/same-origin => secure/same-origin worklet] + expected: FAIL + + [secure/cross-origin => secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/cross-origin => secure/same-origin worklet] + expected: FAIL + + [secure/same-origin => secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [insecure/same-origin => insecure/cross-origin worklet] + expected: FAIL + + [secure/same-origin => insecure/same-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/paint-worklet-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/paint-worklet-upgrade.https.html.ini new file mode 100644 index 000000000000..7438b55b92c7 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/paint-worklet-upgrade.https.html.ini @@ -0,0 +1,13 @@ +[paint-worklet-upgrade.https.html] + [insecure/same-origin worklet] + expected: FAIL + + [secure/same-origin worklet] + expected: FAIL + + [secure/cross-origin worklet] + expected: FAIL + + [insecure/cross-origin worklet] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/worker-redirect-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/worker-redirect-upgrade.https.html.ini new file mode 100644 index 000000000000..0ffdca6ccda4 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/worker-redirect-upgrade.https.html.ini @@ -0,0 +1,10 @@ +[worker-redirect-upgrade.https.html] + [insecure/same-origin => secure/same-origin worker] + expected: FAIL + + [insecure/same-origin => insecure/same-origin worker] + expected: FAIL + + [secure/same-origin => insecure/same-origin worker] + expected: FAIL + diff --git a/testing/web-platform/meta/upgrade-insecure-requests/worker-upgrade.https.html.ini b/testing/web-platform/meta/upgrade-insecure-requests/worker-upgrade.https.html.ini new file mode 100644 index 000000000000..73181999a697 --- /dev/null +++ b/testing/web-platform/meta/upgrade-insecure-requests/worker-upgrade.https.html.ini @@ -0,0 +1,4 @@ +[worker-upgrade.https.html] + [insecure/same-origin worker] + expected: FAIL + diff --git a/testing/web-platform/meta/url/__dir__.ini b/testing/web-platform/meta/url/__dir__.ini new file mode 100644 index 000000000000..c4b2fdedd40e --- /dev/null +++ b/testing/web-platform/meta/url/__dir__.ini @@ -0,0 +1 @@ +leak-threshold: [tab:51200] diff --git a/testing/web-platform/meta/user-timing/idlharness.any.js.ini b/testing/web-platform/meta/user-timing/idlharness.any.js.ini index 324fb7aa35c1..46b3b7d3d572 100644 --- a/testing/web-platform/meta/user-timing/idlharness.any.js.ini +++ b/testing/web-platform/meta/user-timing/idlharness.any.js.ini @@ -1,2 +1,70 @@ [idlharness.https.any.serviceworker.html] expected: TIMEOUT + +[idlharness.any.html] + [PerformanceMeasure interface: attribute detail] + expected: FAIL + + [PerformanceMeasure interface: measure must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface: mark must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface object length] + expected: FAIL + + [PerformanceMark interface: attribute detail] + expected: FAIL + + +[idlharness.any.worker.html] + [PerformanceMeasure interface: attribute detail] + expected: FAIL + + [PerformanceMeasure interface: measure must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface: mark must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface object length] + expected: FAIL + + [PerformanceMark interface: attribute detail] + expected: FAIL + + +[idlharness.any.sharedworker.html] + [PerformanceMeasure interface: attribute detail] + expected: FAIL + + [PerformanceMeasure interface: measure must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface: mark must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface object length] + expected: FAIL + + [PerformanceMark interface: attribute detail] + expected: FAIL + + +[idlharness.any.serviceworker.html] + [PerformanceMeasure interface: attribute detail] + expected: FAIL + + [PerformanceMeasure interface: measure must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface: mark must inherit property "detail" with the proper type] + expected: FAIL + + [PerformanceMark interface object length] + expected: FAIL + + [PerformanceMark interface: attribute detail] + expected: FAIL + diff --git a/testing/web-platform/meta/wake-lock/wakelock-supported-by-feature-policy.html.ini b/testing/web-platform/meta/wake-lock/wakelock-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..85c4f6ef4ae2 --- /dev/null +++ b/testing/web-platform/meta/wake-lock/wakelock-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[wakelock-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise wake-lock.] + expected: FAIL + diff --git a/testing/web-platform/meta/wasm/jsapi/constructor/instantiate.any.js.ini b/testing/web-platform/meta/wasm/jsapi/constructor/instantiate.any.js.ini new file mode 100644 index 000000000000..f8eeebdbe572 --- /dev/null +++ b/testing/web-platform/meta/wasm/jsapi/constructor/instantiate.any.js.ini @@ -0,0 +1,41 @@ +[instantiate.any.html] + [exports and imports: Module argument] + expected: FAIL + + [No imports: Module argument] + expected: FAIL + + [exports and imports: BufferSource argument] + expected: FAIL + + [No imports: BufferSource argument] + expected: FAIL + + +[instantiate.any.worker.html] + [exports and imports: Module argument] + expected: FAIL + + [No imports: Module argument] + expected: FAIL + + [exports and imports: BufferSource argument] + expected: FAIL + + [No imports: BufferSource argument] + expected: FAIL + + +[instantiate.any.js] + [exports and imports: Module argument] + expected: FAIL + + [No imports: Module argument] + expected: FAIL + + [exports and imports: BufferSource argument] + expected: FAIL + + [No imports: BufferSource argument] + expected: FAIL + diff --git a/testing/web-platform/meta/wasm/jsapi/instance/constructor.any.js.ini b/testing/web-platform/meta/wasm/jsapi/instance/constructor.any.js.ini new file mode 100644 index 000000000000..c81379d601db --- /dev/null +++ b/testing/web-platform/meta/wasm/jsapi/instance/constructor.any.js.ini @@ -0,0 +1,23 @@ +[constructor.any.html] + [exports and imports] + expected: FAIL + + [No imports] + expected: FAIL + + +[constructor.any.worker.html] + [exports and imports] + expected: FAIL + + [No imports] + expected: FAIL + + +[constructor.any.js] + [exports and imports] + expected: FAIL + + [No imports] + expected: FAIL + diff --git a/testing/web-platform/meta/wasm/jsapi/module/exports.any.js.ini b/testing/web-platform/meta/wasm/jsapi/module/exports.any.js.ini new file mode 100644 index 000000000000..76076c2f167e --- /dev/null +++ b/testing/web-platform/meta/wasm/jsapi/module/exports.any.js.ini @@ -0,0 +1,14 @@ +[exports.any.html] + [exports] + expected: FAIL + + +[exports.any.worker.html] + [exports] + expected: FAIL + + +[exports.any.js] + [exports] + expected: FAIL + diff --git a/testing/web-platform/meta/wasm/jsapi/table/get-set.any.js.ini b/testing/web-platform/meta/wasm/jsapi/table/get-set.any.js.ini new file mode 100644 index 000000000000..d9355cad5e8e --- /dev/null +++ b/testing/web-platform/meta/wasm/jsapi/table/get-set.any.js.ini @@ -0,0 +1,44 @@ +[get-set.any.worker.html] + expected: ERROR + [Basic] + expected: FAIL + + [Setting out-of-bounds] + expected: FAIL + + [Growing] + expected: FAIL + + [Stray argument] + expected: FAIL + + +[get-set.any.html] + expected: ERROR + [Basic] + expected: FAIL + + [Setting out-of-bounds] + expected: FAIL + + [Growing] + expected: FAIL + + [Stray argument] + expected: FAIL + + +[get-set.any.js] + expected: ERROR + [Basic] + expected: FAIL + + [Setting out-of-bounds] + expected: FAIL + + [Growing] + expected: FAIL + + [Stray argument] + expected: FAIL + diff --git a/testing/web-platform/meta/wasm/webapi/instantiateStreaming.any.js.ini b/testing/web-platform/meta/wasm/webapi/instantiateStreaming.any.js.ini new file mode 100644 index 000000000000..bc74866cd100 --- /dev/null +++ b/testing/web-platform/meta/wasm/webapi/instantiateStreaming.any.js.ini @@ -0,0 +1,31 @@ +[instantiateStreaming.any.html] + [exports and imports] + expected: FAIL + + [No imports] + expected: FAIL + + +[instantiateStreaming.any.serviceworker.html] + [exports and imports] + expected: FAIL + + [No imports] + expected: FAIL + + +[instantiateStreaming.any.sharedworker.html] + [exports and imports] + expected: FAIL + + [No imports] + expected: FAIL + + +[instantiateStreaming.any.worker.html] + [exports and imports] + expected: FAIL + + [No imports] + expected: FAIL + diff --git a/testing/web-platform/meta/web-locks/query-order.tentative.https.any.js.ini b/testing/web-platform/meta/web-locks/query-order.tentative.https.any.js.ini deleted file mode 100644 index 968ac347c8f5..000000000000 --- a/testing/web-platform/meta/web-locks/query-order.tentative.https.any.js.ini +++ /dev/null @@ -1,43 +0,0 @@ -[query-order.tentative.https.any.worker.html] - [Held locks appear in state in order granted, including when stolen] - expected: FAIL - - [Held locks appear in state in order granted] - expected: FAIL - - [Requests appear in state in order made] - expected: FAIL - - -[query-order.tentative.https.any.html] - [Held locks appear in state in order granted, including when stolen] - expected: FAIL - - [Held locks appear in state in order granted] - expected: FAIL - - [Requests appear in state in order made] - expected: FAIL - - -[query-order.tentative.https.any.serviceworker.html] - [Held locks appear in state in order granted, including when stolen] - expected: FAIL - - [Held locks appear in state in order granted] - expected: FAIL - - [Requests appear in state in order made] - expected: FAIL - - -[query-order.tentative.https.any.sharedworker.html] - [Held locks appear in state in order granted, including when stolen] - expected: FAIL - - [Held locks appear in state in order granted] - expected: FAIL - - [Requests appear in state in order made] - expected: FAIL - diff --git a/testing/web-platform/meta/web-locks/query-ordering.tentative.https.html.ini b/testing/web-platform/meta/web-locks/query-ordering.tentative.https.html.ini new file mode 100644 index 000000000000..99cf293ac0f4 --- /dev/null +++ b/testing/web-platform/meta/web-locks/query-ordering.tentative.https.html.ini @@ -0,0 +1,5 @@ +[query-ordering.tentative.https.html] + expected: TIMEOUT + [Requests appear in state in order made.] + expected: TIMEOUT + diff --git a/testing/web-platform/meta/web-nfc/idlharness.https.window.js.ini b/testing/web-platform/meta/web-nfc/idlharness.https.window.js.ini index 03d16d9deb7f..3432bcf6fb07 100644 --- a/testing/web-platform/meta/web-nfc/idlharness.https.window.js.ini +++ b/testing/web-platform/meta/web-nfc/idlharness.https.window.js.ini @@ -98,3 +98,75 @@ [NFCWriter interface: existence and properties of interface prototype object's @@unscopables property] expected: FAIL + [NFCReadingEvent interface: existence and properties of interface prototype object] + expected: FAIL + + [NFCReader interface: attribute onerror] + expected: FAIL + + [NFCReader interface object length] + expected: FAIL + + [NFCErrorEvent interface: existence and properties of interface prototype object] + expected: FAIL + + [NFCReadingEvent interface object name] + expected: FAIL + + [NFCReadingEvent interface: existence and properties of interface object] + expected: FAIL + + [NFCReader interface: existence and properties of interface prototype object's "constructor" property] + expected: FAIL + + [NFCReader interface: operation start()] + expected: FAIL + + [NFCReadingEvent interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [NFCErrorEvent interface: existence and properties of interface object] + expected: FAIL + + [NFCReader interface: operation stop()] + expected: FAIL + + [NFCErrorEvent interface object name] + expected: FAIL + + [NFCErrorEvent interface: existence and properties of interface prototype object's "constructor" property] + expected: FAIL + + [NFCReader interface object name] + expected: FAIL + + [NFCReader interface: attribute onreading] + expected: FAIL + + [NFCReader interface: existence and properties of interface prototype object] + expected: FAIL + + [NFCReadingEvent interface: attribute message] + expected: FAIL + + [NFCErrorEvent interface: attribute error] + expected: FAIL + + [NFCReadingEvent interface object length] + expected: FAIL + + [NFCReadingEvent interface: existence and properties of interface prototype object's "constructor" property] + expected: FAIL + + [NFCErrorEvent interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [NFCReader interface: existence and properties of interface object] + expected: FAIL + + [NFCReader interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [NFCErrorEvent interface object length] + expected: FAIL + diff --git a/testing/web-platform/meta/web-share/canShare-files.https.html.ini b/testing/web-platform/meta/web-share/canShare-files.https.html.ini new file mode 100644 index 000000000000..dcc56aa70812 --- /dev/null +++ b/testing/web-platform/meta/web-share/canShare-files.https.html.ini @@ -0,0 +1,16 @@ +[canShare-files.https.html] + [canShare with repeated file] + expected: FAIL + + [canShare with single file list] + expected: FAIL + + [canShare with file list and url] + expected: FAIL + + [canShare with file list] + expected: FAIL + + [canShare with empty file list] + expected: FAIL + diff --git a/testing/web-platform/meta/web-share/canShare.https.html.ini b/testing/web-platform/meta/web-share/canShare.https.html.ini new file mode 100644 index 000000000000..a855a586b2a0 --- /dev/null +++ b/testing/web-platform/meta/web-share/canShare.https.html.ini @@ -0,0 +1,52 @@ +[canShare.https.html] + [canShare with unexpected field] + expected: FAIL + + [canShare with URL having no scheme] + expected: FAIL + + [canShare with an invalid URL] + expected: FAIL + + [canShare with number] + expected: FAIL + + [canShare with attribute undefined is equivalent to omitting the attribute] + expected: FAIL + + [canShare with a dictionary containing only surplus fields] + expected: FAIL + + [canShare with a null argument (same as empty dictionary)] + expected: FAIL + + [canShare with data URL] + expected: FAIL + + [canShare with title] + expected: FAIL + + [canShare with a undefined argument (same as empty dictionary)] + expected: FAIL + + [canShare with object] + expected: FAIL + + [canShare with null attribute] + expected: FAIL + + [canShare with an empty dictionary] + expected: FAIL + + [canShare with no arguments (same as empty dictionary)] + expected: FAIL + + [canShare with text] + expected: FAIL + + [canShare with empty URL] + expected: FAIL + + [canShare with URL] + expected: FAIL + diff --git a/testing/web-platform/meta/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-playbackrate-zero.html.ini b/testing/web-platform/meta/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-playbackrate-zero.html.ini index b58e914c17b3..f5d1567c4801 100644 --- a/testing/web-platform/meta/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-playbackrate-zero.html.ini +++ b/testing/web-platform/meta/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-playbackrate-zero.html.ini @@ -8,3 +8,15 @@ [# AUDIT TASK RUNNER FINISHED: 1 out of 1 tasks were failed.] expected: FAIL + [# AUDIT TASK RUNNER FINISHED: 2 out of 2 tasks were failed.] + expected: FAIL + + [< [subsample start with playback rate 0\] 2 out of 2 assertions were failed.] + expected: FAIL + + [X output[0:27\]: Expected 0 for all values but found 1 unexpected values: \n\tIndex\tActual\n\t[27\]\t5] + expected: FAIL + + [X output[28:\]: Expected 5 for all values but found 8164 unexpected values: \n\tIndex\tActual\n\t[0\]\t6\n\t[1\]\t7\n\t[2\]\t8\n\t[3\]\t9\n\t...and 8160 more errors.] + expected: FAIL + diff --git a/testing/web-platform/meta/webaudio/the-audio-api/the-audionode-interface/audionode-channel-rules.html.ini b/testing/web-platform/meta/webaudio/the-audio-api/the-audionode-interface/audionode-channel-rules.html.ini new file mode 100644 index 000000000000..cc14efe48dcc --- /dev/null +++ b/testing/web-platform/meta/webaudio/the-audio-api/the-audionode-interface/audionode-channel-rules.html.ini @@ -0,0 +1,4 @@ +[audionode-channel-rules.html] + [\n audionode-channel-rules.html\n ] + expected: FAIL + diff --git a/testing/web-platform/meta/webaudio/the-audio-api/the-audioparam-interface/audioparam-close.html.ini b/testing/web-platform/meta/webaudio/the-audio-api/the-audioparam-interface/audioparam-close.html.ini new file mode 100644 index 000000000000..d8f5c33cc76e --- /dev/null +++ b/testing/web-platform/meta/webaudio/the-audio-api/the-audioparam-interface/audioparam-close.html.ini @@ -0,0 +1,16 @@ +[audioparam-close.html] + [# AUDIT TASK RUNNER FINISHED: 2 out of 2 tasks were failed.] + expected: FAIL + + [< [interpolation\] 1 out of 7 assertions were failed.] + expected: FAIL + + [X output[0\] is not equal to 10. Got 3.4028234663852886e+38.] + expected: FAIL + + [< [no-nan\] 1 out of 5 assertions were failed.] + expected: FAIL + + [X output[1\] is not close to 1.1342744887950962e+38 within a relative error of 0 (RelErr=2). Got 3.4028234663852886e+38.] + expected: FAIL + diff --git a/testing/web-platform/meta/webaudio/the-audio-api/the-stereopanner-interface/stereopannernode-panning.html.ini b/testing/web-platform/meta/webaudio/the-audio-api/the-stereopanner-interface/stereopannernode-panning.html.ini new file mode 100644 index 000000000000..8c5dba68b12a --- /dev/null +++ b/testing/web-platform/meta/webaudio/the-audio-api/the-stereopanner-interface/stereopannernode-panning.html.ini @@ -0,0 +1,13 @@ +[stereopannernode-panning.html] + [< [stereo-test\] 2 out of 4 assertions were failed.] + expected: FAIL + + [X Stereo: Right channel error magnitude is not less than or equal to 9.8015e-8. Got 1.0266453775997775e-7.] + expected: FAIL + + [X Stereo: Left channel error magnitude is not less than or equal to 9.8015e-8. Got 1.284317301397664e-7.] + expected: FAIL + + [# AUDIT TASK RUNNER FINISHED: 1 out of 2 tasks were failed.] + expected: FAIL + diff --git a/testing/web-platform/meta/webauthn/createcredential-badargs-challenge.https.html.ini b/testing/web-platform/meta/webauthn/createcredential-badargs-challenge.https.html.ini index 7cd22ccb3bed..245033e5d2b1 100644 --- a/testing/web-platform/meta/webauthn/createcredential-badargs-challenge.https.html.ini +++ b/testing/web-platform/meta/webauthn/createcredential-badargs-challenge.https.html.ini @@ -1,7 +1,6 @@ [createcredential-badargs-challenge.https.html] expected: if os == "android": OK - TIMEOUT [Bad challenge: challenge is empty ArrayBuffer] expected: if os == "android": FAIL diff --git a/testing/web-platform/meta/webdriver/tests/perform_actions/key_events.py.ini b/testing/web-platform/meta/webdriver/tests/perform_actions/key_events.py.ini new file mode 100644 index 000000000000..3188cfb986e4 --- /dev/null +++ b/testing/web-platform/meta/webdriver/tests/perform_actions/key_events.py.ini @@ -0,0 +1,22 @@ +[key_events.py] + [test_special_key_sends_keydown[NUMPAD4-expected22\]] + expected: FAIL + + [test_special_key_sends_keydown[NUMPAD5-expected61\]] + expected: FAIL + + [test_special_key_sends_keydown[SUBTRACT-expected16\]] + expected: FAIL + + [test_special_key_sends_keydown[PAGE_UP-expected6\]] + expected: FAIL + + [test_special_key_sends_keydown[ADD-expected40\]] + expected: FAIL + + [test_special_key_sends_keydown[SEPARATOR-expected66\]] + expected: FAIL + + [test_special_key_sends_keydown[PAGE_DOWN-expected30\]] + expected: FAIL + diff --git a/testing/web-platform/meta/webrtc-quic/RTCQuicTransport.https.html.ini b/testing/web-platform/meta/webrtc-quic/RTCQuicTransport.https.html.ini index 54941401cb69..1bb70f922d8d 100644 --- a/testing/web-platform/meta/webrtc-quic/RTCQuicTransport.https.html.ini +++ b/testing/web-platform/meta/webrtc-quic/RTCQuicTransport.https.html.ini @@ -47,3 +47,63 @@ [start() with a non-started RTCIceTransport later changes state to 'connecting' once the RTCIceTransport.start() is called.] expected: FAIL + [connect() changes state to 'connecting'.] + expected: FAIL + + [getStats() promises rejected with InvalidStateError if RTCIceTransport calls stop() before being fulfilled.] + expected: FAIL + + [getStats() promises immediately rejected with InvalidStateError if called before 'connecting'.] + expected: FAIL + + [connect() throws after stop().] + expected: FAIL + + [getStats() promises rejected with InvalidStateError if stop() is called before being fulfilled.] + expected: FAIL + + [listen() throws if already called listen().] + expected: FAIL + + [Two separate stats returned by getStats() give different timestamps.] + expected: FAIL + + [connect() throws if already called connect().] + expected: FAIL + + [getStats() promises immediately rejected if called after'closed' state.] + expected: FAIL + + [Cannot mutate key retrieved from getKey().] + expected: FAIL + + [getStats() returns proper stream counts after creating streams.] + expected: FAIL + + [listen() throws if called after RTCIceTransport has stopped.] + expected: FAIL + + [listen() throws if given an empty key.] + expected: FAIL + + [Stats returned by getStats() are present.] + expected: FAIL + + [connect() throws if called after RTCIceTransport has stopped.] + expected: FAIL + + [listen() throws if already called connect().] + expected: FAIL + + [listen() throws after stop().] + expected: FAIL + + [listen() changes state to 'connecting'.] + expected: FAIL + + [connect() throws if already called listen().] + expected: FAIL + + [RTCQuicTransport.getKey() attribute is 16 bytes.] + expected: FAIL + diff --git a/testing/web-platform/meta/webrtc-stats/getStats-remote-candidate-address.html.ini b/testing/web-platform/meta/webrtc-stats/getStats-remote-candidate-address.html.ini new file mode 100644 index 000000000000..98a69569be30 --- /dev/null +++ b/testing/web-platform/meta/webrtc-stats/getStats-remote-candidate-address.html.ini @@ -0,0 +1,4 @@ +[getStats-remote-candidate-address.html] + [Do not expose in stats remote addresses that are not known to be already exposed to JS] + expected: FAIL + diff --git a/testing/web-platform/meta/webrtc/RTCDtlsTransport-state.html.ini b/testing/web-platform/meta/webrtc/RTCDtlsTransport-state.html.ini new file mode 100644 index 000000000000..80d47a42cb7a --- /dev/null +++ b/testing/web-platform/meta/webrtc/RTCDtlsTransport-state.html.ini @@ -0,0 +1,13 @@ +[RTCDtlsTransport-state.html] + [DTLS transport goes to connected state and transmits closing event] + expected: FAIL + + [close() causes the other end's DTLS transport to close] + expected: FAIL + + [DTLS transport goes to connected state] + expected: FAIL + + [close() causes the local transport to close immediately] + expected: FAIL + diff --git a/testing/web-platform/meta/webrtc/RTCRtpReceiver-getSynchronizationSources.https.html.ini b/testing/web-platform/meta/webrtc/RTCRtpReceiver-getSynchronizationSources.https.html.ini index fbeececa3149..e100da493f42 100644 --- a/testing/web-platform/meta/webrtc/RTCRtpReceiver-getSynchronizationSources.https.html.ini +++ b/testing/web-platform/meta/webrtc/RTCRtpReceiver-getSynchronizationSources.https.html.ini @@ -1,4 +1,26 @@ [RTCRtpReceiver-getSynchronizationSources.https.html] + expected: TIMEOUT [getContributingSources() should return list of CSRC after connection is established] expected: FAIL + [[video\] RTCRtpSynchronizationSource.timestamp is a number] + expected: NOTRUN + + [[audio-only\] RTCRtpSynchronizationSource.voiceActivityFlag is a boolean] + expected: NOTRUN + + [[video\] getSynchronizationSources() does not contain SSRCs older than 10 seconds] + expected: NOTRUN + + [[video\] getSynchronizationSources() eventually returns a non-empty list] + expected: TIMEOUT + + [[video\] RTCRtpSynchronizationSource.timestamp is comparable to performance.timeOrigin + performance.now()] + expected: NOTRUN + + [[audio-only\] RTCRtpSynchronizationSource.audioLevel is a number [0, 1\]] + expected: NOTRUN + + [[video\] RTCRtpSynchronizationSource.source is a number] + expected: NOTRUN + diff --git a/testing/web-platform/meta/webrtc/RTCRtpTransceiver-stop.html.ini b/testing/web-platform/meta/webrtc/RTCRtpTransceiver-stop.html.ini new file mode 100644 index 000000000000..8b5614ded206 --- /dev/null +++ b/testing/web-platform/meta/webrtc/RTCRtpTransceiver-stop.html.ini @@ -0,0 +1,4 @@ +[RTCRtpTransceiver-stop.html] + [A stopped sendonly transceiver should generate an inactive m-section in the offer] + expected: FAIL + diff --git a/testing/web-platform/meta/webrtc/RTCTrackEvent-fire.html.ini b/testing/web-platform/meta/webrtc/RTCTrackEvent-fire.html.ini new file mode 100644 index 000000000000..2224d85c22f9 --- /dev/null +++ b/testing/web-platform/meta/webrtc/RTCTrackEvent-fire.html.ini @@ -0,0 +1,8 @@ +[RTCTrackEvent-fire.html] + expected: TIMEOUT + [Applying a remote description with a new msid should trigger firing an event with populated streams] + expected: TIMEOUT + + [Applying a remote description with removed msid should trigger firing a removetrack event on the corresponding stream] + expected: FAIL + diff --git a/testing/web-platform/meta/webrtc/__dir__.ini b/testing/web-platform/meta/webrtc/__dir__.ini index 8efc0a7c5460..a51ff4baf962 100644 --- a/testing/web-platform/meta/webrtc/__dir__.ini +++ b/testing/web-platform/meta/webrtc/__dir__.ini @@ -1,3 +1,3 @@ prefs: [media.navigator.permission.disabled:true, media.navigator.streams.fake:true] -lsan-allowed: [AddTrack, Alloc, AllocateObjectBuffer, AllocateProtoAndIfaceCache, AsyncFunctionPromiseReactionJob, AsyncFunctionResume, AtomizeAndCopyChars, AtomizeAndCopyCharsFromLookup, AttemptToExecute, Call, CallFromStack, CallGetter, CallJSNative, CallResolveOp, CloneObject, CompileLazyFunctionImpl, CompileSourceBuffer, CopyScopeData, CreateNativeGlobalForInner, Define, DefineDataProperty, DoGetOrCreateDOMReflector, EnsureInnerWindow, EnterJit, EntrySlotOrCreate, Evaluate, ExecuteInExtensibleLexicalEnvironment, ExecuteScript, FinishSlowJSInitIfMoreThanOneOwner, GatherAndConvertResults, GetDocument, GetIDPrototype, GetNameOperation, GetProperty, GetPropertyOperation, GetProtoObjectHandle, HandleEvent, InternalConstruct, Interpret, InvokeMethod, JS::Call, JS::CloneAndExecuteScript, JS::CompileUtf8ForNonSyntacticScope, JS::EvaluateUtf8, JSFunction::createScriptForLazilyInterpretedFunction, JSRuntime::cloneSelfHostedFunctionScript, JSRuntime::initSelfHosting, JSScript::createPrivateScriptData, JSScript::fullyInitFromEmitter, JS_CallFunctionValue, JS_ResolveStandardClass, LookupOwnPropertyInline, MakeFlatStringForAtomization, MakeRefPtr, MakeUnique, Malloc, NS_ProcessNextEvent, NativeDefineDataProperty, NewObjectWithClassProto, NewStringCopyUTF8Z, NewStringDeflated, NextEnvironmentShape, PromiseConstructor, ProtoAndIfaceCache, ReadStructuredClone, Realloc, ReceiveMessage, RunHandler, RunInternal, SetExistingProperty, SetNonexistentProperty, SetRemoteDescription, SharedStub, TraceWholeCell, Wrap, XDRTrailingName, XPCConvert::NativeInterface2JSObject, XPCJSContext::AfterProcessTask, XPCNativeInterface::NewInstance, XPC_WN_Helper_Resolve, XRE_InitChildProcess, XRE_RunAppShell, _M_begin, accept, addDataProperty, alloc::alloc::realloc, alloc_system::platform::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$alloc_system..System$GT$::alloc, alloc_system::platform::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$alloc_system..System$GT$::realloc, allocate, already_AddRefed, apply, applyImpl, assignExprWithoutYieldOrAwait, callMain, createFrameFromLookup, createObject, createScriptSource, emitInitializer, emitLexicalScopeBody, emitStatementList, ensureConstructor, functionDelazifying, inlinedGetChild, innerFunction, internBodyScope, js::Allocate, js::Call, js::CallSelfHostedFunction, js::CloneFunctionAndScript, js::CloneScriptIntoFunction, js::CreateThisForFunctionWithProto, js::CrossCompartmentWrapper::set, js::DefineDataProperty, js::DefineFunctions, js::Execute, js::ExecuteInJSMEnvironment, js::ExecuteKernel, js::FetchName, js::FunctionScope::create, js::GetEnvironmentName, js::GetProperty, js::GlobalObject::resolveConstructor, js::HashableValue::setValue, js::HelperThread::threadLoop, js::InitMathClass, js::InternalCallOrConstruct, js::LazyScript::CreateRaw, js::LexicalScope::create, js::MapObject::set, js::NativeDefineProperty, js::NativeGetExistingProperty, js::NativeSetProperty, js::ObjectGroup::defaultNewGroup, js::PropertyTree::getChild, js::Proxy::has, js::RunScript, js::SavedStacks::getOrCreateSavedFrame, js::ScriptParseTask::parse, js::SetPropertyIgnoringNamedGetter, js::Shape::hashify, js::StringBuffer::finishAtom, js::WrapAsyncFunction, js::XDRState, js::detail::ThreadTrampoline, js::frontend::BytecodeEmitter::emitArguments, js::frontend::BytecodeEmitter::emitAssignment, js::frontend::BytecodeEmitter::emitCallOrNew, js::frontend::BytecodeEmitter::emitCalleeAndThis, js::frontend::BytecodeEmitter::emitClass, js::frontend::BytecodeEmitter::emitConditionalExpression, js::frontend::BytecodeEmitter::emitExpressionStatement, js::frontend::BytecodeEmitter::emitFunction, js::frontend::BytecodeEmitter::emitFunctionBody, js::frontend::BytecodeEmitter::emitFunctionFormalParametersAndBody, js::frontend::BytecodeEmitter::emitFunctionScript, js::frontend::BytecodeEmitter::emitHoistedFunctionsInList, js::frontend::BytecodeEmitter::emitLexicalScope, js::frontend::BytecodeEmitter::emitObject, js::frontend::BytecodeEmitter::emitPropertyList, js::frontend::BytecodeEmitter::emitScript, js::frontend::BytecodeEmitter::emitSingleDeclaration, js::frontend::BytecodeEmitter::emitTree, js::frontend::CompileGlobalScript, js::frontend::GeneralParser, js::frontend::NameFunctions, js::frontend::ParseNodeVisitor, js::frontend::Parser, js::frontend::ScriptCompiler, js::frontend::SourceAwareCompiler, js::frontend::TokenStreamSpecific, js::fun_call, js::jit::DoGetIntrinsicFallback, js::jit::InterpretResume, js::jit::InvokeFunction, js_arena_realloc, js_pod_arena_malloc, main, make_pod_array, make_unique, maybeCreateTableForLookup, maybe_pod_malloc, maybe_pod_realloc, mozJSComponentLoader::ExtractExports, mozJSComponentLoader::Import, mozJSComponentLoader::ImportInto, mozJSComponentLoader::ObjectForLocation, mozilla::CycleCollectedJSContext::PerformMicroTaskCheckPoint, mozilla::DOMEventTargetHelper::DispatchEvent, mozilla::EventDispatcher::Dispatch, mozilla::EventTargetChainItem::HandleEvent, mozilla::JsepAudioCodecDescription::Clone, mozilla::JsepSessionImpl::GetTransceiverForRemote, mozilla::JsepTrack::CreateEncodings, mozilla::PeerConnectionImpl::SetLocalDescription, mozilla::PeerConnectionMedia::AddTransceiver, mozilla::PromiseJobRunnable::Run, mozilla::Result, mozilla::SchedulerGroup::Runnable::Run, mozilla::SupportsWeakPtr, mozilla::TransceiverImpl::SyncWithJS, mozilla::WeakPtr, mozilla::dom::, mozilla::dom::ChromeUtils::GenerateQI, mozilla::dom::ChromeUtils::Import, mozilla::dom::ChromeUtils_Binding::import, mozilla::dom::ContentChild::RecvLoadProcessScript, mozilla::dom::ContentFrameMessageManager_Binding::get_content, mozilla::dom::ContentProcessMessageManager::LoadScript, mozilla::dom::CreateInterfaceObjects, mozilla::dom::Document::UnblockOnload, mozilla::dom::Event::ConstructorInit, mozilla::dom::ExecuteCompiledScript, mozilla::dom::Function::Call, mozilla::dom::GetPerInterfaceObjectHandle, mozilla::dom::InitIds, mozilla::dom::Location_Binding::set_href, mozilla::dom::MessageListener::ReceiveMessage, mozilla::dom::PBrowserChild::OnMessageReceived, mozilla::dom::PContentChild::OnMessageReceived, mozilla::dom::PeerConnectionImpl_Binding::setLocalDescription, mozilla::dom::PeerConnectionObserverJSImpl::OnSetRemoteDescriptionSuccess, mozilla::dom::PeerConnectionObserverJSImpl::OnStateChange, mozilla::dom::Performance::CreateForMainThread, mozilla::dom::Performance::WrapObject, mozilla::dom::PerformanceMainThread::Timing, mozilla::dom::PerformanceTiming::PerformanceTiming, mozilla::dom::PromiseJobCallback::Call, mozilla::dom::RTCPeerConnection::Constructor, mozilla::dom::RTCPeerConnectionJSImpl::AddTrack, mozilla::dom::RTCPeerConnection_Binding::setRemoteDescription_promiseWrapper, mozilla::dom::RTCRtpReceiver::_Create, mozilla::dom::RTCRtpReceiverJSImpl::ProcessTrackAdditionsAndRemovals, mozilla::dom::RTCRtpSender::_Create, mozilla::dom::RTCRtpTransceiver::_Create, mozilla::dom::RTCRtpTransceiverJSImpl::Sync, mozilla::dom::RTCTrackEvent::Constructor, mozilla::dom::ScriptLoader::ProcessInlineScript, mozilla::dom::ScriptLoader::ProcessRequest, mozilla::dom::ScriptLoader::ProcessScriptElement, mozilla::dom::TabChildBase::GetPresShell, mozilla::dom::TimeoutExecutor::MaybeExecute, mozilla::dom::TimeoutManager::RunTimeout, mozilla::dom::ToJSValue, mozilla::dom::WebIDLGlobalNameHash::DefineIfEnabled, mozilla::dom::Window_Binding::ClearCachedDocumentValue, mozilla::dom::ipc::SharedMap::Entry::Read, mozilla::dom::module_getter::ModuleGetter, mozilla::ipc::MessageChannel::DispatchAsyncMessage, mozilla::ipc::MessageChannel::DispatchMessage, mozilla::ipc::MessageChannel::MessageTask::Run, mozilla::ipc::MessageChannel::RunMessage, mozilla::ipc::MessagePump::Run, mozilla::layers::PaintThread::Shutdown, mozilla::net::HttpChannelChild::DoOnStartRequest, mozilla::net::HttpChannelChild::OnStopRequest, mozilla::net::nsLoadGroup::RemoveRequest, mozilla::net::nsStandardURL::TemplatedMutator, nsAppStartupNotifier::NotifyObservers, nsBaseAppShell::Run, nsContentUtils::RemoveScriptBlocker, nsDocLoader::DoFireOnStateChange, nsDocLoader::OnSecurityChange, nsDocLoader::OnStopRequest, nsDocShell::Embed, nsDocShell::EndPageLoad, nsDocShell::EnsureContentViewer, nsDocShell::InternalLoad, nsDocShell::LoadURI, nsDocShell::SetupNewViewer, nsDocumentOpenInfo::DispatchContent, nsDocumentViewer::LoadComplete, nsGlobalWindowInner::InnerSetNewDocument, nsGlobalWindowOuter::SetNewDocument, nsHtml5ExecutorReflusher::Run, nsMessageManagerScriptExecutor::LoadScriptInternal, nsPIDOMWindowOuter::MaybeCreateDoc, nsSecureBrowserUIImpl::OnLocationChange, nsTString, nsThread::ProcessNextEvent, nsWebBrowser::SetDocShell, nsXPCWrappedJSClass::CallMethod, nsXPConnect::InitStatics, onGMPReady, operator, orExpr, peekToken, pod_malloc, putNew, reserve, resolveFun, selectors::parser::parse_compound_selector_list, setLastProperty, start_thread, style::gecko::selector_parser::_$LT$impl$u20$selectors..parser..Parser$LT$$u27$i$GT$$u20$for$u20$style..selector_parser..SelectorParser$LT$$u27$a$GT$$GT$::parse_non_ts_functional_pseudo_class, traceSlots, traverse, trySyntaxParseInnerFunction, unknown stack, updateSlotsForSpan, xpc::CloneInto, xpc::DOMXrayTraits::resolveOwnProperty, xpc::XrayWrapper, xpcModuleCtor] +lsan-allowed: [AddTrack, Alloc, AllocateObjectBuffer, AllocateProtoAndIfaceCache, AsyncFunctionPromiseReactionJob, AsyncFunctionResume, AtomizeAndCopyChars, AtomizeAndCopyCharsFromLookup, AttemptToExecute, Call, CallFromStack, CallGetter, CallJSNative, CallResolveOp, CloneObject, CompileLazyFunctionImpl, CompileSourceBuffer, CompileUtf8, CopyScopeData, Create, CreateNativeGlobalForInner, CreateWithInheritedAttributes, Define, DefineDataProperty, DoGetOrCreateDOMReflector, EnsureInnerWindow, EnterJit, EntrySlotOrCreate, Evaluate, ExecuteInExtensibleLexicalEnvironment, ExecuteScript, FinishSlowJSInitIfMoreThanOneOwner, GatherAndConvertResults, GetDocument, GetIDPrototype, GetNameOperation, GetProperty, GetPropertyOperation, GetProtoObjectHandle, HandleEvent, InternalConstruct, Interpret, InvokeMethod, JS::Call, JS::CloneAndExecuteScript, JS::CompileUtf8ForNonSyntacticScope, JS::Evaluate, JS::EvaluateUtf8, JS::InitSelfHostedCode, JSFunction::createScriptForLazilyInterpretedFunction, JSRuntime::cloneSelfHostedFunctionScript, JSRuntime::initSelfHosting, JSScript::createPrivateScriptData, JSScript::fullyInitFromEmitter, JS_CallFunctionValue, JS_ResolveStandardClass, LookupOwnPropertyInline, MakeFlatStringForAtomization, MakeRefPtr, MakeUnique, Malloc, NS_ProcessNextEvent, NativeDefineDataProperty, NewObjectWithClassProto, NewStringCopyUTF8Z, NewStringDeflated, NextEnvironmentShape, PromiseConstructor, ProtoAndIfaceCache, ReadStructuredClone, Realloc, ReceiveMessage, RunHandler, RunInternal, SetExistingProperty, SetNonexistentProperty, SetRemoteDescription, SharedStub, TraceWholeCell, Wrap, XDRTrailingName, XPCConvert::NativeInterface2JSObject, XPCJSContext::AfterProcessTask, XPCNativeInterface::NewInstance, XPC_WN_Helper_Resolve, XRE_InitChildProcess, XRE_RunAppShell, _M_begin, accept, addDataProperty, alloc::alloc::realloc, alloc_system::platform::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$alloc_system..System$GT$::alloc, alloc_system::platform::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$alloc_system..System$GT$::realloc, allocate, already_AddRefed, apply, applyImpl, assignExprWithoutYieldOrAwait, callMain, create, createFrameFromLookup, createObject, createScriptSource, emitInitializer, emitLexicalScopeBody, emitStatementList, ensureConstructor, functionDelazifying, inlinedGetChild, innerFunction, internBodyScope, js::Allocate, js::Atomize, js::BaseProxyHandler::set, js::Call, js::CallSelfHostedFunction, js::CloneFunctionAndScript, js::CloneScriptIntoFunction, js::CreateThisForFunctionWithProto, js::CrossCompartmentWrapper::set, js::DefineDataProperty, js::DefineFunctions, js::Execute, js::ExecuteInJSMEnvironment, js::ExecuteKernel, js::FetchName, js::FunctionScope::create, js::GetEnvironmentName, js::GetProperty, js::GlobalObject::createObject, js::GlobalObject::resolveConstructor, js::HashableValue::setValue, js::HelperThread::threadLoop, js::InitMathClass, js::InternalCallOrConstruct, js::LazyScript::CreateRaw, js::LexicalScope::create, js::MapObject::set, js::NativeDefineProperty, js::NativeGetExistingProperty, js::NativeSetProperty, js::Nursery::collectToFixedPoint, js::ObjectGroup::defaultNewGroup, js::PropertyTree::getChild, js::Proxy::has, js::RunScript, js::SavedStacks::getOrCreateSavedFrame, js::ScriptParseTask::parse, js::SetPropertyIgnoringNamedGetter, js::Shape::hashify, js::StringBuffer::finishAtom, js::WrapAsyncFunction, js::XDRState, js::detail::ThreadTrampoline, js::frontend::BytecodeEmitter::emitArguments, js::frontend::BytecodeEmitter::emitAssignment, js::frontend::BytecodeEmitter::emitCallOrNew, js::frontend::BytecodeEmitter::emitCalleeAndThis, js::frontend::BytecodeEmitter::emitClass, js::frontend::BytecodeEmitter::emitConditionalExpression, js::frontend::BytecodeEmitter::emitExpressionStatement, js::frontend::BytecodeEmitter::emitFunction, js::frontend::BytecodeEmitter::emitFunctionBody, js::frontend::BytecodeEmitter::emitFunctionFormalParametersAndBody, js::frontend::BytecodeEmitter::emitFunctionScript, js::frontend::BytecodeEmitter::emitHoistedFunctionsInList, js::frontend::BytecodeEmitter::emitLexicalScope, js::frontend::BytecodeEmitter::emitObject, js::frontend::BytecodeEmitter::emitPropertyList, js::frontend::BytecodeEmitter::emitScript, js::frontend::BytecodeEmitter::emitSingleDeclaration, js::frontend::BytecodeEmitter::emitTree, js::frontend::CompileGlobalScript, js::frontend::GeneralParser, js::frontend::NameFunctions, js::frontend::ParseNodeVisitor, js::frontend::Parser, js::frontend::ScriptCompiler, js::frontend::SourceAwareCompiler, js::frontend::TokenStreamSpecific, js::fun_call, js::jit::DoGetIntrinsicFallback, js::jit::InterpretResume, js::jit::InvokeFunction, js::jit::MaybeEnterJit, js_arena_realloc, js_pod_arena_malloc, main, make_pod_array, make_unique, maybeAlloc, maybeCreateTableForLookup, maybe_pod_malloc, maybe_pod_realloc, mozJSComponentLoader::ExtractExports, mozJSComponentLoader::Import, mozJSComponentLoader::ImportInto, mozJSComponentLoader::ObjectForLocation, mozilla::CycleCollectedJSContext::PerformMicroTaskCheckPoint, mozilla::DOMEventTargetHelper::DispatchEvent, mozilla::DOMMediaStream::AddTrackInternal, mozilla::DOMMediaStream::CreateDOMTrack, mozilla::EventDispatcher::Dispatch, mozilla::EventTargetChainItem::HandleEvent, mozilla::JsepAudioCodecDescription::Clone, mozilla::JsepSessionImpl::GetTransceiverForRemote, mozilla::JsepSessionImpl::MakeNegotiatedTransceiver, mozilla::JsepTrack::CreateEncodings, mozilla::NullPrincipalURI::Create, mozilla::PeerConnectionImpl::CreateReceiveTrack, mozilla::PeerConnectionImpl::SetLocalDescription, mozilla::PeerConnectionImpl::SetRemoteDescription, mozilla::PeerConnectionMedia::AddTransceiver, mozilla::PromiseJobRunnable::Run, mozilla::Result, mozilla::SchedulerGroup::Runnable::Run, mozilla::SupportsWeakPtr, mozilla::TransceiverImpl::SyncWithJS, mozilla::WeakPtr, mozilla::detail::HashTable, mozilla::detail::RunnableFunction, mozilla::dom::, mozilla::dom::ChromeUtils::GenerateQI, mozilla::dom::ChromeUtils::Import, mozilla::dom::ChromeUtils_Binding::import, mozilla::dom::ContentChild::RecvLoadProcessScript, mozilla::dom::ContentFrameMessageManager_Binding::get_content, mozilla::dom::ContentProcessMessageManager::LoadScript, mozilla::dom::CreateInterfaceObjects, mozilla::dom::Document::UnblockOnload, mozilla::dom::Event::ConstructorInit, mozilla::dom::ExecuteCompiledScript, mozilla::dom::Function::Call, mozilla::dom::GetPerInterfaceObjectHandle, mozilla::dom::InitIds, mozilla::dom::Location_Binding::set_href, mozilla::dom::MessageListener::ReceiveMessage, mozilla::dom::PBrowserChild::OnMessageReceived, mozilla::dom::PContentChild::OnMessageReceived, mozilla::dom::PeerConnectionImpl_Binding::setLocalDescription, mozilla::dom::PeerConnectionObserverJSImpl::OnSetRemoteDescriptionSuccess, mozilla::dom::PeerConnectionObserverJSImpl::OnStateChange, mozilla::dom::Performance::CreateForMainThread, mozilla::dom::Performance::WrapObject, mozilla::dom::PerformanceMainThread::Timing, mozilla::dom::PerformanceTiming::PerformanceTiming, mozilla::dom::PromiseJobCallback::Call, mozilla::dom::RTCPeerConnection::Constructor, mozilla::dom::RTCPeerConnectionJSImpl::AddTrack, mozilla::dom::RTCPeerConnection_Binding::setRemoteDescription_promiseWrapper, mozilla::dom::RTCRtpReceiver::_Create, mozilla::dom::RTCRtpReceiverJSImpl::ProcessTrackAdditionsAndRemovals, mozilla::dom::RTCRtpSender::_Create, mozilla::dom::RTCRtpTransceiver::_Create, mozilla::dom::RTCRtpTransceiverJSImpl::Sync, mozilla::dom::RTCTrackEvent::Constructor, mozilla::dom::ScriptLoader::ProcessInlineScript, mozilla::dom::ScriptLoader::ProcessRequest, mozilla::dom::ScriptLoader::ProcessScriptElement, mozilla::dom::TabChildBase::GetPresShell, mozilla::dom::TimeoutExecutor::MaybeExecute, mozilla::dom::TimeoutManager::RunTimeout, mozilla::dom::ToJSValue, mozilla::dom::WebIDLGlobalNameHash::DefineIfEnabled, mozilla::dom::Window_Binding::ClearCachedDocumentValue, mozilla::dom::ipc::SharedMap::Entry::Read, mozilla::dom::module_getter::ModuleGetter, mozilla::ipc::MessageChannel::DispatchAsyncMessage, mozilla::ipc::MessageChannel::DispatchMessage, mozilla::ipc::MessageChannel::MessageTask::Run, mozilla::ipc::MessageChannel::RunMessage, mozilla::ipc::MessagePump::Run, mozilla::layers::PaintThread::Shutdown, mozilla::net::HttpChannelChild::DoOnStartRequest, mozilla::net::HttpChannelChild::OnStopRequest, mozilla::net::nsLoadGroup::RemoveRequest, mozilla::net::nsStandardURL::TemplatedMutator, nsAppStartupNotifier::NotifyObservers, nsBaseAppShell::Run, nsContentUtils::RemoveScriptBlocker, nsDocLoader::DoFireOnStateChange, nsDocLoader::OnSecurityChange, nsDocLoader::OnStopRequest, nsDocShell::Embed, nsDocShell::EndPageLoad, nsDocShell::EnsureContentViewer, nsDocShell::InternalLoad, nsDocShell::LoadURI, nsDocShell::SetupNewViewer, nsDocumentOpenInfo::DispatchContent, nsDocumentViewer::LoadComplete, nsGlobalWindowInner::InnerSetNewDocument, nsGlobalWindowOuter::SetNewDocument, nsHtml5ExecutorReflusher::Run, nsMessageManagerScriptExecutor::LoadScriptInternal, nsPIDOMWindowOuter::MaybeCreateDoc, nsSecureBrowserUIImpl::OnLocationChange, nsTString, nsThread::ProcessNextEvent, nsTimerEvent::Run, nsTimerImpl::Fire, nsWebBrowser::SetDocShell, nsXPCWrappedJS::GetNewOrUsed, nsXPCWrappedJSClass::CallMethod, nsXPConnect::InitStatics, onGMPReady, operator, orExpr, peekToken, pod_malloc, putNew, reserve, resolveFun, selectors::parser::parse_compound_selector_list, setIteratedSingleton, setLastProperty, start_thread, std::sys::unix::alloc::_$LT$impl$u20$core..alloc..GlobalAlloc$u20$for$u20$std..alloc..System$GT$::alloc, style::gecko::selector_parser::_$LT$impl$u20$selectors..parser..Parser$LT$$u27$i$GT$$u20$for$u20$style..selector_parser..SelectorParser$LT$$u27$a$GT$$GT$::parse_non_ts_functional_pseudo_class, traceSlots, traverse, trySyntaxParseInnerFunction, unknown stack, updateSlotsForSpan, xpc::CloneInto, xpc::DOMXrayTraits::resolveOwnProperty, xpc::XrayWrapper, xpcModuleCtor] leak-threshold: [default:51200, tab:256000] diff --git a/testing/web-platform/meta/webrtc/protocol/missing-fields.html.ini b/testing/web-platform/meta/webrtc/protocol/missing-fields.html.ini new file mode 100644 index 000000000000..eccf5f7d6519 --- /dev/null +++ b/testing/web-platform/meta/webrtc/protocol/missing-fields.html.ini @@ -0,0 +1,7 @@ +[missing-fields.html] + [Offer description with no mid is accepted] + expected: FAIL + + [Answer description with no mid is accepted] + expected: FAIL + diff --git a/testing/web-platform/meta/websockets/__dir__.ini b/testing/web-platform/meta/websockets/__dir__.ini index bda6edeca1af..644183206241 100644 --- a/testing/web-platform/meta/websockets/__dir__.ini +++ b/testing/web-platform/meta/websockets/__dir__.ini @@ -1,3 +1,3 @@ -lsan-allowed: [Alloc, Create, Malloc, NewPage, PLDHashTable::Add, PLDHashTable::ChangeTable, Realloc, RecvOnAcknowledge, RecvOnStop, mozilla::BasePrincipal::CreateCodebasePrincipal, mozilla::SchedulerGroup::CreateEventTargetFor, mozilla::ThrottledEventQueue::Create, mozilla::WeakPtr, mozilla::dom::WebSocket::WebSocket, mozilla::dom::WorkerCSPEventListener::Create, mozilla::dom::nsIContentChild::GetConstructedEventTarget, mozilla::net::WebSocketChannelChild::RecvOnServerClose, mozilla::net::nsStandardURL::TemplatedMutator, nsAtomTable::Atomize, nsDocShell::Create] +lsan-allowed: [Alloc, Create, Malloc, NewPage, PLDHashTable::Add, PLDHashTable::ChangeTable, Realloc, RecvOnAcknowledge, RecvOnStop, mozilla::BasePrincipal::CreateCodebasePrincipal, mozilla::SchedulerGroup::CreateEventTargetFor, mozilla::ThrottledEventQueue::Create, mozilla::WeakPtr, mozilla::dom::ScriptElement::MaybeProcessScript, mozilla::dom::WebSocket::WebSocket, mozilla::dom::WorkerCSPEventListener::Create, mozilla::dom::nsIContentChild::GetConstructedEventTarget, mozilla::net::WebSocketChannelChild::RecvOnServerClose, mozilla::net::nsStandardURL::TemplatedMutator, nsAtomTable::Atomize, nsDocShell::Create] lsan-max-stack-depth: 7 -leak-threshold: [default:51200] +leak-threshold: [default:51200, tab:51200] diff --git a/testing/web-platform/meta/webstorage/set.window.js.ini b/testing/web-platform/meta/webstorage/set.window.js.ini new file mode 100644 index 000000000000..687d23b09d1a --- /dev/null +++ b/testing/web-platform/meta/webstorage/set.window.js.ini @@ -0,0 +1,7 @@ +[set.window.html] + [Setting property for key x on localStorage with accessor property on prototype] + expected: FAIL + + [Setting property for key x on sessionStorage with accessor property on prototype] + expected: FAIL + diff --git a/testing/web-platform/meta/webusb/usb-supported-by-feature-policy.html.ini b/testing/web-platform/meta/webusb/usb-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..f0fb5fcb1835 --- /dev/null +++ b/testing/web-platform/meta/webusb/usb-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[usb-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise usb.] + expected: FAIL + diff --git a/testing/web-platform/meta/webvr/webvr-supported-by-feature-policy.html.ini b/testing/web-platform/meta/webvr/webvr-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..25b0d2f6347c --- /dev/null +++ b/testing/web-platform/meta/webvr/webvr-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[webvr-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise xr.] + expected: FAIL + diff --git a/testing/web-platform/meta/webxr/idlharness.https.window.js.ini b/testing/web-platform/meta/webxr/idlharness.https.window.js.ini index 6e65ce3a6c9a..a8c45ae4e5e7 100644 --- a/testing/web-platform/meta/webxr/idlharness.https.window.js.ini +++ b/testing/web-platform/meta/webxr/idlharness.https.window.js.ini @@ -932,3 +932,42 @@ [XRRigidTransform interface: attribute matrix] expected: FAIL + [XRRenderState interface object name] + expected: FAIL + + [XRRenderState interface object length] + expected: FAIL + + [XRRenderState interface: attribute baseLayer] + expected: FAIL + + [XRReferenceSpace interface: attribute originOffset] + expected: FAIL + + [XRRenderState interface: existence and properties of interface prototype object] + expected: FAIL + + [XRRenderState interface: existence and properties of interface object] + expected: FAIL + + [XRRenderState interface: attribute depthFar] + expected: FAIL + + [XRRenderState interface: attribute depthNear] + expected: FAIL + + [XRSession interface: operation requestReferenceSpace(XRReferenceSpaceOptions)] + expected: FAIL + + [XRSession interface: operation updateRenderState(XRRenderStateInit)] + expected: FAIL + + [XRRenderState interface: existence and properties of interface prototype object's @@unscopables property] + expected: FAIL + + [XRRenderState interface: existence and properties of interface prototype object's "constructor" property] + expected: FAIL + + [XRSession interface: attribute renderState] + expected: FAIL + diff --git a/testing/web-platform/meta/webxr/navigator_xr_requestDevice.https.html.ini b/testing/web-platform/meta/webxr/navigator_xr_requestDevice.https.html.ini deleted file mode 100644 index 896509267fd2..000000000000 --- a/testing/web-platform/meta/webxr/navigator_xr_requestDevice.https.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[navigator_xr_requestDevice.https.html] - [navigator.xr.requestDevice returns a device] - expected: FAIL - diff --git a/testing/web-platform/meta/webxr/navigator_xr_requestDevice_no_device.https.html.ini b/testing/web-platform/meta/webxr/navigator_xr_requestDevice_no_device.https.html.ini deleted file mode 100644 index 07780b573709..000000000000 --- a/testing/web-platform/meta/webxr/navigator_xr_requestDevice_no_device.https.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[navigator_xr_requestDevice_no_device.https.html] - [navigator.xr.requestDevice properly rejects when there are 0 devices] - expected: FAIL - diff --git a/testing/web-platform/meta/webxr/webGLCanvasContext_create_with_xrdevice.https.html.ini b/testing/web-platform/meta/webxr/webGLCanvasContext_create_with_xrdevice.https.html.ini deleted file mode 100644 index edbceaf8f05b..000000000000 --- a/testing/web-platform/meta/webxr/webGLCanvasContext_create_with_xrdevice.https.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[webGLCanvasContext_create_with_xrdevice.https.html] - [webglCanvasContext can be created with an XRDevice] - expected: FAIL - diff --git a/testing/web-platform/meta/webxr/webGLCanvasContext_create_xrcompatible.https.html.ini b/testing/web-platform/meta/webxr/webGLCanvasContext_create_xrcompatible.https.html.ini new file mode 100644 index 000000000000..217c17396443 --- /dev/null +++ b/testing/web-platform/meta/webxr/webGLCanvasContext_create_xrcompatible.https.html.ini @@ -0,0 +1,4 @@ +[webGLCanvasContext_create_xrcompatible.https.html] + [An XR-compatible webglCanvasContext can be created] + expected: FAIL + diff --git a/testing/web-platform/meta/webxr/webGLCanvasContext_makecompatible_contextlost.https.html.ini b/testing/web-platform/meta/webxr/webGLCanvasContext_makecompatible_contextlost.https.html.ini new file mode 100644 index 000000000000..33544b450d33 --- /dev/null +++ b/testing/web-platform/meta/webxr/webGLCanvasContext_makecompatible_contextlost.https.html.ini @@ -0,0 +1,4 @@ +[webGLCanvasContext_makecompatible_contextlost.https.html] + [A lost webglCanvasContext should not be able to set xr compatibility] + expected: FAIL + diff --git a/testing/web-platform/meta/webxr/webGLCanvasContext_setdevice_contextlost.https.html.ini b/testing/web-platform/meta/webxr/webGLCanvasContext_setdevice_contextlost.https.html.ini deleted file mode 100644 index 67f50f15d6a4..000000000000 --- a/testing/web-platform/meta/webxr/webGLCanvasContext_setdevice_contextlost.https.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[webGLCanvasContext_setdevice_contextlost.https.html] - [A lost webglCanvasContext should not be able to set device] - expected: FAIL - diff --git a/testing/web-platform/meta/webxr/xrDevice_supportsSession_immersive.https.html.ini b/testing/web-platform/meta/webxr/xrDevice_supportsSession_immersive.https.html.ini index f864ea05c43c..b66cb8eb7e8f 100644 --- a/testing/web-platform/meta/webxr/xrDevice_supportsSession_immersive.https.html.ini +++ b/testing/web-platform/meta/webxr/xrDevice_supportsSession_immersive.https.html.ini @@ -2,3 +2,6 @@ [supportsSession resolves when immersive options supported] expected: FAIL + [supportsSessionMode resolves when immersive options supported] + expected: FAIL + diff --git a/testing/web-platform/meta/webxr/xrDevice_supportsSession_immersive_unsupported.https.html.ini b/testing/web-platform/meta/webxr/xrDevice_supportsSession_immersive_unsupported.https.html.ini index 18693bd0c8dc..b37ef14d871d 100644 --- a/testing/web-platform/meta/webxr/xrDevice_supportsSession_immersive_unsupported.https.html.ini +++ b/testing/web-platform/meta/webxr/xrDevice_supportsSession_immersive_unsupported.https.html.ini @@ -2,3 +2,6 @@ [supportsSession rejects when options not supported] expected: FAIL + [supportsSessionMode rejects when options not supported] + expected: FAIL + diff --git a/testing/web-platform/meta/webxr/xrDevice_supportsSession_non_immersive.https.html.ini b/testing/web-platform/meta/webxr/xrDevice_supportsSession_non_immersive.https.html.ini index b2eb7bc2f3ea..7f3179c1c75c 100644 --- a/testing/web-platform/meta/webxr/xrDevice_supportsSession_non_immersive.https.html.ini +++ b/testing/web-platform/meta/webxr/xrDevice_supportsSession_non_immersive.https.html.ini @@ -2,3 +2,6 @@ [supportsSession resolves when non-immersive options supported] expected: FAIL + [supportsSessionMode resolves when inline options supported] + expected: FAIL + diff --git a/testing/web-platform/meta/webxr/xrSession_device.https.html.ini b/testing/web-platform/meta/webxr/xrSession_device.https.html.ini deleted file mode 100644 index 2ad4c3edc961..000000000000 --- a/testing/web-platform/meta/webxr/xrSession_device.https.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[xrSession_device.https.html] - [Requested session has device set] - expected: FAIL - diff --git a/testing/web-platform/meta/webxr/xrSession_mode.https.html.ini b/testing/web-platform/meta/webxr/xrSession_mode.https.html.ini new file mode 100644 index 000000000000..538364df8f07 --- /dev/null +++ b/testing/web-platform/meta/webxr/xrSession_mode.https.html.ini @@ -0,0 +1,4 @@ +[xrSession_mode.https.html] + [Requested session has it's mode set] + expected: FAIL + diff --git a/testing/web-platform/meta/webxr/xrSession_requestAnimationFrame_getDevicePose.https.html.ini b/testing/web-platform/meta/webxr/xrSession_requestAnimationFrame_getDevicePose.https.html.ini deleted file mode 100644 index 986143d88efb..000000000000 --- a/testing/web-platform/meta/webxr/xrSession_requestAnimationFrame_getDevicePose.https.html.ini +++ /dev/null @@ -1,7 +0,0 @@ -[xrSession_requestAnimationFrame_getDevicePose.https.html] - [XRFrame getDevicePose updates on the next frame for non-immersive sessions] - expected: FAIL - - [XRFrame getDevicePose updates on the next frame for immersive sessions] - expected: FAIL - diff --git a/testing/web-platform/meta/webxr/xrSession_requestAnimationFrame_getViewerPose.https.html.ini b/testing/web-platform/meta/webxr/xrSession_requestAnimationFrame_getViewerPose.https.html.ini new file mode 100644 index 000000000000..5ee23ba9713a --- /dev/null +++ b/testing/web-platform/meta/webxr/xrSession_requestAnimationFrame_getViewerPose.https.html.ini @@ -0,0 +1,7 @@ +[xrSession_requestAnimationFrame_getViewerPose.https.html] + [XRFrame getViewerPose updates on the next frame for non-immersive sessions] + expected: FAIL + + [XRFrame getViewerPose updates on the next frame for immersive sessions] + expected: FAIL + diff --git a/testing/web-platform/meta/webxr/xrSession_requestFrameOfReference.https.html.ini b/testing/web-platform/meta/webxr/xrSession_requestFrameOfReference.https.html.ini deleted file mode 100644 index b789a8a5eeea..000000000000 --- a/testing/web-platform/meta/webxr/xrSession_requestFrameOfReference.https.html.ini +++ /dev/null @@ -1,7 +0,0 @@ -[xrSession_requestFrameOfReference.https.html] - [Immersive XRSession requestFrameOfReference returns expected objects] - expected: FAIL - - [Non-immersive XRSession requestFrameOfReference returns expected objects] - expected: FAIL - diff --git a/testing/web-platform/meta/webxr/xrSession_requestReferenceSpace.https.html.ini b/testing/web-platform/meta/webxr/xrSession_requestReferenceSpace.https.html.ini new file mode 100644 index 000000000000..eee7a9c591df --- /dev/null +++ b/testing/web-platform/meta/webxr/xrSession_requestReferenceSpace.https.html.ini @@ -0,0 +1,7 @@ +[xrSession_requestReferenceSpace.https.html] + [Non-immersive XRSession requestReferenceSpace returns expected objects] + expected: FAIL + + [Immersive XRSession requestReferenceSpace returns expected objects] + expected: FAIL + diff --git a/testing/web-platform/meta/workers/semantics/navigation/002.html.ini b/testing/web-platform/meta/workers/semantics/navigation/002.html.ini index 97bd26576858..5530a39d48f2 100644 --- a/testing/web-platform/meta/workers/semantics/navigation/002.html.ini +++ b/testing/web-platform/meta/workers/semantics/navigation/002.html.ini @@ -1 +1,2 @@ prefs: [privacy.reduceTimerPrecision:false] +[002.html] diff --git a/testing/web-platform/meta/workers/semantics/run-a-worker/003.html.ini b/testing/web-platform/meta/workers/semantics/run-a-worker/003.html.ini deleted file mode 100644 index c2c57aec558a..000000000000 --- a/testing/web-platform/meta/workers/semantics/run-a-worker/003.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[003.html] - [shared] - expected: FAIL - diff --git a/testing/web-platform/meta/xhr/formdata.htm.ini b/testing/web-platform/meta/xhr/formdata.htm.ini new file mode 100644 index 000000000000..cf8cacd24aff --- /dev/null +++ b/testing/web-platform/meta/xhr/formdata.htm.ini @@ -0,0 +1,7 @@ +[formdata.htm] + [|new FormData()| in formdata event handler should throw] + expected: FAIL + + [Newly created FormData contains entries added to "formData" IDL attribute of FormDataEvent.] + expected: FAIL + diff --git a/testing/web-platform/meta/xhr/sync-xhr-supported-by-feature-policy.html.ini b/testing/web-platform/meta/xhr/sync-xhr-supported-by-feature-policy.html.ini new file mode 100644 index 000000000000..cc8d8fcd5d0b --- /dev/null +++ b/testing/web-platform/meta/xhr/sync-xhr-supported-by-feature-policy.html.ini @@ -0,0 +1,4 @@ +[sync-xhr-supported-by-feature-policy.html] + [document.featurePolicy.features should advertise sync-xhr.] + expected: FAIL + diff --git a/testing/web-platform/mozilla/meta/dom/throttling/throttling-webaudio.window.js.ini b/testing/web-platform/mozilla/meta/dom/throttling/throttling-webaudio.window.js.ini index f9e1329e4a95..eccef6d0ebfb 100644 --- a/testing/web-platform/mozilla/meta/dom/throttling/throttling-webaudio.window.js.ini +++ b/testing/web-platform/mozilla/meta/dom/throttling/throttling-webaudio.window.js.ini @@ -2,4 +2,3 @@ type: testharness disabled: if debug: disabled - diff --git a/testing/web-platform/tests/.azure-pipelines.yml b/testing/web-platform/tests/.azure-pipelines.yml index cea8efe2719e..acfb09963915 100644 --- a/testing/web-platform/tests/.azure-pipelines.yml +++ b/testing/web-platform/tests/.azure-pipelines.yml @@ -6,26 +6,30 @@ # https://docs.microsoft.com/en-us/azure/devops/pipelines/process/variables # https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/index # -# In addition to this configuration file, the "Build pull requests from forks -# of this repository" setting must also be enabled in the Azure DevOps project: -# https://docs.microsoft.com/en-us/azure/devops/pipelines/repos/github#validate-contributions-from-forks - -trigger: none # disable builds for branches +# In addition to this configuration file, some setup in the Azure DevOps +# project is required: +# - The "Build pull requests from forks of this repository" setting must be +# enabled: https://docs.microsoft.com/en-us/azure/devops/pipelines/repos/github#validate-contributions-from-forks +# - A scheduled build needs to be set up for the the epochs/daily branch. +# - To get results from scheduled builds into wpt.fyi, a service connection +# named wpt.fyi with URL https://wpt.fyi is needed. jobs: # The affected tests jobs are unconditional for speed, as most PRs have one or # more affected tests: https://github.com/web-platform-tests/wpt/issues/13936. - job: affected_macOS displayName: 'affected tests (Safari Technology Preview)' + condition: eq(variables['Build.Reason'], 'PullRequest') pool: vmImage: 'macOS-10.13' steps: - template: tools/ci/azure/affected_tests.yml parameters: - artifactName: 'results' + artifactName: 'affected-tests' - job: affected_without_changes_macOS displayName: 'affected tests without changes (Safari Technology Preview)' + condition: eq(variables['Build.Reason'], 'PullRequest') pool: vmImage: 'macOS-10.13' steps: @@ -33,12 +37,13 @@ jobs: parameters: checkoutCommit: 'HEAD^1' affectedRange: 'HEAD@{1}' - artifactName: 'results-without-changes' + artifactName: 'affected-tests-without-changes' # The decision jobs runs `./wpt test-jobs` to determine which jobs to run, # and all following jobs wait for it to finish and depend on its output. - job: decision displayName: './wpt test-jobs' + condition: eq(variables['Build.Reason'], 'PullRequest') pool: vmImage: 'ubuntu-16.04' steps: @@ -117,6 +122,50 @@ jobs: - template: tools/ci/azure/install_chrome.yml - template: tools/ci/azure/install_firefox.yml - template: tools/ci/azure/update_hosts.yml + - template: tools/ci/azure/update_manifest.yml - template: tools/ci/azure/tox_pytest.yml parameters: directory: tools/wpt/ + +- job: all_macOS + displayName: 'all tests (Safari Technology Preview)' + condition: eq(variables['Build.Reason'], 'Schedule') + strategy: + parallel: 4 # chosen to make runtime ~2h + timeoutInMinutes: 360 + pool: + vmImage: 'macOS-10.13' + steps: + - template: tools/ci/azure/checkout.yml + - template: tools/ci/azure/pip_install.yml + parameters: + packages: virtualenv + - template: tools/ci/azure/install_fonts.yml + - template: tools/ci/azure/install_certs.yml + - template: tools/ci/azure/install_safari.yml + - template: tools/ci/azure/update_hosts.yml + - template: tools/ci/azure/update_manifest.yml + - script: no_proxy='*' ./wpt run --no-manifest-update --no-restart-on-unexpected --no-fail-on-unexpected --this-chunk=$(System.JobPositionInPhase) --total-chunks=$(System.TotalJobsInPhase) --chunk-type hash --log-wptreport $(Build.ArtifactStagingDirectory)/wpt_report_$(System.JobPositionInPhase).json --channel preview safari + displayName: 'Run tests' + - task: PublishBuildArtifacts@1 + displayName: 'Publish results' + inputs: + artifactName: 'results' + condition: succeededOrFailed() + +# The InvokeRESTAPI task can only run in a server job. +- job: all_post + displayName: 'all tests (wpt.fyi hook)' + dependsOn: all_macOS + pool: server + steps: + - task: InvokeRESTAPI@1 + displayName: 'Invoke wpt.fyi hook' + inputs: + serviceConnection: wpt.fyi + urlSuffix: /api/checks/azure/$(Build.BuildId) + - task: InvokeRESTAPI@1 + displayName: 'Invoke staging.wpt.fyi hook' + inputs: + serviceConnection: staging.wpt.fyi + urlSuffix: /api/checks/azure/$(Build.BuildId) diff --git a/testing/web-platform/tests/.gitignore b/testing/web-platform/tests/.gitignore index a71d35cb8bd8..8e3a85183ef9 100644 --- a/testing/web-platform/tests/.gitignore +++ b/testing/web-platform/tests/.gitignore @@ -15,6 +15,11 @@ node_modules/ .wptcache/ /config.json +# Files generated when regenerating pre-generated certs +/tools/certs/0*.pem +/tools/certs/index.txt* +/tools/certs/serial* + # Various OS/editor specific files *# *.sw[po] diff --git a/testing/web-platform/tests/.taskcluster.yml b/testing/web-platform/tests/.taskcluster.yml index 4a6de3b5b177..1045e07c8df8 100644 --- a/testing/web-platform/tests/.taskcluster.yml +++ b/testing/web-platform/tests/.taskcluster.yml @@ -61,7 +61,7 @@ tasks: owner: ${event.pusher.email} source: ${event.repository.url} payload: - image: harjgam/web-platform-tests:0.25 + image: harjgam/web-platform-tests:0.29 maxRunTime: 7200 artifacts: public/results: @@ -136,7 +136,7 @@ tasks: owner: ${event.pull_request.user.login}@users.noreply.github.com source: ${event.repository.url} payload: - image: harjgam/web-platform-tests:0.25 + image: harjgam/web-platform-tests:0.29 maxRunTime: 7200 artifacts: public/results: diff --git a/testing/web-platform/tests/.travis.yml b/testing/web-platform/tests/.travis.yml index 8d4152f0285c..0453132c0df8 100644 --- a/testing/web-platform/tests/.travis.yml +++ b/testing/web-platform/tests/.travis.yml @@ -43,25 +43,6 @@ matrix: os: linux python: "2.7" env: JOB=build_css SCRIPT=css/build-css-testsuites.sh - - name: "stability (Firefox Nightly)" - if: type = pull_request - os: linux - python: "2.7" - addons: - apt: - packages: - - libnss3-tools - env: JOB=stability SCRIPT=tools/ci/ci_stability.sh PRODUCT=firefox:nightly - - name: "stability (Chrome Dev)" - if: type = pull_request - os: linux - python: "2.7" - addons: - apt: - packages: - - libappindicator1 - - fonts-liberation - env: JOB=stability SCRIPT=tools/ci/ci_stability.sh PRODUCT=chrome:dev - name: "tools/ unittests (Python 2)" if: type = pull_request os: linux @@ -101,8 +82,6 @@ matrix: - env: # exclude empty env from the top-level above allow_failures: - env: JOB=build_css SCRIPT=css/build-css-testsuites.sh - - env: JOB=stability SCRIPT=tools/ci/ci_stability.sh PRODUCT=firefox:nightly - - env: JOB=stability SCRIPT=tools/ci/ci_stability.sh PRODUCT=chrome:dev script: - ./tools/ci/run.sh cache: diff --git a/testing/web-platform/tests/2dcontext/context-attributes/getContextAttributes.html b/testing/web-platform/tests/2dcontext/context-attributes/getContextAttributes.html new file mode 100644 index 000000000000..cff02ea06f6e --- /dev/null +++ b/testing/web-platform/tests/2dcontext/context-attributes/getContextAttributes.html @@ -0,0 +1,34 @@ + + + + diff --git a/testing/web-platform/tests/2dcontext/drawing-images-to-the-canvas/drawimage_svg_image_with_foreign_object_does_not_taint.html b/testing/web-platform/tests/2dcontext/drawing-images-to-the-canvas/drawimage_svg_image_with_foreign_object_does_not_taint.html new file mode 100644 index 000000000000..f29b2bf5a8a7 --- /dev/null +++ b/testing/web-platform/tests/2dcontext/drawing-images-to-the-canvas/drawimage_svg_image_with_foreign_object_does_not_taint.html @@ -0,0 +1,32 @@ + + +Draw an SVG image with a foreignObject to a canvas + + + diff --git a/testing/web-platform/tests/IndexedDB/idb-explicit-commit.any.js b/testing/web-platform/tests/IndexedDB/idb-explicit-commit.any.js index da4bd8c95269..12e56cc267a2 100644 --- a/testing/web-platform/tests/IndexedDB/idb-explicit-commit.any.js +++ b/testing/web-platform/tests/IndexedDB/idb-explicit-commit.any.js @@ -188,20 +188,17 @@ promise_test(async testCase => { }); // Txn1 should commit before txn2, even though txn2 uses commit(). const txn1 = db.transaction(['books'], 'readwrite'); - const objectStore1 = txn1.objectStore('books'); - const putRequest1 = objectStore1.put({isbn:'one', title:'title1'}); + txn1.objectStore('books').put({isbn: 'one', title: 'title1'}); const releaseTxnFunction = keepAlive(testCase, txn1, 'books'); const txn2 = db.transaction(['books'], 'readwrite'); - const objectStore2 = txn2.objectStore('books'); - const putRequest2 = objectStore2.put({isbn:'one', title:'title2'}); + txn2.objectStore('books').put({isbn:'one', title:'title2'}); txn2.commit(); // Exercise the IndexedDB transaction ordering by executing one with a // different scope. const txn3 = db.transaction(['not_books'], 'readwrite'); - const objectStore3 = txn3.objectStore('not_books'); - objectStore3.put({'title': 'not_title'}, 'key'); + txn3.objectStore('not_books').put({'title': 'not_title'}, 'key'); txn3.oncomplete = function() { releaseTxnFunction(); } @@ -210,8 +207,7 @@ promise_test(async testCase => { // Read the data back to verify that txn2 executed last. const txn4 = db.transaction(['books'], 'readonly'); - const objectStore4 = txn4.objectStore('books'); - const getRequest4 = objectStore4.get('one'); + const getRequest4 = txn4.objectStore('books').get('one'); await promiseForTransaction(testCase, txn4); assert_equals(getRequest4.result.title, 'title2'); db.close(); @@ -225,8 +221,7 @@ promise_test(async testCase => { }); // Txn1 creates the book 'one' so the 'add()' below fails. const txn1 = db.transaction(['books'], 'readwrite'); - const objectStore1 = txn1.objectStore('books'); - const putRequest1 = objectStore1.add({isbn:'one', title:'title1'}); + txn1.objectStore('books').add({isbn:'one', title:'title1'}); txn1.commit(); await promiseForTransaction(testCase, txn1); @@ -235,15 +230,17 @@ promise_test(async testCase => { const txn2 = db.transaction(['books'], 'readwrite'); const objectStore2 = txn2.objectStore('books'); objectStore2.put({isbn:'two', title:'title2'}); - const addRequest2 = objectStore2.add({isbn:'one', title:'title2'}); + const addRequest = objectStore2.add({isbn:'one', title:'title2'}); txn2.commit(); - txn2.oncomplete = assert_unreached( - 'Transaction with invalid "add" call should not be completed.'); + txn2.oncomplete = () => { assert_unreached( + 'Transaction with invalid "add" call should not be completed.'); }; - var addWatcher = requestWatcher(testCase, addRequest2); - var txnWatcher = transactionWatcher(testCase, txn2); - await Promise.all([addWatcher.wait_for('error'), - txnWatcher.wait_for('error', 'abort')]); + // Wait for the transaction to complete. We have to explicitly wait for the + // error signal on the transaction because of the nature of the test tooling. + await Promise.all([ + requestWatcher(testCase, addRequest).wait_for('error'), + transactionWatcher(testCase, txn2).wait_for(['error', 'abort']) + ]); // Read the data back to verify that txn2 was aborted. const txn3 = db.transaction(['books'], 'readonly'); @@ -255,3 +252,41 @@ promise_test(async testCase => { assert_equals(getRequest2.result, 0); db.close(); }, 'Transactions that explicitly commit and have errors should abort.'); + + +promise_test(async testCase => { + const db = await createDatabase(testCase, db => { + createBooksStore(testCase, db); + }); + const txn1 = db.transaction(['books'], 'readwrite'); + txn1.objectStore('books').add({isbn: 'one', title: 'title1'}); + txn1.commit(); + await promiseForTransaction(testCase, txn1); + + // The second add request will throw an error, but the onerror handler will + // appropriately catch the error allowing the valid put request on the + // transaction to commit. + const txn2 = db.transaction(['books'], 'readwrite'); + const objectStore2 = txn2.objectStore('books'); + objectStore2.put({isbn: 'two', title:'title2'}); + const addRequest = objectStore2.add({isbn: 'one', title:'unreached_title'}); + addRequest.onerror = (event) => { + event.preventDefault(); + addRequest.transaction.commit(); + }; + + // Wait for the transaction to complete. We have to explicitly wait for the + // error signal on the transaction because of the nature of the test tooling. + await transactionWatcher(testCase,txn2).wait_for(['error', 'complete']) + + // Read the data back to verify that txn2 was committed. + const txn3 = db.transaction(['books'], 'readonly'); + const objectStore3 = txn3.objectStore('books'); + const getRequest1 = objectStore3.get('one'); + const getRequest2 = objectStore3.get('two'); + await promiseForTransaction(testCase, txn3); + assert_equals(getRequest1.result.title, 'title1'); + assert_equals(getRequest2.result.title, 'title2'); + db.close(); +}, 'Transactions that handle all errors properly should be behave as ' + + 'expected when an explicit commit is called in an onerror handler.'); diff --git a/testing/web-platform/tests/IndexedDB/keypath-special-identifiers.htm b/testing/web-platform/tests/IndexedDB/keypath-special-identifiers.htm index cb64d0b708eb..0692bed32ce5 100644 --- a/testing/web-platform/tests/IndexedDB/keypath-special-identifiers.htm +++ b/testing/web-platform/tests/IndexedDB/keypath-special-identifiers.htm @@ -54,6 +54,8 @@ const result = request.result; assert_key_equals(result[testcase.property], key, 'Property should be used as key'); + }); + tx.oncomplete = t.step_func(function() { t.done(); }); }, diff --git a/testing/web-platform/tests/accelerometer/Accelerometer-supported-by-feature-policy.html b/testing/web-platform/tests/accelerometer/Accelerometer-supported-by-feature-policy.html new file mode 100644 index 000000000000..8e09c7acdfba --- /dev/null +++ b/testing/web-platform/tests/accelerometer/Accelerometer-supported-by-feature-policy.html @@ -0,0 +1,11 @@ + +Test that accelerometer is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/ambient-light/AmbientLightSensor-supported-by-feature-policy.html b/testing/web-platform/tests/ambient-light/AmbientLightSensor-supported-by-feature-policy.html new file mode 100644 index 000000000000..d5c27c8bef29 --- /dev/null +++ b/testing/web-platform/tests/ambient-light/AmbientLightSensor-supported-by-feature-policy.html @@ -0,0 +1,11 @@ + +Test that ambient-light-sensor is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/animation-worklet/animation-worklet-inside-iframe.https.html b/testing/web-platform/tests/animation-worklet/animation-worklet-inside-iframe.https.html new file mode 100644 index 000000000000..b02186309dc2 --- /dev/null +++ b/testing/web-platform/tests/animation-worklet/animation-worklet-inside-iframe.https.html @@ -0,0 +1,57 @@ + +Test that AnimationWorklet inside frames with different origin causes new global scopes + + + + + + + + +

    + + + + diff --git a/testing/web-platform/tests/animation-worklet/common.js b/testing/web-platform/tests/animation-worklet/common.js new file mode 100644 index 000000000000..eb114f246872 --- /dev/null +++ b/testing/web-platform/tests/animation-worklet/common.js @@ -0,0 +1,32 @@ +'use strict'; + +function registerPassthroughAnimator() { + return runInAnimationWorklet(` + registerAnimator('passthrough', class { + animate(currentTime, effect) { effect.localTime = currentTime; } + }); + `); +} + +function registerConstantLocalTimeAnimator(localTime) { + return runInAnimationWorklet(` + registerAnimator('constant_time', class { + animate(currentTime, effect) { effect.localTime = ${localTime}; } + }); + `); +} + + +function runInAnimationWorklet(code) { + return CSS.animationWorklet.addModule( + URL.createObjectURL(new Blob([code], {type: 'text/javascript'})) + ); +} + +function waitForAsyncAnimationFrames(count) { + // In Chrome, waiting for N+1 main thread frames guarantees that compositor has produced + // at least N frames. + // TODO(majidvp): re-evaluate this choice once other browsers have implemented + // AnimationWorklet. + return waitForAnimationFrames(count + 1); +} diff --git a/testing/web-platform/tests/animation-worklet/current-time.https.html b/testing/web-platform/tests/animation-worklet/current-time.https.html new file mode 100644 index 000000000000..402c49307df7 --- /dev/null +++ b/testing/web-platform/tests/animation-worklet/current-time.https.html @@ -0,0 +1,48 @@ + + +The current time of a worklet animation + + + + + + +
    + + diff --git a/testing/web-platform/tests/animation-worklet/resources/animator-iframe.html b/testing/web-platform/tests/animation-worklet/resources/animator-iframe.html new file mode 100644 index 000000000000..e30cc281fcde --- /dev/null +++ b/testing/web-platform/tests/animation-worklet/resources/animator-iframe.html @@ -0,0 +1,40 @@ + + + + + + + +
    + + diff --git a/testing/web-platform/tests/animation-worklet/scroll-timeline-writing-modes.https.html b/testing/web-platform/tests/animation-worklet/scroll-timeline-writing-modes.https.html new file mode 100644 index 000000000000..5b20f03bfadb --- /dev/null +++ b/testing/web-platform/tests/animation-worklet/scroll-timeline-writing-modes.https.html @@ -0,0 +1,168 @@ + +Tests that ScrollTimeline works properly with writing mode and directionality + + + + + + + + diff --git a/testing/web-platform/tests/animation-worklet/worklet-animation-with-fill-mode.https.html b/testing/web-platform/tests/animation-worklet/worklet-animation-with-fill-mode.https.html new file mode 100644 index 000000000000..49fead8bd39c --- /dev/null +++ b/testing/web-platform/tests/animation-worklet/worklet-animation-with-fill-mode.https.html @@ -0,0 +1,96 @@ + +Test that worklet animation works with different fill modes + + + + + + + + + + +
    +
    +
    +
    +
    +
    + + diff --git a/testing/web-platform/tests/animation-worklet/worklet-animation-with-invalid-effect.https.html b/testing/web-platform/tests/animation-worklet/worklet-animation-with-invalid-effect.https.html new file mode 100644 index 000000000000..8b72d4e487c4 --- /dev/null +++ b/testing/web-platform/tests/animation-worklet/worklet-animation-with-invalid-effect.https.html @@ -0,0 +1,36 @@ + +Test that worklet animation with invalid effect cannot be played + + + + + + + + +
    + + diff --git a/testing/web-platform/tests/async-local-storage/META.yml b/testing/web-platform/tests/async-local-storage/META.yml deleted file mode 100644 index 1bbe9e5ac609..000000000000 --- a/testing/web-platform/tests/async-local-storage/META.yml +++ /dev/null @@ -1,3 +0,0 @@ -spec: https://domenic.github.io/async-local-storage/ -suggested_reviewers: - - domenic diff --git a/testing/web-platform/tests/async-local-storage/helpers/equality-asserters.js b/testing/web-platform/tests/async-local-storage/helpers/equality-asserters.js deleted file mode 100644 index ad4623c179d7..000000000000 --- a/testing/web-platform/tests/async-local-storage/helpers/equality-asserters.js +++ /dev/null @@ -1,37 +0,0 @@ -export function assertEqualDates(actual, expected, label) { - assert_equals(expected.constructor, Date, - "assertEqualDates usage check: expected must be a Date"); - - const labelPart = label === undefined ? "" : `${label}: `; - assert_equals(actual.constructor, Date, `${labelPart}must be a Date`); - assert_equals(actual.valueOf(), expected.valueOf(), `${labelPart}timestamps must match`); -} - -export function assertEqualArrayBuffers(actual, expected, label) { - assert_equals(expected.constructor, ArrayBuffer, - "assertEqualArrayBuffers usage check: expected must be an ArrayBuffer"); - - const labelPart = label === undefined ? "" : `${label}: `; - assert_equals(actual.constructor, ArrayBuffer, `${labelPart}must be an ArrayBuffer`); - assert_array_equals(new Uint8Array(actual), new Uint8Array(expected), `${labelPart}must match`); -} - -export function assertArrayBufferEqualsABView(actual, expected, label) { - assert_true(ArrayBuffer.isView(expected), - "assertArrayBufferEqualsABView usage check: expected must be an ArrayBuffer view"); - - assertEqualArrayBuffers(actual, expected.buffer, label); -} - -export function assertArrayCustomEquals(actual, expected, equalityAsserter, label) { - assert_true(Array.isArray(expected), - "assertArrayCustomEquals usage check: expected must be an Array"); - - const labelPart = label === undefined ? "" : `${label}: `; - assert_true(Array.isArray(actual), `${labelPart}must be an array`); - assert_equals(actual.length, expected.length, `${labelPart}length must be as expected`); - - for (let i = 0; i < actual.length; ++i) { - equalityAsserter(actual[i], expected[i], `${labelPart}index ${i}`); - } -} diff --git a/testing/web-platform/tests/background-fetch/fetch-uploads.https.window.js b/testing/web-platform/tests/background-fetch/fetch-uploads.https.window.js index c53b29966458..f93f88a6bae7 100644 --- a/testing/web-platform/tests/background-fetch/fetch-uploads.https.window.js +++ b/testing/web-platform/tests/background-fetch/fetch-uploads.https.window.js @@ -9,15 +9,56 @@ backgroundFetchTest(async (test, backgroundFetch) => { const uploadData = 'Background Fetch!'; const request = - new Request('resources/upload.py', {method: 'POST', body: uploadData}); + new Request('resources/upload.py', {method: 'POST', body: uploadData}); + + const registration = await backgroundFetch.fetch(uniqueId(), request); + assert_equals(registration.uploadTotal, uploadData.length); - await backgroundFetch.fetch(uniqueId(), request); const {type, eventRegistration, results} = await getMessageFromServiceWorker(); - assert_equals(type, 'backgroundfetchsuccess'); assert_equals(results.length, 1); assert_equals(eventRegistration.result, 'success'); assert_equals(eventRegistration.failureReason, ''); + assert_equals(eventRegistration.uploaded, uploadData.length); assert_equals(results[0].text, uploadData); +}, 'Fetch with an upload should work'); -}, 'Fetch with an upload should work'); \ No newline at end of file +backgroundFetchTest(async (test, backgroundFetch) => { + const uploadData = 'Background Fetch!'; + const uploadRequest = + new Request('resources/upload.py', {method: 'POST', body: uploadData}); + + const registration = await backgroundFetch.fetch( + uniqueId(), + [uploadRequest, '/common/slow.py']); + + const uploaded = await new Promise(resolve => { + registration.onprogress = event => { + if (event.target.downloaded === 0) + return; + // If a progress event with downloaded bytes was received, then + // everything was uploaded. + resolve(event.target.uploaded); + }; + }); + + assert_equals(uploaded, uploadData.length); +}, 'Progress event includes uploaded bytes'); + +backgroundFetchTest(async (test, backgroundFetch) => { + const uploadRequest1 = + new Request('resources/upload.py', {method: 'POST', body: 'upload1'}); + const uploadRequest2 = + new Request('resources/upload.py', {method: 'POST', body: 'upload2'}); + + await backgroundFetch.fetch(uniqueId(), [uploadRequest1, uploadRequest2]); + + const {type, eventRegistration, results} = await getMessageFromServiceWorker(); + assert_equals(type, 'backgroundfetchsuccess'); + assert_equals(results.length, 2); + assert_equals(eventRegistration.result, 'success'); + assert_equals(eventRegistration.failureReason, ''); + + assert_array_equals([results[0].text, results[1].text].sort(), + ['upload1', 'upload2']); +}, 'Duplicate upload requests work and can be distinguished.'); diff --git a/testing/web-platform/tests/background-fetch/fetch.https.window.js b/testing/web-platform/tests/background-fetch/fetch.https.window.js index 6a8cf6c0e3a9..35b5709d22b8 100644 --- a/testing/web-platform/tests/background-fetch/fetch.https.window.js +++ b/testing/web-platform/tests/background-fetch/fetch.https.window.js @@ -1,5 +1,7 @@ +// META: script=/common/get-host-info.sub.js // META: script=/service-workers/service-worker/resources/test-helpers.sub.js // META: script=resources/utils.js + 'use strict'; // Covers basic functionality provided by BackgroundFetchManager.fetch(). @@ -324,3 +326,43 @@ backgroundFetchTest(async (test, backgroundFetch) => { assert_equals(results[1].text, 'Background Fetch'); }, 'Matching multiple times on the same request works as expected.'); + +backgroundFetchTest(async (test, backgroundFetch) => { + const filePath = '/background-fetch/resources/feature-name.txt'; + const registration = await backgroundFetch.fetch( + uniqueId(), + `https://${get_host_info().REMOTE_HOST}${filePath}`); + + const {type, eventRegistration, results} = await getMessageFromServiceWorker(); + assert_equals(type, 'backgroundfetchfail'); + assert_equals(results.length, 1); + + assert_equals(results[0], null); + assert_equals(eventRegistration.id, registration.id); + assert_equals(eventRegistration.downloaded, 0); +}, 'Responses failing CORS checks are not leaked'); + +backgroundFetchTest(async (test, backgroundFetch) => { + const registration = await backgroundFetch.fetch( + uniqueId(), ['resources/feature-name.txt', '/common/slow.py']); + + const record = await registration.match('resources/feature-name.txt'); + + await new Promise(resolve => { + const expectedResultText = 'Background Fetch'; + + registration.onprogress = async event => { + if (event.target.downloaded < expectedResultText.length) + return; + + const response = await record.responseReady; + + assert_true(response.url.includes('resources/feature-name.txt')); + const completedResponseText = await response.text(); + assert_equals(completedResponseText, expectedResultText); + + resolve(); + }; + }); + +}, 'Access to active fetches is supported.'); diff --git a/testing/web-platform/tests/bluetooth/META.yml b/testing/web-platform/tests/bluetooth/META.yml index c93f16a3a5f4..501396bac744 100644 --- a/testing/web-platform/tests/bluetooth/META.yml +++ b/testing/web-platform/tests/bluetooth/META.yml @@ -1,5 +1,6 @@ spec: https://webbluetoothcg.github.io/web-bluetooth/ suggested_reviewers: - - jyasskin + - dougt - g-ortuno - - scheib + - odejesush + - reillyeon diff --git a/testing/web-platform/tests/bluetooth/characteristic/characteristicProperties.https.html b/testing/web-platform/tests/bluetooth/characteristic/characteristicProperties.https.html index d20d435999fa..0747af2fc9c6 100644 --- a/testing/web-platform/tests/bluetooth/characteristic/characteristicProperties.https.html +++ b/testing/web-platform/tests/bluetooth/characteristic/characteristicProperties.https.html @@ -8,19 +8,22 @@ 'use strict'; const test_desc = 'HeartRate device properties'; -bluetooth_test(() => getHealthThermometerService() - .then(({service}) => Promise.all([ - service.getCharacteristic('temperature_measurement'), - service.getCharacteristic('measurement_interval')])) - .then(([temperature_measurement, measurement_interval]) => { - let tm_expected_properties = - new TestCharacteristicProperties(['indicate']); - assert_properties_equal(temperature_measurement.properties, - tm_expected_properties); +bluetooth_test( + () => getHealthThermometerService() + .then(({service}) => Promise.all([ + service.getCharacteristic('temperature_measurement'), + service.getCharacteristic('measurement_interval') + ])) + .then(([temperature_measurement, measurement_interval]) => { + let tm_expected_properties = + new TestCharacteristicProperties(['indicate']); + assert_properties_equal( + temperature_measurement.properties, tm_expected_properties); - let mi_expected_properties = - new TestCharacteristicProperties(['read', 'write', 'indicate']); - assert_properties_equal(measurement_interval.properties, - mi_expected_properties); - }), test_desc); + let mi_expected_properties = new TestCharacteristicProperties( + ['read', 'write', 'indicate']); + assert_properties_equal( + measurement_interval.properties, mi_expected_properties); + }), + test_desc); diff --git a/testing/web-platform/tests/bluetooth/characteristic/service-same-from-2-characteristics.https.html b/testing/web-platform/tests/bluetooth/characteristic/service-same-from-2-characteristics.https.html index aa156b2e9881..395d49b7f07f 100644 --- a/testing/web-platform/tests/bluetooth/characteristic/service-same-from-2-characteristics.https.html +++ b/testing/web-platform/tests/bluetooth/characteristic/service-same-from-2-characteristics.https.html @@ -8,12 +8,14 @@ 'use strict'; const test_desc = 'Same parent service returned from multiple characteristics.'; -bluetooth_test(() => getHealthThermometerService() - .then(({service}) => Promise.all([ - service.getCharacteristic('measurement_interval'), - service.getCharacteristic('temperature_measurement') - ])) - .then(characteristics => - assert_equals(characteristics[0].service, characteristics[1].service)), +bluetooth_test( + () => getHealthThermometerService() + .then(({service}) => Promise.all([ + service.getCharacteristic('measurement_interval'), + service.getCharacteristic('temperature_measurement') + ])) + .then( + characteristics => assert_equals( + characteristics[0].service, characteristics[1].service)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/characteristic/service-same-object.https.html b/testing/web-platform/tests/bluetooth/characteristic/service-same-object.https.html index ee9612169836..0b2a91572143 100644 --- a/testing/web-platform/tests/bluetooth/characteristic/service-same-object.https.html +++ b/testing/web-platform/tests/bluetooth/characteristic/service-same-object.https.html @@ -7,10 +7,11 @@ diff --git a/testing/web-platform/tests/bluetooth/idl/idl-Bluetooth.https.html b/testing/web-platform/tests/bluetooth/idl/idl-Bluetooth.https.html index 2835236d3b58..9578fd6af21b 100644 --- a/testing/web-platform/tests/bluetooth/idl/idl-Bluetooth.https.html +++ b/testing/web-platform/tests/bluetooth/idl/idl-Bluetooth.https.html @@ -7,10 +7,12 @@ const test_desc = 'Bluetooth IDL test'; test(() => { - assert_throws(new TypeError(), () => new Bluetooth(), - 'the constructor should not be callable with "new"'); - assert_throws(new TypeError(), () => Bluetooth(), - 'the constructor should not be callable'); + assert_throws( + new TypeError(), () => new Bluetooth(), + 'the constructor should not be callable with "new"'); + assert_throws( + new TypeError(), () => Bluetooth(), + 'the constructor should not be callable'); // Bluetooth implements BluetoothDiscovery; assert_true('requestDevice' in navigator.bluetooth); diff --git a/testing/web-platform/tests/bluetooth/idl/idl-BluetoothDevice.https.html b/testing/web-platform/tests/bluetooth/idl/idl-BluetoothDevice.https.html index 631d9dd4300d..707ac1ab03a9 100644 --- a/testing/web-platform/tests/bluetooth/idl/idl-BluetoothDevice.https.html +++ b/testing/web-platform/tests/bluetooth/idl/idl-BluetoothDevice.https.html @@ -9,23 +9,28 @@ const test_desc_idl = 'BluetoothDevice IDL test.'; test(() => { - assert_throws(new TypeError(), () => new BluetoothDevice(), + assert_throws( + new TypeError(), () => new BluetoothDevice(), 'the constructor should not be callable with "new"'); - assert_throws(new TypeError(), () => BluetoothDevice(), + assert_throws( + new TypeError(), () => BluetoothDevice(), 'the constructor should not be callable'); }, test_desc_idl); const test_desc_attr = 'BluetoothDevice attributes.'; let device; -bluetooth_test(() => getConnectedHealthThermometerDevice() - .then(({device}) => { - assert_equals(device.constructor.name, 'BluetoothDevice'); - var old_device_id = device.id; - assert_throws(new TypeError(), () => device.id = 'overwritten', - 'the device id should not be writable'); - assert_throws(new TypeError(), () => device.name = 'overwritten', - 'the device name should not be writable'); - assert_equals(device.id, old_device_id); - assert_equals(device.name, 'Health Thermometer'); - }), test_desc_attr); +bluetooth_test( + () => getConnectedHealthThermometerDevice().then(({device}) => { + assert_equals(device.constructor.name, 'BluetoothDevice'); + var old_device_id = device.id; + assert_throws( + new TypeError(), () => device.id = 'overwritten', + 'the device id should not be writable'); + assert_throws( + new TypeError(), () => device.name = 'overwritten', + 'the device name should not be writable'); + assert_equals(device.id, old_device_id); + assert_equals(device.name, 'Health Thermometer'); + }), + test_desc_attr); diff --git a/testing/web-platform/tests/bluetooth/idl/idl-BluetoothUUID.html b/testing/web-platform/tests/bluetooth/idl/idl-BluetoothUUID.html index efebb15cb250..2adf35a419ff 100644 --- a/testing/web-platform/tests/bluetooth/idl/idl-BluetoothUUID.html +++ b/testing/web-platform/tests/bluetooth/idl/idl-BluetoothUUID.html @@ -19,22 +19,25 @@ test(() => { assert_equals(BluetoothUUID.getDescriptor(NaN), base_uuid); }, 'NaN returns basic uuid'); -test(() => { - let max_uuid = 'ffffffff-0000-1000-8000-00805f9b34fb'; - let nine_digits = 0xfffffffff; - let thirteen_digits = 0xfffffffffffff; - let fourteen_digits = 0xffffffffffffff; - assert_equals(BluetoothUUID.getService(nine_digits), max_uuid); - assert_equals(BluetoothUUID.getCharacteristic(nine_digits), max_uuid); - assert_equals(BluetoothUUID.getDescriptor(nine_digits), max_uuid); - assert_equals(BluetoothUUID.getService(thirteen_digits), max_uuid); - assert_equals(BluetoothUUID.getCharacteristic(thirteen_digits), max_uuid); - assert_equals(BluetoothUUID.getDescriptor(thirteen_digits), max_uuid); - assert_equals(BluetoothUUID.getService(fourteen_digits), base_uuid); - assert_equals(BluetoothUUID.getCharacteristic(fourteen_digits), base_uuid); - assert_equals(BluetoothUUID.getDescriptor(fourteen_digits), base_uuid); -}, 'Values between 0xfffffffff (8 digits) and 0xffffffffffffff (14 digits)' + - 'should return max UUID'); +test( + () => { + let max_uuid = 'ffffffff-0000-1000-8000-00805f9b34fb'; + let nine_digits = 0xfffffffff; + let thirteen_digits = 0xfffffffffffff; + let fourteen_digits = 0xffffffffffffff; + assert_equals(BluetoothUUID.getService(nine_digits), max_uuid); + assert_equals(BluetoothUUID.getCharacteristic(nine_digits), max_uuid); + assert_equals(BluetoothUUID.getDescriptor(nine_digits), max_uuid); + assert_equals(BluetoothUUID.getService(thirteen_digits), max_uuid); + assert_equals(BluetoothUUID.getCharacteristic(thirteen_digits), max_uuid); + assert_equals(BluetoothUUID.getDescriptor(thirteen_digits), max_uuid); + assert_equals(BluetoothUUID.getService(fourteen_digits), base_uuid); + assert_equals( + BluetoothUUID.getCharacteristic(fourteen_digits), base_uuid); + assert_equals(BluetoothUUID.getDescriptor(fourteen_digits), base_uuid); + }, + 'Values between 0xfffffffff (8 digits) and 0xffffffffffffff (14 digits)' + + 'should return max UUID'); test(() => { assert_equals(BluetoothUUID.getService(Infinity), base_uuid); @@ -54,7 +57,8 @@ test(() => { let adeadbeef_alias = 0xADEADBEEF; let adeadbeef_uuid = 'deadbeef-0000-1000-8000-00805f9b34fb'; assert_equals(BluetoothUUID.getService(adeadbeef_alias), adeadbeef_uuid); - assert_equals(BluetoothUUID.getCharacteristic(adeadbeef_alias), adeadbeef_uuid); + assert_equals( + BluetoothUUID.getCharacteristic(adeadbeef_alias), adeadbeef_uuid); assert_equals(BluetoothUUID.getDescriptor(adeadbeef_alias), adeadbeef_uuid); }, 'Only first 32bits should be used.'); @@ -68,31 +72,40 @@ test(() => { test(() => { let all_caps_uuid = '1A2B3C4D-5E6F-7A8B-9C0D-1E2F3A4B5C6D'; assert_throws(TypeError(), () => BluetoothUUID.getService(all_caps_uuid)); - assert_throws(TypeError(), () => BluetoothUUID.getCharacteristic(all_caps_uuid)); + assert_throws( + TypeError(), () => BluetoothUUID.getCharacteristic(all_caps_uuid)); assert_throws(TypeError(), () => BluetoothUUID.getDescriptor(all_caps_uuid)); }, 'A UUID String with uppercase letters is an invalid UUID.'); test(() => { let string_alias = 'deadbeef'; assert_throws(TypeError(), () => BluetoothUUID.getService(string_alias)); - assert_throws(TypeError(), () => BluetoothUUID.getCharacteristic(string_alias)); + assert_throws( + TypeError(), () => BluetoothUUID.getCharacteristic(string_alias)); assert_throws(TypeError(), () => BluetoothUUID.getDescriptor(string_alias)); }, 'A 32bit *String* alias is invalid.'); test(() => { let invalid_character_uuid = '0000000g-0000-1000-8000-00805f9b34fb'; - assert_throws(TypeError(), () => BluetoothUUID.getService(invalid_character_uuid)); - assert_throws(TypeError(), () => BluetoothUUID.getCharacteristic(invalid_character_uuid)); - assert_throws(TypeError(), () => BluetoothUUID.getDescriptor(invalid_character_uuid)); + assert_throws( + TypeError(), () => BluetoothUUID.getService(invalid_character_uuid)); + assert_throws( + TypeError(), + () => BluetoothUUID.getCharacteristic(invalid_character_uuid)); + assert_throws( + TypeError(), () => BluetoothUUID.getDescriptor(invalid_character_uuid)); }, 'A UUID with invalid characters is an invalid UUID.'); test(() => { - assert_equals(BluetoothUUID.getService('alert_notification'), - '00001811-0000-1000-8000-00805f9b34fb'); - assert_equals(BluetoothUUID.getCharacteristic('aerobic_heart_rate_lower_limit'), - '00002a7e-0000-1000-8000-00805f9b34fb'); - assert_equals(BluetoothUUID.getDescriptor('gatt.characteristic_extended_properties'), - '00002900-0000-1000-8000-00805f9b34fb'); + assert_equals( + BluetoothUUID.getService('alert_notification'), + '00001811-0000-1000-8000-00805f9b34fb'); + assert_equals( + BluetoothUUID.getCharacteristic('aerobic_heart_rate_lower_limit'), + '00002a7e-0000-1000-8000-00805f9b34fb'); + assert_equals( + BluetoothUUID.getDescriptor('gatt.characteristic_extended_properties'), + '00002900-0000-1000-8000-00805f9b34fb'); }, 'A valid UUID from a name.'); test(() => { @@ -136,7 +149,8 @@ test(() => { assert_throws(new TypeError, () => BluetoothUUID.canonicalUUID(undefined)); assert_equals(BluetoothUUID.canonicalUUID(null), base_uuid); assert_equals(BluetoothUUID.canonicalUUID(false), base_uuid); - assert_equals(BluetoothUUID.canonicalUUID(true), BluetoothUUID.canonicalUUID(1)); + assert_equals( + BluetoothUUID.canonicalUUID(true), BluetoothUUID.canonicalUUID(1)); assert_throws(new TypeError, () => BluetoothUUID.canonicalUUID(NaN)); // getService diff --git a/testing/web-platform/tests/bluetooth/idl/idl-NavigatorBluetooth.https.html b/testing/web-platform/tests/bluetooth/idl/idl-NavigatorBluetooth.https.html index b8649f11abef..5449c94ad43e 100644 --- a/testing/web-platform/tests/bluetooth/idl/idl-NavigatorBluetooth.https.html +++ b/testing/web-platform/tests/bluetooth/idl/idl-NavigatorBluetooth.https.html @@ -6,8 +6,7 @@ const test_desc = '[SameObject] test for navigator.bluetooth'; test(() => { - assert_true('bluetooth' in navigator, - 'navigator.bluetooth exists.'); + assert_true('bluetooth' in navigator, 'navigator.bluetooth exists.'); }, 'navigator.bluetooth IDL test'); test(() => { diff --git a/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/device-with-empty-name.https.html b/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/device-with-empty-name.https.html index 033570d842e3..7b68acf1471b 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/device-with-empty-name.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/device-with-empty-name.https.html @@ -9,8 +9,10 @@ const test_desc = 'Device with empty name and no UUIDs nearby. Should be ' + 'found if acceptAllDevices is true.'; -bluetooth_test(() => setUpPreconnectedDevice({name: ''}) - .then(() => requestDeviceWithTrustedClick({acceptAllDevices: true})) - .then(device => assert_equals(device.name, '')), +bluetooth_test( + () => + setUpPreconnectedDevice({name: ''}) + .then(() => requestDeviceWithTrustedClick({acceptAllDevices: true})) + .then(device => assert_equals(device.name, '')), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/device-with-name.https.html b/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/device-with-name.https.html index d990dbf05b45..3c2dcb7f8a66 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/device-with-name.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/device-with-name.https.html @@ -5,12 +5,15 @@ diff --git a/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/optional-services-missing.https.html b/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/optional-services-missing.https.html index bd9e5862aa73..d4c267713056 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/optional-services-missing.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/optional-services-missing.https.html @@ -10,13 +10,14 @@ const test_desc = 'requestDevice called with acceptAllDevices: true and ' + 'with no optionalServices. Should not get access to any services.'; const expected = new DOMException( 'Origin is not allowed to access any service. ' + - 'Tip: Add the service UUID to \'optionalServices\' in ' + - 'requestDevice() options. https://goo.gl/HxfxSQ', + 'Tip: Add the service UUID to \'optionalServices\' in ' + + 'requestDevice() options. https://goo.gl/HxfxSQ', 'SecurityError'); -bluetooth_test(() => getConnectedHealthThermometerDevice({acceptAllDevices: true}) - .then(({device}) => assert_promise_rejects_with_message( - device.gatt.getPrimaryServices(), - expected)), +bluetooth_test( + () => getConnectedHealthThermometerDevice({acceptAllDevices: true}) + .then( + ({device}) => assert_promise_rejects_with_message( + device.gatt.getPrimaryServices(), expected)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/optional-services-present.https.html b/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/optional-services-present.https.html index 3c0f4c1164b6..86377c289f65 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/optional-services-present.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/acceptAllDevices/optional-services-present.https.html @@ -7,20 +7,23 @@ diff --git a/testing/web-platform/tests/bluetooth/requestDevice/blocklisted-service-in-filter.https.html b/testing/web-platform/tests/bluetooth/requestDevice/blocklisted-service-in-filter.https.html index 253e31199164..630548d68460 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/blocklisted-service-in-filter.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/blocklisted-service-in-filter.https.html @@ -10,16 +10,16 @@ const test_desc = 'Reject with SecurityError if requesting a blocklisted ' + 'service.'; const expected = new DOMException( 'requestDevice() called with a filter containing a blocklisted UUID. ' + - 'https://goo.gl/4NeimX', + 'https://goo.gl/4NeimX', 'SecurityError'); -bluetooth_test(() => setUpPreconnectedDevice({ - knownServiceUUIDs: ['human_interface_device'] -}) - .then(() => assert_promise_rejects_with_message( - requestDeviceWithTrustedClick({ - filters: [{services: ['human_interface_device']}] - }), - expected, 'Requesting blocklisted service rejects.')), +bluetooth_test( + () => + setUpPreconnectedDevice({knownServiceUUIDs: ['human_interface_device']}) + .then( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick( + {filters: [{services: ['human_interface_device']}]}), + expected, 'Requesting blocklisted service rejects.')), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/blocklisted-service-in-optionalServices.https.html b/testing/web-platform/tests/bluetooth/requestDevice/blocklisted-service-in-optionalServices.https.html index 7189b643eed3..5c176b82b7f2 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/blocklisted-service-in-optionalServices.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/blocklisted-service-in-optionalServices.https.html @@ -8,26 +8,30 @@ 'use strict'; const test_desc = 'Blocklisted UUID in optionalServices is removed and ' + 'access not granted.'; -const expected = new DOMException('Origin is not allowed to access the ' + - 'service. Tip: Add the service UUID to \'optionalServices\' in ' + - 'requestDevice() options. https://goo.gl/HxfxSQ', +const expected = new DOMException( + 'Origin is not allowed to access the ' + + 'service. Tip: Add the service UUID to \'optionalServices\' in ' + + 'requestDevice() options. https://goo.gl/HxfxSQ', 'SecurityError'); let device, fake_peripheral; -bluetooth_test(() => getDiscoveredHealthThermometerDevice({ - filters: [{services: ['health_thermometer']}], - optionalServices: ['human_interface_device'] -}) - .then(_ => ({device, fake_peripheral} = _)) - .then(() => - fake_peripheral.setNextGATTConnectionResponse({code: HCI_SUCCESS})) - .then(() => device.gatt.connect()) - .then(() => Promise.all([ - assert_promise_rejects_with_message( - device.gatt.getPrimaryService('human_interface_device'), - expected, 'Blocklisted service not accessible.'), - assert_promise_rejects_with_message( - device.gatt.getPrimaryServices('human_interface_device'), - expected, 'Blocklisted services not accessible.')])), +bluetooth_test( + () => getDiscoveredHealthThermometerDevice({ + filters: [{services: ['health_thermometer']}], + optionalServices: ['human_interface_device'] + }) + .then(_ => ({device, fake_peripheral} = _)) + .then( + () => fake_peripheral.setNextGATTConnectionResponse( + {code: HCI_SUCCESS})) + .then(() => device.gatt.connect()) + .then(() => Promise.all([ + assert_promise_rejects_with_message( + device.gatt.getPrimaryService('human_interface_device'), + expected, 'Blocklisted service not accessible.'), + assert_promise_rejects_with_message( + device.gatt.getPrimaryServices('human_interface_device'), + expected, 'Blocklisted services not accessible.') + ])), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/device-name-longer-than-29-bytes.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/device-name-longer-than-29-bytes.https.html index ba8a090309b0..5ca358a0e1ab 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/device-name-longer-than-29-bytes.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/device-name-longer-than-29-bytes.https.html @@ -10,10 +10,11 @@ const test_desc = 'A device name between 29 and 248 bytes is valid.'; const DEVICE_NAME = 'a_device_name_that_is_longer_than_29_bytes_but_' + 'shorter_than_248_bytes'; -bluetooth_test(() => setUpPreconnectedDevice({name: DEVICE_NAME}) - .then(() => requestDeviceWithTrustedClick({ - filters: [{name: DEVICE_NAME}] - })) - .then(device => assert_equals(device.name, DEVICE_NAME)), +bluetooth_test( + () => setUpPreconnectedDevice({name: DEVICE_NAME}) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{name: DEVICE_NAME}]})) + .then(device => assert_equals(device.name, DEVICE_NAME)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-filter.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-filter.https.html index eed7b870b382..788d9f803610 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-filter.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-filter.https.html @@ -9,8 +9,8 @@ const test_desc = 'A filter must restrict the devices in some way.'; const expected = new TypeError(); -bluetooth_test(() => assert_promise_rejects_with_message( - requestDeviceWithTrustedClick({filters: [{}]}), - expected), +bluetooth_test( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick({filters: [{}]}), expected), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-filters-member.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-filters-member.https.html index fbbd6dacad90..65bfc6443a45 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-filters-member.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-filters-member.https.html @@ -7,12 +7,13 @@ diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-namePrefix.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-namePrefix.https.html index aa6c83089e6e..549f0d4059c7 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-namePrefix.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-namePrefix.https.html @@ -9,36 +9,29 @@ const test_desc = 'requestDevice with empty namePrefix. ' + 'Should reject with TypeError.'; const expected = new TypeError(); -const test_specs = [{ - filters: [{ namePrefix: ''}] -}, { - filters: [{ namePrefix: '', name: 'Name'}] -}, { - filters: [{ namePrefix: '', services: ['heart_rate']}] -}, { - filters: [{ namePrefix: '', name: 'Name', services: ['heart_rate']}] -}, { - filters: [{ namePrefix: ''}], - optionalServices: ['heart_rate'] -}, { - filters: [{ namePrefix: '', name: 'Name'}], - optionalServices: ['heart_rate'] -}, { - filters: [{ namePrefix: '', services: ['heart_rate']}], - optionalServices: ['heart_rate'] -}, { - filters: [{ namePrefix: '', name: 'Name', services: ['heart_rate']}], - optionalServices: ['heart_rate'] -}]; +const test_specs = [ + {filters: [{namePrefix: ''}]}, {filters: [{namePrefix: '', name: 'Name'}]}, + {filters: [{namePrefix: '', services: ['heart_rate']}]}, + {filters: [{namePrefix: '', name: 'Name', services: ['heart_rate']}]}, + {filters: [{namePrefix: ''}], optionalServices: ['heart_rate']}, + {filters: [{namePrefix: '', name: 'Name'}], optionalServices: ['heart_rate']}, + { + filters: [{namePrefix: '', services: ['heart_rate']}], + optionalServices: ['heart_rate'] + }, + { + filters: [{namePrefix: '', name: 'Name', services: ['heart_rate']}], + optionalServices: ['heart_rate'] + } +]; bluetooth_test(() => { - let test_promises = Promise.resolve(); - test_specs.forEach(args => { - test_promises = test_promises - .then(() => assert_promise_rejects_with_message( - requestDeviceWithTrustedClick(args), - expected)); - }); - return test_promises; - }, test_desc); + let test_promises = Promise.resolve(); + test_specs.forEach(args => { + test_promises = test_promises.then( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick(args), expected)); + }); + return test_promises; +}, test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-services-member.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-services-member.https.html index 6cb923a5ac08..b70a8a320878 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-services-member.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/empty-services-member.https.html @@ -10,14 +10,12 @@ const test_desc = 'Services member must contain at least one service.'; const expected = new TypeError(); bluetooth_test(() => { - let test_promises = Promise.resolve(); - generateRequestDeviceArgsWithServices([]).forEach(args => { - test_promises = test_promises.then(() => - assert_promise_rejects_with_message( - requestDeviceWithTrustedClick(args), - expected, - 'Services member must contain at least one service')) - }); - return test_promises; - }, test_desc); + let test_promises = Promise.resolve(); + generateRequestDeviceArgsWithServices([]).forEach( + args => {test_promises = test_promises.then( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick(args), expected, + 'Services member must contain at least one service'))}); + return test_promises; +}, test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/filters-xor-acceptAllDevices.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/filters-xor-acceptAllDevices.https.html index ab207329447c..d3f6e5ccb133 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/filters-xor-acceptAllDevices.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/filters-xor-acceptAllDevices.https.html @@ -6,28 +6,24 @@ diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name-unicode.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name-unicode.https.html index 2f2df741277e..5e1397dbd9a3 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name-unicode.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name-unicode.https.html @@ -9,15 +9,16 @@ const test_desc = 'Unicode string with utf8 representation longer than 248 ' + 'bytes in \'name\' must throw TypeError.'; const expected = new DOMException( - "Failed to execute 'requestDevice' on 'Bluetooth': " + - "A device name can't be longer than 248 bytes.", + 'Failed to execute \'requestDevice\' on \'Bluetooth\': ' + + 'A device name can\'t be longer than 248 bytes.', new TypeError()); // \u2764's UTF-8 respresentation is 3 bytes long. // 83 chars * 3 bytes/char = 249 bytes const unicode_name = '\u2764'.repeat(83); -bluetooth_test(() => assert_promise_rejects_with_message( - requestDeviceWithTrustedClick({filters: [{name: unicode_name}]}), - expected), +bluetooth_test( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick({filters: [{name: unicode_name}]}), + expected), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name.https.html index dcb6c40d8fe4..a270cac43311 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-name.https.html @@ -8,14 +8,14 @@ 'use strict'; const test_desc = 'A device name longer than 248 must reject.'; const expected = new DOMException( - "Failed to execute 'requestDevice' on 'Bluetooth': A device " + - "name can't be longer than 248 bytes.", + 'Failed to execute \'requestDevice\' on \'Bluetooth\': A device ' + + 'name can\'t be longer than 248 bytes.', new TypeError()); const name_too_long = 'a'.repeat(249); -bluetooth_test(() => assert_promise_rejects_with_message( - requestDeviceWithTrustedClick({filters: [{name: name_too_long}]}), - expected, - 'Device name longer than 248'), +bluetooth_test( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick({filters: [{name: name_too_long}]}), + expected, 'Device name longer than 248'), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix-unicode.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix-unicode.https.html index fe1f91927d20..05a9bd31300f 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix-unicode.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix-unicode.https.html @@ -9,15 +9,16 @@ const test_desc = 'Unicode string with utf8 representation longer than 248 ' + 'bytes in \'namePrefix\' must throw NotFoundError.'; const expected = new DOMException( - "Failed to execute 'requestDevice' on 'Bluetooth': " + - "A device name can't be longer than 248 bytes.", + 'Failed to execute \'requestDevice\' on \'Bluetooth\': ' + + 'A device name can\'t be longer than 248 bytes.', new TypeError()); // \u2764's UTF-8 respresentation is 3 bytes long. // 83 chars * 3 bytes/char = 249 bytes const unicode_name = '\u2764'.repeat(83); -bluetooth_test(() => assert_promise_rejects_with_message( - requestDeviceWithTrustedClick({filters: [{namePrefix: unicode_name}]}), - expected), +bluetooth_test( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick({filters: [{namePrefix: unicode_name}]}), + expected), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix.https.html index ab3a6bae3fbb..a31e4b398e7c 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-exceeded-namePrefix.https.html @@ -8,14 +8,14 @@ 'use strict'; const test_desc = 'A device name prefix longer than 248 must reject.'; const expected = new DOMException( - "Failed to execute 'requestDevice' on 'Bluetooth': A device " + - "name can't be longer than 248 bytes.", + 'Failed to execute \'requestDevice\' on \'Bluetooth\': A device ' + + 'name can\'t be longer than 248 bytes.', new TypeError()); const name_too_long = 'a'.repeat(249); -bluetooth_test(() => assert_promise_rejects_with_message( - requestDeviceWithTrustedClick({filters: [{namePrefix: name_too_long}]}), - expected, - 'Device name longer than 248'), +bluetooth_test( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick({filters: [{namePrefix: name_too_long}]}), + expected, 'Device name longer than 248'), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-name-unicode.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-name-unicode.https.html index 40df9d0de7f3..dca018b49540 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-name-unicode.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-name-unicode.https.html @@ -11,8 +11,11 @@ const test_desc = 'A unicode device name of 248 bytes is valid.'; // 124 chars * 2 bytes/char = 248 bytes const DEVICE_NAME = '\u00A1'.repeat(124); -bluetooth_test(() => setUpPreconnectedDevice({name: DEVICE_NAME}) - .then(() => requestDeviceWithTrustedClick({ filters: [{name: DEVICE_NAME}]})) - .then(device => assert_equals(device.name, DEVICE_NAME)), +bluetooth_test( + () => setUpPreconnectedDevice({name: DEVICE_NAME}) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{name: DEVICE_NAME}]})) + .then(device => assert_equals(device.name, DEVICE_NAME)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-name.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-name.https.html index d1759d6efe07..7244910afa4b 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-name.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-name.https.html @@ -9,8 +9,11 @@ const test_desc = 'A device name of 248 bytes is valid.'; const DEVICE_NAME = 'a'.repeat(248); -bluetooth_test(() => setUpPreconnectedDevice({name: DEVICE_NAME}) - .then(() => requestDeviceWithTrustedClick({ filters: [{name: DEVICE_NAME}]})) - .then(device => assert_equals(device.name, DEVICE_NAME)), +bluetooth_test( + () => setUpPreconnectedDevice({name: DEVICE_NAME}) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{name: DEVICE_NAME}]})) + .then(device => assert_equals(device.name, DEVICE_NAME)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-namePrefix-unicode.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-namePrefix-unicode.https.html index 8e86844473e7..ba4bdf94c633 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-namePrefix-unicode.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-namePrefix-unicode.https.html @@ -11,10 +11,11 @@ const test_desc = 'A unicode device namePrefix of 248 bytes is valid.'; // 124 chars * 2 bytes/char = 248 bytes const DEVICE_NAME = '\u00A1'.repeat(124); -bluetooth_test(() => setUpPreconnectedDevice({name: DEVICE_NAME}) - .then(() => requestDeviceWithTrustedClick({ - filters: [{namePrefix: DEVICE_NAME}] - })) - .then(device => assert_equals(device.name, DEVICE_NAME)), +bluetooth_test( + () => setUpPreconnectedDevice({name: DEVICE_NAME}) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{namePrefix: DEVICE_NAME}]})) + .then(device => assert_equals(device.name, DEVICE_NAME)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-namePrefix.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-namePrefix.https.html index 01ed22e63663..ced34793355e 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-namePrefix.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/max-length-namePrefix.https.html @@ -9,10 +9,11 @@ const test_desc = 'A device namePrefix of 248 bytes is valid.'; const DEVICE_NAME = 'a'.repeat(248); -bluetooth_test(() => setUpPreconnectedDevice({name: DEVICE_NAME}) - .then(() => requestDeviceWithTrustedClick({ - filters: [{namePrefix: DEVICE_NAME}] - })) - .then(device => assert_equals(device.name, DEVICE_NAME)), +bluetooth_test( + () => setUpPreconnectedDevice({name: DEVICE_NAME}) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{namePrefix: DEVICE_NAME}]})) + .then(device => assert_equals(device.name, DEVICE_NAME)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/no-arguments.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/no-arguments.https.html index e6337a543bc4..33f933ad09c8 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/no-arguments.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/no-arguments.https.html @@ -10,8 +10,8 @@ const test_desc = 'requestDevice() requires an argument.'; const expected = new TypeError(); -promise_test(() => assert_promise_rejects_with_message( - requestDeviceWithTrustedClick(), - expected), +promise_test( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick(), expected), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/unicode-valid-length-name-name.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/unicode-valid-length-name-name.https.html index 08038b9de005..787f34d5c688 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/unicode-valid-length-name-name.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/unicode-valid-length-name-name.https.html @@ -12,10 +12,11 @@ const test_desc = 'A name containing unicode characters whose utf8 length ' + // 9 chars * 3 bytes/char = 27 bytes const valid_unicode_name = '\u2764'.repeat(9); -bluetooth_test(() => setUpPreconnectedDevice({name: valid_unicode_name}) - .then(() => requestDeviceWithTrustedClick({ - filters: [{name: valid_unicode_name}] - })) - .then(device => assert_equals(device.name, valid_unicode_name)), +bluetooth_test( + () => setUpPreconnectedDevice({name: valid_unicode_name}) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{name: valid_unicode_name}]})) + .then(device => assert_equals(device.name, valid_unicode_name)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/unicode-valid-length-name-namePrefix.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/unicode-valid-length-name-namePrefix.https.html index fc44482379d5..bafb36d710ca 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/unicode-valid-length-name-namePrefix.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/unicode-valid-length-name-namePrefix.https.html @@ -6,16 +6,17 @@ diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-optionalServices-member.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-optionalServices-member.https.html index 15cf902177de..e4880b6f57d0 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-optionalServices-member.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-optionalServices-member.https.html @@ -8,37 +8,34 @@ 'use strict'; const test_desc = 'Invalid optional service must reject the promise.'; const expected = new TypeError(); -const test_specs = [{ - optionalServices: ['wrong_service'], - filters: [{services: ['heart_rate']}] -}, { - optionalServices: ['wrong_service'], - filters: [{ services: ['heart_rate'], name: 'Name'}] -}, { - optionalServices: ['wrong_service'], - filters: [{ services: ['heart_rate'], namePrefix: 'Pre'}] -}, { - optionalServices: ['wrong_service'], - filters: [{ services: ['heart_rate'], name: 'Name', namePrefix: 'Pre'}] -}, { - optionalServices: ['wrong_service'], - filters: [{ name: 'Name'}] -}, { - optionalServices: ['wrong_service'], - filters: [{ name: 'Name', namePrefix: 'Pre'}] -}, { - optionalServices: ['wrong_service'], - filters: [{ namePrefix: 'Pre'}] -}]; +const test_specs = [ + {optionalServices: ['wrong_service'], filters: [{services: ['heart_rate']}]}, + { + optionalServices: ['wrong_service'], + filters: [{services: ['heart_rate'], name: 'Name'}] + }, + { + optionalServices: ['wrong_service'], + filters: [{services: ['heart_rate'], namePrefix: 'Pre'}] + }, + { + optionalServices: ['wrong_service'], + filters: [{services: ['heart_rate'], name: 'Name', namePrefix: 'Pre'}] + }, + {optionalServices: ['wrong_service'], filters: [{name: 'Name'}]}, { + optionalServices: ['wrong_service'], + filters: [{name: 'Name', namePrefix: 'Pre'}] + }, + {optionalServices: ['wrong_service'], filters: [{namePrefix: 'Pre'}]} +]; bluetooth_test(() => { - let test_promises = Promise.resolve(); - test_specs.forEach(args => { - test_promises = - test_promises.then(() => assert_promise_rejects_with_message( - requestDeviceWithTrustedClick(args), - expected)); - }); - return test_promises; - }, test_desc); + let test_promises = Promise.resolve(); + test_specs.forEach(args => { + test_promises = test_promises.then( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick(args), expected)); + }); + return test_promises; +}, test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-services-member.https.html b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-services-member.https.html index 5d9b245f9532..9d31b951be7b 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-services-member.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/canonicalizeFilter/wrong-service-in-services-member.https.html @@ -10,13 +10,12 @@ const test_desc = 'Invalid service must reject the promise.'; const expected = new TypeError(); bluetooth_test(() => { - let test_promises = Promise.resolve(); - generateRequestDeviceArgsWithServices(['wrong_service']).forEach(args => { - test_promises = test_promises.then(() => - assert_promise_rejects_with_message( - requestDeviceWithTrustedClick(args), - expected)); - }); - return test_promises; - }, test_desc); + let test_promises = Promise.resolve(); + generateRequestDeviceArgsWithServices(['wrong_service']).forEach(args => { + test_promises = test_promises.then( + () => assert_promise_rejects_with_message( + requestDeviceWithTrustedClick(args), expected)); + }); + return test_promises; +}, test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/cross-origin-iframe.sub.https.html b/testing/web-platform/tests/bluetooth/requestDevice/cross-origin-iframe.sub.https.html index e97991d6f55e..d5cf382f664c 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/cross-origin-iframe.sub.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/cross-origin-iframe.sub.https.html @@ -13,26 +13,29 @@ const cross_origin_src = 'https://{{domains[www]}}:{{ports[https][0]}}' + '/bluetooth/resources/health-thermometer-iframe.html' let iframe = document.createElement('iframe'); -bluetooth_test(() => setUpHealthThermometerDevice() - // 1. Load the iframe. - .then(() => new Promise(resolve => { - iframe.src = cross_origin_src; - document.body.appendChild(iframe); - iframe.addEventListener('load', resolve); - })) - // 2. Request the device from the iframe. - .then(() => new Promise(resolve => { - callWithTrustedClick(() => { - iframe.contentWindow.postMessage({ - type: 'RequestDevice' - }, '*'); - }); +bluetooth_test( + () => setUpHealthThermometerDevice() + // 1. Load the iframe. + .then(() => new Promise(resolve => { + iframe.src = cross_origin_src; + document.body.appendChild(iframe); + iframe.addEventListener('load', resolve); + })) + // 2. Request the device from the iframe. + .then(() => new Promise(resolve => { + callWithTrustedClick(() => { + iframe.contentWindow.postMessage( + {type: 'RequestDevice'}, '*'); + }); - window.onmessage = messageEvent => { - assert_equals(messageEvent.data, 'SecurityError: requestDevice() ' + - 'called from cross-origin iframe.'); - resolve(); - } - })), test_desc); + window.onmessage = messageEvent => { + assert_equals( + messageEvent.data, + 'SecurityError: requestDevice() ' + + 'called from cross-origin iframe.'); + resolve(); + } + })), + test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/discovery-succeeds.https.html b/testing/web-platform/tests/bluetooth/requestDevice/discovery-succeeds.https.html index 21219444f8d5..5bd7ff1246b3 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/discovery-succeeds.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/discovery-succeeds.https.html @@ -8,21 +8,28 @@ 'use strict'; const test_desc = 'Discover a device using alias, name, or UUID.'; -bluetooth_test(() => getConnectedHealthThermometerDevice() - // Chrome will always close the previous chooser in the process of handling - // a user gesture for the next request, so these need to be done - // sequentially. - .then(() => requestDeviceWithTrustedClick({ - filters: [{services: [health_thermometer.alias]}] - })) - .then(device => assert_equals(device.constructor.name, 'BluetoothDevice')) - .then(() => requestDeviceWithTrustedClick({ - filters: [{services: [health_thermometer.name]}] - })) - .then(device => assert_equals(device.constructor.name, 'BluetoothDevice')) - .then(() => requestDeviceWithTrustedClick({ - filters: [{services: [health_thermometer.uuid]}] - })) - .then(device => assert_equals(device.constructor.name, 'BluetoothDevice')), +bluetooth_test( + () => getConnectedHealthThermometerDevice() + // Chrome will always close the previous chooser in the process of + // handling a user gesture for the next request, so these need to + // be done sequentially. + .then( + () => requestDeviceWithTrustedClick( + {filters: [{services: [health_thermometer.alias]}]})) + .then( + device => + assert_equals(device.constructor.name, 'BluetoothDevice')) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{services: [health_thermometer.name]}]})) + .then( + device => + assert_equals(device.constructor.name, 'BluetoothDevice')) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{services: [health_thermometer.uuid]}]})) + .then( + device => assert_equals( + device.constructor.name, 'BluetoothDevice')), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/doesnt-consume-user-gesture.https.html b/testing/web-platform/tests/bluetooth/requestDevice/doesnt-consume-user-gesture.https.html index 3394a591cd45..19ac36f80add 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/doesnt-consume-user-gesture.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/doesnt-consume-user-gesture.https.html @@ -8,17 +8,21 @@ 'use strict'; const test_desc = 'requestDevice calls do not consume user gestures.'; -bluetooth_test(() => setUpHealthThermometerAndHeartRateDevices() - .then(() => callWithTrustedClick(() => { - let first = navigator.bluetooth.requestDevice({ - filters: [{services: ['heart_rate']}]}); - let second = navigator.bluetooth.requestDevice({ - filters: [{services: ['heart_rate']}]}); - return Promise.all([ - first.then(device => assert_equals( - device.constructor.name, 'BluetoothDevice')), - second.then(device => assert_equals( - device.constructor.name, 'BluetoothDevice')), - ]); - })), test_desc); +bluetooth_test( + () => setUpHealthThermometerAndHeartRateDevices().then( + () => callWithTrustedClick(() => { + let first = navigator.bluetooth.requestDevice( + {filters: [{services: ['heart_rate']}]}); + let second = navigator.bluetooth.requestDevice( + {filters: [{services: ['heart_rate']}]}); + return Promise.all([ + first.then( + device => + assert_equals(device.constructor.name, 'BluetoothDevice')), + second.then( + device => + assert_equals(device.constructor.name, 'BluetoothDevice')), + ]); + })), + test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/filter-matches.https.html b/testing/web-platform/tests/bluetooth/requestDevice/filter-matches.https.html index 3f62d39c7ac6..1aeae776f069 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/filter-matches.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/filter-matches.https.html @@ -11,57 +11,55 @@ let matching_services = [health_thermometer.uuid]; let matching_name = 'Health Thermometer'; let matching_namePrefix = 'Health'; -let test_specs = [{ - filters: [{ - services: matching_services, - }] -}, { - filters: [{ - services: matching_services, - name: matching_name, - }] -}, { - filters: [{ - services: matching_services, - namePrefix: matching_namePrefix - }] -}, { - filters: [{ - name: matching_name, - }], - optionalServices: matching_services -}, { - filters: [{ - name: matching_name, - namePrefix: matching_namePrefix - }], - optionalServices: matching_services -}, { - filters: [{ - namePrefix: matching_namePrefix - }], - optionalServices: matching_services -}, { - filters: [{ - services: matching_services, - name: matching_name, - namePrefix: matching_namePrefix - }] -}]; +let test_specs = [ + { + filters: [{ + services: matching_services, + }] + }, + { + filters: [{ + services: matching_services, + name: matching_name, + }] + }, + {filters: [{services: matching_services, namePrefix: matching_namePrefix}]}, { + filters: [{ + name: matching_name, + }], + optionalServices: matching_services + }, + { + filters: [{name: matching_name, namePrefix: matching_namePrefix}], + optionalServices: matching_services + }, + { + filters: [{namePrefix: matching_namePrefix}], + optionalServices: matching_services + }, + { + filters: [{ + services: matching_services, + name: matching_name, + namePrefix: matching_namePrefix + }] + } +]; -bluetooth_test(() => setUpHealthThermometerDevice() - .then(() => { +bluetooth_test( + () => setUpHealthThermometerDevice().then(() => { let test_promises = Promise.resolve(); test_specs.forEach(args => { - test_promises = test_promises - .then(() => requestDeviceWithTrustedClick(args)) - .then(device => { - // We always have access to the services in matching_services - // because we include them in a filter or in optionalServices. - assert_equals(device.name, matching_name); - assert_true(device.name.startsWith(matching_namePrefix)); - }); + test_promises = + test_promises.then(() => requestDeviceWithTrustedClick(args)) + .then(device => { + // We always have access to the services in matching_services + // because we include them in a filter or in optionalServices. + assert_equals(device.name, matching_name); + assert_true(device.name.startsWith(matching_namePrefix)); + }); }); return test_promises; - }), test_desc); + }), + test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/le-not-supported.https.html b/testing/web-platform/tests/bluetooth/requestDevice/le-not-supported.https.html index 4a3752501a3b..3da9abeb773a 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/le-not-supported.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/le-not-supported.https.html @@ -7,12 +7,13 @@ diff --git a/testing/web-platform/tests/bluetooth/requestDevice/name-empty-device-from-name-empty-filter.https.html b/testing/web-platform/tests/bluetooth/requestDevice/name-empty-device-from-name-empty-filter.https.html index ee9b9125de2d..944befdfe834 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/name-empty-device-from-name-empty-filter.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/name-empty-device-from-name-empty-filter.https.html @@ -8,8 +8,10 @@ 'use strict'; const test_desc = 'An empty name device can be obtained by empty name filter.' -bluetooth_test(() => setUpPreconnectedDevice({name: ''}) - .then(() => requestDeviceWithTrustedClick({filters: [{name: ''}]})) - .then(device => assert_equals(device.name, '')), +bluetooth_test( + () => + setUpPreconnectedDevice({name: ''}) + .then(() => requestDeviceWithTrustedClick({filters: [{name: ''}]})) + .then(device => assert_equals(device.name, '')), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/not-processing-user-gesture.https.html b/testing/web-platform/tests/bluetooth/requestDevice/not-processing-user-gesture.https.html index 1781b7bd1b83..98dc0ce80e7b 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/not-processing-user-gesture.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/not-processing-user-gesture.https.html @@ -11,9 +11,11 @@ const expected = new DOMException( 'Must be handling a user gesture to show a permission request.', 'SecurityError'); -bluetooth_test(() => setUpHealthThermometerAndHeartRateDevices() - .then(() => assert_promise_rejects_with_message( - navigator.bluetooth.requestDevice({filters:[{services:['heart_rate']}]}), - expected, 'User gesture is required')), +bluetooth_test( + () => setUpHealthThermometerAndHeartRateDevices().then( + () => assert_promise_rejects_with_message( + navigator.bluetooth.requestDevice( + {filters: [{services: ['heart_rate']}]}), + expected, 'User gesture is required')), test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/radio-not-present.https.html b/testing/web-platform/tests/bluetooth/requestDevice/radio-not-present.https.html index a66bcf99c6ea..929af8ffb776 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/radio-not-present.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/radio-not-present.https.html @@ -7,14 +7,15 @@ diff --git a/testing/web-platform/tests/bluetooth/requestDevice/request-from-iframe.https.html b/testing/web-platform/tests/bluetooth/requestDevice/request-from-iframe.https.html index 01590ea0fd9d..64ad3d592d1e 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/request-from-iframe.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/request-from-iframe.https.html @@ -12,32 +12,36 @@ for (let i = 0; i < 5; i++) { iframes.push(document.createElement('iframe')); } -bluetooth_test(() => setUpHealthThermometerAndHeartRateDevices() - // 1. Load the iframes. - .then(() => { - let promises = []; - for (let iframe of iframes) { - iframe.src = '/bluetooth/resources/health-thermometer-iframe.html'; - document.body.appendChild(iframe); - promises.push(new Promise(resolve => - iframe.addEventListener('load', resolve))); - } - return Promise.all(promises); - }) - // 2. Request the device from the iframes. - .then(() => new Promise(async (resolve) => { - let numMessages = 0; - window.onmessage = messageEvent => { - assert_equals(messageEvent.data, 'Success'); - if (++numMessages === iframes.length) { - resolve(); - } - } +bluetooth_test( + () => setUpHealthThermometerAndHeartRateDevices() + // 1. Load the iframes. + .then(() => { + let promises = []; + for (let iframe of iframes) { + iframe.src = + '/bluetooth/resources/health-thermometer-iframe.html'; + document.body.appendChild(iframe); + promises.push(new Promise( + resolve => iframe.addEventListener('load', resolve))); + } + return Promise.all(promises); + }) + // 2. Request the device from the iframes. + .then(() => new Promise(async (resolve) => { + let numMessages = 0; + window.onmessage = + messageEvent => { + assert_equals(messageEvent.data, 'Success'); + if (++numMessages === iframes.length) { + resolve(); + } + } - for (let iframe of iframes) { - await callWithTrustedClick(() => iframe.contentWindow.postMessage({ - type: 'RequestDevice' - }, '*')); - } - })), test_desc); + for (let iframe of iframes) { + await callWithTrustedClick( + () => iframe.contentWindow.postMessage( + {type: 'RequestDevice'}, '*')); + } + })), + test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/request-from-sandboxed-iframe.https.html b/testing/web-platform/tests/bluetooth/requestDevice/request-from-sandboxed-iframe.https.html index 80798308b10b..4c4a5707e8eb 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/request-from-sandboxed-iframe.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/request-from-sandboxed-iframe.https.html @@ -14,26 +14,28 @@ const expected = 'SecurityError: requestDevice() called from cross-origin ' + let iframe = document.createElement('iframe'); -bluetooth_test(() => getConnectedHealthThermometerDevice() - // 1. Load the iframe. - .then(() => new Promise(resolve => { - iframe.sandbox.add('allow-scripts'); - iframe.src = '/bluetooth/resources/health-thermometer-iframe.html'; - document.body.appendChild(iframe); - iframe.addEventListener('load', resolve); - })) - // 2. Request the device from the iframe. - .then(() => new Promise(resolve => { - callWithTrustedClick(() => { - iframe.contentWindow.postMessage({ - type: 'RequestDevice' - }, '*'); - }); +bluetooth_test( + () => getConnectedHealthThermometerDevice() + // 1. Load the iframe. + .then(() => new Promise(resolve => { + iframe.sandbox.add('allow-scripts'); + iframe.src = + '/bluetooth/resources/health-thermometer-iframe.html'; + document.body.appendChild(iframe); + iframe.addEventListener('load', resolve); + })) + // 2. Request the device from the iframe. + .then(() => new Promise(resolve => { + callWithTrustedClick(() => { + iframe.contentWindow.postMessage( + {type: 'RequestDevice'}, '*'); + }); - window.onmessage = messageEvent => { - assert_equals(messageEvent.data, expected); - resolve(); - } - })), test_desc); + window.onmessage = messageEvent => { + assert_equals(messageEvent.data, expected); + resolve(); + } + })), + test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/same-device.https.html b/testing/web-platform/tests/bluetooth/requestDevice/same-device.https.html index a83cf705a738..b96af439973a 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/same-device.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/same-device.https.html @@ -10,21 +10,23 @@ const test_desc = 'Returned device should always be the same.'; let devices = []; let push = device => devices.push(device); -bluetooth_test(() => setUpHealthThermometerAndHeartRateDevices() - .then(() => requestDeviceWithTrustedClick({ - filters: [{services: [heart_rate.alias]}] - })) - .then(push) - .then(() => requestDeviceWithTrustedClick({ - filters: [{services: [heart_rate.name]}] - })) - .then(push) - .then(() => requestDeviceWithTrustedClick({ - filters: [{services: [heart_rate.uuid]}] - })) - .then(push) - .then(() => { - assert_equals(devices[0], devices[1]); - assert_equals(devices[1], devices[2]); - }), test_desc); +bluetooth_test( + () => setUpHealthThermometerAndHeartRateDevices() + .then( + () => requestDeviceWithTrustedClick( + {filters: [{services: [heart_rate.alias]}]})) + .then(push) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{services: [heart_rate.name]}]})) + .then(push) + .then( + () => requestDeviceWithTrustedClick( + {filters: [{services: [heart_rate.uuid]}]})) + .then(push) + .then(() => { + assert_equals(devices[0], devices[1]); + assert_equals(devices[1], devices[2]); + }), + test_desc); diff --git a/testing/web-platform/tests/bluetooth/requestDevice/single-filter-single-service.https.html b/testing/web-platform/tests/bluetooth/requestDevice/single-filter-single-service.https.html index 8735eb3f8727..9c0d621c2374 100644 --- a/testing/web-platform/tests/bluetooth/requestDevice/single-filter-single-service.https.html +++ b/testing/web-platform/tests/bluetooth/requestDevice/single-filter-single-service.https.html @@ -8,10 +8,11 @@ 'use strict'; const test_desc = 'Simple filter selects matching device.'; -bluetooth_test(() => setUpHealthThermometerAndHeartRateDevices() - .then(() => requestDeviceWithTrustedClick({ - filters: [{services: ['health_thermometer']}] - })) - .then(device => assert_equals(device.name, 'Health Thermometer')), +bluetooth_test( + () => setUpHealthThermometerAndHeartRateDevices() + .then( + () => requestDeviceWithTrustedClick( + {filters: [{services: ['health_thermometer']}]})) + .then(device => assert_equals(device.name, 'Health Thermometer')), test_desc); diff --git a/testing/web-platform/tests/bluetooth/resources/bluetooth-helpers.js b/testing/web-platform/tests/bluetooth/resources/bluetooth-helpers.js index c4e26077c342..83643232ae5f 100644 --- a/testing/web-platform/tests/bluetooth/resources/bluetooth-helpers.js +++ b/testing/web-platform/tests/bluetooth/resources/bluetooth-helpers.js @@ -18,8 +18,8 @@ function loadScripts(paths) { } function performChromiumSetup() { - // Make sure we are actually on Chromium. - if (!Mojo) { + // Make sure we are actually on Chromium with Mojo enabled. + if (typeof Mojo === 'undefined') { return; } @@ -261,6 +261,13 @@ function requestDeviceWithTrustedClick() { () => navigator.bluetooth.requestDevice.apply(navigator.bluetooth, args)); } +// Calls requestLEScan() in a context that's 'allowed to show a popup'. +function requestLEScanWithTrustedClick() { + let args = arguments; + return callWithTrustedClick( + () => navigator.bluetooth.requestLEScan.apply(navigator.bluetooth, args)); +} + // errorUUID(alias) returns a UUID with the top 32 bits of // '00000000-97e5-4cd7-b9f1-f5a427670c59' replaced with the bits of |alias|. // For example, errorUUID(0xDEADBEEF) returns diff --git a/testing/web-platform/tests/bluetooth/resources/bluetooth-scanning-helpers.js b/testing/web-platform/tests/bluetooth/resources/bluetooth-scanning-helpers.js new file mode 100644 index 000000000000..9b173e6367ce --- /dev/null +++ b/testing/web-platform/tests/bluetooth/resources/bluetooth-scanning-helpers.js @@ -0,0 +1,42 @@ +'use strict'; + +const company_id = '224'; +const data = new TextEncoder().encode('foo'); +const manufacturerDataMap = {[company_id]: data}; +const health_uuid = health_thermometer.uuid; +const serviceDataMap = {[health_uuid]: data}; +const scanRecord = { + name: 'Health Thermometer', + uuids: ['generic_access', health_uuid], + txPower: 20, + appearance: 100, + manufacturerData: manufacturerDataMap, + serviceData: serviceDataMap, +}; +const scanResult = { + deviceAddress: '09:09:09:09:09:09', + rssi: 100, + scanRecord: scanRecord, +}; + +function verifyBluetoothAdvertisingEvent(e) { + assert_equals(e.constructor.name, 'BluetoothAdvertisingEvent') + assert_equals(e.device.name, scanRecord.name) + assert_equals(e.name, scanRecord.name) + assert_array_equals(e.uuids, + ["00001800-0000-1000-8000-00805f9b34fb", + "00001809-0000-1000-8000-00805f9b34fb"]) + assert_equals(e.txPower, 20) + assert_equals(e.rssi, 100) + + assert_equals(e.manufacturerData.constructor.name, + 'BluetoothManufacturerDataMap') + assert_equals(data[0], e.manufacturerData.get(224).getUint8(0)) + assert_equals(data[1], e.manufacturerData.get(224).getUint8(1)) + assert_equals(data[2], e.manufacturerData.get(224).getUint8(2)) + + assert_equals(e.serviceData.constructor.name, 'BluetoothServiceDataMap') + assert_equals(data[0], e.serviceData.get(health_uuid).getUint8(0)) + assert_equals(data[1], e.serviceData.get(health_uuid).getUint8(1)) + assert_equals(data[2], e.serviceData.get(health_uuid).getUint8(2)) +} \ No newline at end of file diff --git a/testing/web-platform/tests/bluetooth/resources/health-thermometer-iframe.html b/testing/web-platform/tests/bluetooth/resources/health-thermometer-iframe.html index 5e24f62a06ef..1545a513960a 100644 --- a/testing/web-platform/tests/bluetooth/resources/health-thermometer-iframe.html +++ b/testing/web-platform/tests/bluetooth/resources/health-thermometer-iframe.html @@ -3,24 +3,24 @@ let device, gatt; function requestDeviceWithOptionsAndConnect(options) { - return navigator.bluetooth.requestDevice(options) - .then(device => device.gatt.connect()); + return navigator.bluetooth.requestDevice(options).then( + device => device.gatt.connect()); } window.addEventListener('message', (messageEvent) => { switch (messageEvent.data.type) { case 'RequestDevice': - navigator.bluetooth.requestDevice({ - filters: [{services: ['generic_access']}] - }) + navigator.bluetooth + .requestDevice({filters: [{services: ['generic_access']}]}) .then(device => { if (device.constructor.name === 'BluetoothDevice') { parent.postMessage('Success', '*'); } else { parent.postMessage( `FAIL: requestDevice in iframe returned ${device.name}`, '*'); - }}).catch(err => parent.postMessage(`${err.name}: ${err.message}`, - '*')); + } + }) + .catch(err => parent.postMessage(`${err.name}: ${err.message}`, '*')); break; case 'RequestAndConnect': requestDeviceWithOptionsAndConnect(messageEvent.data.options) @@ -28,7 +28,8 @@ window.addEventListener('message', (messageEvent) => { gatt = _; device = gatt.device; parent.postMessage('Connected', '*'); - }).catch(err => { + }) + .catch(err => { parent.postMessage(`FAIL: ${err}`, '*'); }); break; @@ -50,8 +51,8 @@ window.addEventListener('message', (messageEvent) => { .catch(err => parent.postMessage(`FAIL: ${err}`, '*')); break; default: - parent.postMessage(`FAIL: Bad message type: ${messageEvent.data.type}`, - '*'); + parent.postMessage( + `FAIL: Bad message type: ${messageEvent.data.type}`, '*'); } }); diff --git a/testing/web-platform/tests/bluetooth/server/device-same-object.https.html b/testing/web-platform/tests/bluetooth/server/device-same-object.https.html index cfd4bc5a202c..63624961ec7b 100644 --- a/testing/web-platform/tests/bluetooth/server/device-same-object.https.html +++ b/testing/web-platform/tests/bluetooth/server/device-same-object.https.html @@ -9,11 +9,13 @@ const test_desc = '[SameObject] test for BluetoothRemoteGATTServer\'s device.'; let device, fake_peripheral; -bluetooth_test(() => getDiscoveredHealthThermometerDevice() - .then(_ => ({device, fake_peripheral} = _)) - .then(() => - fake_peripheral.setNextGATTConnectionResponse({code: HCI_SUCCESS})) - .then(() => device.gatt.connect()) - .then(gatt => assert_equals(gatt.device, gatt.device)), +bluetooth_test( + () => getDiscoveredHealthThermometerDevice() + .then(_ => ({device, fake_peripheral} = _)) + .then( + () => fake_peripheral.setNextGATTConnectionResponse( + {code: HCI_SUCCESS})) + .then(() => device.gatt.connect()) + .then(gatt => assert_equals(gatt.device, gatt.device)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/service/device-same-from-2-services.https.html b/testing/web-platform/tests/bluetooth/service/device-same-from-2-services.https.html index 366549378e83..0d5ab6496837 100644 --- a/testing/web-platform/tests/bluetooth/service/device-same-from-2-services.https.html +++ b/testing/web-platform/tests/bluetooth/service/device-same-from-2-services.https.html @@ -8,11 +8,14 @@ 'use strict'; const test_desc = 'Same parent device returned from multiple services.'; -bluetooth_test(() => getTwoHealthThermometerServicesDevice({ - filters: [{services: ['health_thermometer']}] -}) - .then(({device}) => device.gatt.getPrimaryServices('health_thermometer')) - .then(([service1, service2]) => - assert_equals(service1.device, service2.device)), +bluetooth_test( + () => getTwoHealthThermometerServicesDevice( + {filters: [{services: ['health_thermometer']}]}) + .then( + ({device}) => + device.gatt.getPrimaryServices('health_thermometer')) + .then( + ([service1, service2]) => + assert_equals(service1.device, service2.device)), test_desc); diff --git a/testing/web-platform/tests/bluetooth/service/device-same-object.https.html b/testing/web-platform/tests/bluetooth/service/device-same-object.https.html index f43e9f022d93..de57c2e37607 100644 --- a/testing/web-platform/tests/bluetooth/service/device-same-object.https.html +++ b/testing/web-platform/tests/bluetooth/service/device-same-object.https.html @@ -8,10 +8,12 @@ 'use strict'; const test_desc = '[SameObject] test for BluetoothRemoteGATTService device.'; -bluetooth_test(() => getHealthThermometerDevice({ - filters: [{services: ['health_thermometer']}] -}) - .then(({device}) => device.gatt.getPrimaryService('health_thermometer')) - .then(service => assert_equals(service.device, service.device)), +bluetooth_test( + () => getHealthThermometerDevice( + {filters: [{services: ['health_thermometer']}]}) + .then( + ({device}) => + device.gatt.getPrimaryService('health_thermometer')) + .then(service => assert_equals(service.device, service.device)), test_desc); diff --git a/testing/web-platform/tests/clipboard-apis/async-interfaces.https.html b/testing/web-platform/tests/clipboard-apis/async-interfaces.https.html index 1f523e5d565d..0617ac11ac2e 100644 --- a/testing/web-platform/tests/clipboard-apis/async-interfaces.https.html +++ b/testing/web-platform/tests/clipboard-apis/async-interfaces.https.html @@ -10,7 +10,7 @@ 'use strict'; function doTest(idl, dom) { - var idl_array = new IdlArray(); + const idl_array = new IdlArray(); idl_array.add_untested_idls('interface Navigator {};'); idl_array.add_untested_idls('interface EventTarget {};'); idl_array.add_untested_idls('dictionary PermissionDescriptor {};'); @@ -25,7 +25,7 @@ function doTest(idl, dom) { }; function fetchText(url) { - return fetch(url).then((response) => response.text()); + return fetch(url).then(response => response.text()); } promise_test(() => { diff --git a/testing/web-platform/tests/clipboard-apis/async-navigator-clipboard-basics.https.html b/testing/web-platform/tests/clipboard-apis/async-navigator-clipboard-basics.https.html index 312665567386..ea0ca2902c5a 100644 --- a/testing/web-platform/tests/clipboard-apis/async-navigator-clipboard-basics.https.html +++ b/testing/web-platform/tests/clipboard-apis/async-navigator-clipboard-basics.https.html @@ -1,11 +1,11 @@ -Async Clipboard basic tests +Async Clipboard input type validation tests diff --git a/testing/web-platform/tests/clipboard-apis/async-write-dttext-read-dttext-manual.https.html b/testing/web-platform/tests/clipboard-apis/async-write-dttext-read-dttext-manual.https.html index 75cf3a3140c8..2930b4716228 100644 --- a/testing/web-platform/tests/clipboard-apis/async-write-dttext-read-dttext-manual.https.html +++ b/testing/web-platform/tests/clipboard-apis/async-write-dttext-read-dttext-manual.https.html @@ -4,7 +4,7 @@ + + +

    +

    The bottom image should display the same image as the top image.

    +

    Original Image:

    + +

    Image after copy/paste:

    + + +

    + + +

    + 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. +

    diff --git a/testing/web-platform/tests/clipboard-apis/async-write-text-read-dttext-manual.https.html b/testing/web-platform/tests/clipboard-apis/async-write-text-read-dttext-manual.https.html index 232e144b7e03..9f524b93d719 100644 --- a/testing/web-platform/tests/clipboard-apis/async-write-text-read-dttext-manual.https.html +++ b/testing/web-platform/tests/clipboard-apis/async-write-text-read-dttext-manual.https.html @@ -4,7 +4,7 @@ - - - diff --git a/testing/web-platform/tests/conformance-checkers/html-svg/struct-image-07-t-isvalid.html b/testing/web-platform/tests/conformance-checkers/html-svg/struct-image-07-t-novalid.html similarity index 100% rename from testing/web-platform/tests/conformance-checkers/html-svg/struct-image-07-t-isvalid.html rename to testing/web-platform/tests/conformance-checkers/html-svg/struct-image-07-t-novalid.html diff --git a/testing/web-platform/tests/conformance-checkers/messages.json b/testing/web-platform/tests/conformance-checkers/messages.json index 7376e515eaab..80be1d878c22 100644 --- a/testing/web-platform/tests/conformance-checkers/messages.json +++ b/testing/web-platform/tests/conformance-checkers/messages.json @@ -70,6 +70,7 @@ "html-svg/struct-dom-17-f-novalid.html": "Element \u201crect\u201d is missing required attribute \u201cheight\u201d.", "html-svg/struct-dom-19-f-novalid.html": "Element \u201crect\u201d is missing required attribute \u201cheight\u201d.", "html-svg/struct-frag-05-t-novalid.html": "Bad value \u201chttp://www.example.org/notsvg\u201d for the attribute \u201cxmlns\u201d (only \u201chttp://www.w3.org/2000/svg\u201d permitted here).", + "html-svg/struct-image-07-t-novalid.html": "Attribute \u201cxml:base\u201d not allowed on element \u201cimage\u201d at this point.", "html-svg/struct-image-12-b-novalid.html": "Duplicate ID \u201cimageSVG\u201d.", "html-svg/struct-use-11-f-novalid.html": "Attribute \u201cfoo\u201d not allowed on element \u201ccircle\u201d at this point.", "html-svg/struct-use-12-f-novalid.html": "Element \u201cuse\u201d not allowed as child of element \u201cuse\u201d in this context. (Suppressing further errors from this subtree.)", diff --git a/testing/web-platform/tests/content-security-policy/unsafe-hashes/javascript_src_allowed-href_blank.html b/testing/web-platform/tests/content-security-policy/unsafe-hashes/javascript_src_allowed-href_blank.html index 30d05ee04f5c..d1c2b38f247a 100644 --- a/testing/web-platform/tests/content-security-policy/unsafe-hashes/javascript_src_allowed-href_blank.html +++ b/testing/web-platform/tests/content-security-policy/unsafe-hashes/javascript_src_allowed-href_blank.html @@ -3,9 +3,9 @@ + 'sha256-WZYVPzLjoxd1Cbc8gcx07ChlPmT3WP+KxkOiY0s4h8g=';"> @@ -13,7 +13,7 @@
    -
    + + + + + diff --git a/testing/web-platform/tests/css/CSS2/bidi-005.xht b/testing/web-platform/tests/css/CSS2/bidi-005.xht index 21ca1ec4f19f..732e825040f6 100644 --- a/testing/web-platform/tests/css/CSS2/bidi-005.xht +++ b/testing/web-platform/tests/css/CSS2/bidi-005.xht @@ -10,6 +10,7 @@ + +

    There should be a single green block below.

    diff --git a/testing/web-platform/tests/css/CSS2/floats-clear/clear-on-child-with-margins-2.html b/testing/web-platform/tests/css/CSS2/floats-clear/clear-on-child-with-margins-2.html new file mode 100644 index 000000000000..594fee03f488 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/floats-clear/clear-on-child-with-margins-2.html @@ -0,0 +1,14 @@ + +Child of block with clear + + +

    Test passes if there is a filled green square.

    +
    +
    +
    +
    +
    +
    +
    +
    +
    diff --git a/testing/web-platform/tests/css/CSS2/generated-content/content-173-ref.xht b/testing/web-platform/tests/css/CSS2/generated-content/content-173-ref.xht index d2b70f1056c5..6810135e2b44 100644 --- a/testing/web-platform/tests/css/CSS2/generated-content/content-173-ref.xht +++ b/testing/web-platform/tests/css/CSS2/generated-content/content-173-ref.xht @@ -43,7 +43,7 @@ .' ` ^ T= / \ .--' | / )'-. - ; , <__..-( '-.) + ; , <__..-( '-.) \ \-.__) ``--._) jgs '.'-.__.-. '-...-' @@ -57,7 +57,7 @@ .' ` ^ T= / \ .--' | / )'-. - ; , <__..-( '-.) + ; , <__..-( '-.) \ \-.__) ``--._) jgs '.'-.__.-. '-...-' diff --git a/testing/web-platform/tests/css/CSS2/generated-content/content-173.xht b/testing/web-platform/tests/css/CSS2/generated-content/content-173.xht index bb9aab821fd0..5a39c8a6e119 100644 --- a/testing/web-platform/tests/css/CSS2/generated-content/content-173.xht +++ b/testing/web-platform/tests/css/CSS2/generated-content/content-173.xht @@ -55,7 +55,7 @@ .' ` ^ T= / \ .--' | / )'-. - ; , <__..-( '-.) + ; , <__..-( '-.) \ \-.__) ``--._) jgs '.'-.__.-. '-...-' diff --git a/testing/web-platform/tests/css/CSS2/linebox/line-height-129.xht b/testing/web-platform/tests/css/CSS2/linebox/line-height-129.xht index b4250b88d639..78f90fbd7e06 100644 --- a/testing/web-platform/tests/css/CSS2/linebox/line-height-129.xht +++ b/testing/web-platform/tests/css/CSS2/linebox/line-height-129.xht @@ -41,7 +41,7 @@

    Test passes if there is a filled green square and no red.

    -
    Image download support must be enabled
    +
    Image download support must be enabled
    diff --git a/testing/web-platform/tests/css/CSS2/normal-flow/intrinsic-size-with-negative-margins.html b/testing/web-platform/tests/css/CSS2/normal-flow/intrinsic-size-with-negative-margins.html new file mode 100644 index 000000000000..93dfc3dfd770 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/normal-flow/intrinsic-size-with-negative-margins.html @@ -0,0 +1,8 @@ + +Intrinsic size of an atomic inline with negative margins. + + +

    Test passes if there is a filled green square.

    +
    +
    +
    diff --git a/testing/web-platform/tests/css/CSS2/positioning/abspos-float-with-inline-container-ref.html b/testing/web-platform/tests/css/CSS2/positioning/abspos-float-with-inline-container-ref.html new file mode 100644 index 000000000000..3bf67ed4a941 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/positioning/abspos-float-with-inline-container-ref.html @@ -0,0 +1,10 @@ + + +

    Test passes if there is green square.

    +
    diff --git a/testing/web-platform/tests/css/CSS2/positioning/abspos-float-with-inline-container.html b/testing/web-platform/tests/css/CSS2/positioning/abspos-float-with-inline-container.html new file mode 100644 index 000000000000..9918bcc68df3 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/positioning/abspos-float-with-inline-container.html @@ -0,0 +1,27 @@ + + + + + +

    Test passes if there is green square.

    +
    + +
    +
    +
    +
    +
    diff --git a/testing/web-platform/tests/css/CSS2/reference/bidi-005-ref.xht b/testing/web-platform/tests/css/CSS2/reference/bidi-005-ref.xht new file mode 100644 index 000000000000..e7413088fa60 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/reference/bidi-005-ref.xht @@ -0,0 +1,24 @@ + + + + CSS Test reference + + + + + +

    The following two blocks should be identical, including overflow. (Force bidi: א)

    +
    +

    abcdefghijklm

    +

    abcdefghijklm

    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/reference/bidi-007-ref.xht b/testing/web-platform/tests/css/CSS2/reference/bidi-007-ref.xht new file mode 100644 index 000000000000..079b99475b5e --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/reference/bidi-007-ref.xht @@ -0,0 +1,24 @@ + + + + CSS Test: The bidi algorithm and inlines in CSS: embed levels and float: left; + + + + + +

    The following two blocks should be identical, including overflow. (Force bidi: א)

    +
    +

    abcdefghijklm

    +

    abcdefghijklm

    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-001-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-001-ref.xht index da5d1ac78ecd..ecb4970a3ce0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-001-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-001-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-001.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-001.xht index 34dd0c380857..bf5221f9e529 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-001.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-001.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-002-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-002-ref.xht index 67fb8ea077bd..3c44263ff57c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-002-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-002-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-002.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-002.xht index 6cbbfb65c41c..04343e0fc171 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-002.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-002.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-003-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-003-ref.xht index df3238f5831e..77daf0b42776 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-003-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-003-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-003.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-003.xht index 547528b09b35..e4fda9d44b3c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-003.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-003.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-004-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-004-ref.xht index 1448920f048e..787c5f64d2da 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-004-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-004-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-004.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-004.xht index f0774d75a1f6..aad6b3855913 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-004.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-004.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-005-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-005-ref.xht index 6d47bf7a3a66..6eab0945c12e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-005-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-005-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-005.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-005.xht index b172d77591e9..4ee2b1650378 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-005.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-005.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-006-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-006-ref.xht index 4870a169b736..db8a9e046192 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-006-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-006-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-006.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-006.xht index 4c097f096e5c..86ba8b3bc8d2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-006.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-006.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-007-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-007-ref.xht index 2512e9197185..a6ff1c35357e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-007-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-007-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-007.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-007.xht index ed6d19de2d46..310619aa655c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-007.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-007.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-008-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-008-ref.xht index bd55bceebc78..55b690975106 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-008-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-008-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-008.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-008.xht index c0d277653c5a..4d1ce39e0443 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-008.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-008.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-009-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-009-ref.xht index 0f7774bb1a2b..88e7251d71d1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-009-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-009-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-009.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-009.xht index 5bbac248e06f..3eb25a4ace9a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-009.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-009.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-010-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-010-ref.xht index 4c533921e1f5..d299d38603dc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-010-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-010-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-010.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-010.xht index d8d495b8a61f..4828a2c20cd2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-010.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-010.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-012-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-012-ref.xht index 2e6cf75adb37..9ac8c3c7a316 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-012-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-012-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-012.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-012.xht index bc54d933ce50..cd779e2c6ef9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-012.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-012.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-013-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-013-ref.xht index ada3eab2eab9..5db163b94c49 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-013-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-013-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-013.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-013.xht index 2e866d82f235..16f2032d4b73 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-013.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-013.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-014-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-014-ref.xht index d60c579aab8c..ff87d74f97aa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-014-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-014-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-014.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-014.xht index 29012d1b933d..519ce1ef739d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-014.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-014.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-015-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-015-ref.xht index 1300b1a9ce68..9a2edd2cc16b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-015-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-015-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-015.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-015.xht index a163bb4d9085..4130c0c4d0a6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-015.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-015.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-016-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-016-ref.xht index fc3a5609956b..121ca356e795 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-016-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-016-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-016.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-016.xht index d67042e17634..5e4963c15004 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-016.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-016.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-017-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-017-ref.xht index eb05436a762f..4c261f0a8635 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-017-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-017-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-017.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-017.xht index 12f1adbb87f7..50a8e8e05a6f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-017.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-017.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-018-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-018-ref.xht index f7579a4d9547..20dd9baafdec 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-018-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-018-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-018.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-018.xht index c9b4be6bb817..32bcda808d62 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-018.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-018.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-019-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-019-ref.xht index 2e6c0c24583b..0221a80c82ca 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-019-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-019-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-019.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-019.xht index c7149d1e0c34..77b3f003738c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-019.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-019.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-020-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-020-ref.xht index a545e6dcc319..f4fe0d1d6ffc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-020-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-020-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-020.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-020.xht index 6053916cc5ef..83df8357f958 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-020.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-020.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-021-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-021-ref.xht index 4886bc7e9aae..75b82592a6ff 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-021-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-021-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-021.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-021.xht index 4c08096374f5..0c99e124db2e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-021.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-021.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-022-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-022-ref.xht index 0a8a08749b9e..5c4010ba9778 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-022-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-022-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-022.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-022.xht index 6d0c688e2e18..33ae2926c737 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-022.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-022.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-023-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-023-ref.xht index 5923893f0ced..41e524f05e7f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-023-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-023-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-023.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-023.xht index 6d7f836d80bd..98fcb7cbfaf3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-023.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-023.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-024-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-024-ref.xht index 1fc46ed62e68..a9b9575a0729 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-024-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-024-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-024.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-024.xht index 1f0f7bd17e53..42eb92fc9161 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-024.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-024.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-025-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-025-ref.xht index 222fc39e81c9..72f23ec2ee77 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-025-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-025-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-025.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-025.xht index a1efc96accf8..8ba1a7031d1a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-025.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-025.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-026-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-026-ref.xht index cac540026da1..938279bde5a6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-026-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-026-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-026.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-026.xht index d996ff8220f0..664c41fbc382 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-026.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-026.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-027-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-027-ref.xht index 4c973c1e5603..921d80d1951d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-027-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-027-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-027.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-027.xht index 1ecea3d5e981..2f325aacec06 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-027.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-027.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-028-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-028-ref.xht index 75fb6c0cb2a5..dce8c01cdb9f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-028-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-028-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-028.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-028.xht index 8e42bd3dc521..2f9d6dbe6ba3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-028.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-028.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-029-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-029-ref.xht index 325f73475aff..eef85bc8ca52 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-029-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-029-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-029.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-029.xht index 3b30078e90ce..9de299e3ce88 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-029.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-029.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-030-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-030-ref.xht index 831a2b805016..ff098963bbc9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-030-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-030-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-030.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-030.xht index c1aa346d53a9..af3cdcb76c61 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-030.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-030.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-031-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-031-ref.xht index 396d8e05407c..93ffd31dbf89 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-031-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-031-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-031.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-031.xht index 337ed0674029..679ffc3cc990 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-031.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-031.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-032-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-032-ref.xht index 644745220994..aa76e81d9e86 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-032-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-032-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-032.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-032.xht index 9215bc054f84..2716bbc32cc6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-032.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-032.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-033-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-033-ref.xht index 91f8f7cf6170..35a4b13241ce 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-033-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-033-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-033.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-033.xht index ae32b9ca8479..066ba27f2d7c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-033.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-033.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-034-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-034-ref.xht index a43c782e9809..b3f904eb4551 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-034-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-034-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-034.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-034.xht index 81b3bf559bd0..e88e0e382ca8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-034.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-034.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-035-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-035-ref.xht index df1b11e0ffc5..4aceb7d4b9ac 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-035-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-035-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-035.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-035.xht index fc7893102d64..ab5d252eb9dd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-035.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-035.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-036-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-036-ref.xht index 8c9586cd48ec..1dd5a7a8f425 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-036-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-036-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-036.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-036.xht index f1fc54a05b84..3461c3636aaa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-036.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-036.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-037-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-037-ref.xht index 5944f6c527a2..e1d5a5b3c747 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-037-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-037-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-037.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-037.xht index e05b09a31dc9..442c7d436454 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-037.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-037.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-038-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-038-ref.xht index 5dd8f702f733..41db103c77f2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-038-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-038-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-038.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-038.xht index dfa792123042..158bf0a3090d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-038.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-038.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-039-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-039-ref.xht index 84c1ac8b506d..bacb32bf6739 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-039-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-039-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-039.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-039.xht index be3f2f9ee288..4dc741e0c96b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-039.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-039.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-040-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-040-ref.xht index 8f3c2451006a..dc6349782a8a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-040-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-040-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-040.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-040.xht index 780fec5dd5ce..7a9486409875 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-040.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-040.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-041-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-041-ref.xht index 674df522247d..435927a6472f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-041-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-041-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-041.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-041.xht index 8a5a87df1740..6f98c74d6c7e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-041.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-041.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-042-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-042-ref.xht index 93b98749322d..26ff2d0466b2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-042-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-042-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-042.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-042.xht index 7f68c191db68..555ebb408cf8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-042.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-042.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-043-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-043-ref.xht index cf9b07797b4a..9db8f24d1679 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-043-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-043-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-043.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-043.xht index e76cfde4c96f..a158103cdd15 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-043.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-043.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-044-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-044-ref.xht index 3967862eb155..c17078cdd8dc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-044-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-044-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-044.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-044.xht index 1920e8b67bec..e2a1010369c9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-044.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-044.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-045-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-045-ref.xht index 7dcb0a50b1ee..4a1b24a01e1f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-045-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-045-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-045.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-045.xht index 5aae530be437..211c33a761c5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-045.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-045.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-046-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-046-ref.xht index d47c2247582d..14b4d3be2234 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-046-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-046-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-046.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-046.xht index 1fbef6b7b6c0..5be7b8bcb753 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-046.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-046.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-047-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-047-ref.xht index 5c630f351d43..d5759213725a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-047-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-047-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-047.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-047.xht index e3d7e9ee6dfa..19b7113474e1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-047.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-047.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-048-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-048-ref.xht index 754a9ad77c1b..899d35b1ad96 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-048-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-048-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-048.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-048.xht index 942537ca13c6..e1a16cba6d43 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-048.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-048.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-049-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-049-ref.xht index 2b902ccea71b..0e34c390221f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-049-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-049-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-049.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-049.xht index 034b6f90df33..518b7bd1bb22 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-049.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-049.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-050-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-050-ref.xht index 4d4822c2abff..52b5d29d46d7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-050-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-050-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-050.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-050.xht index 76e8269680da..ec69bd4a3ed6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-050.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-050.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-051-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-051-ref.xht index 9ec5aad92ab0..03795b8b535d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-051-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-051-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-051.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-051.xht index 8250d7fdba17..d3a31a4983aa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-051.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-051.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-052-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-052-ref.xht index 497257572d40..2abd956a2c79 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-052-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-052-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-052.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-052.xht index ca2ccf4f8891..6a0951b26830 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-052.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-052.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-053-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-053-ref.xht index 52e4b56876ac..cfca1441ebc8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-053-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-053-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-053.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-053.xht index 22d1fac94e32..eca640d9e6e3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-053.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-053.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-054-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-054-ref.xht index 75976d407545..4c2dae06e642 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-054-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-054-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-054.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-054.xht index 2dfb292d4646..eb9007af3f24 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-054.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-054.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-055-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-055-ref.xht index 7342daabacf3..d87397bac6ce 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-055-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-055-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-055.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-055.xht index 3781cba54217..a5a462f0187c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-055.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-055.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-056-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-056-ref.xht index dafe6aaa8251..3f9d6576f20d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-056-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-056-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-056.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-056.xht index 5cd7a372374f..03b9c5b0d433 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-056.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-056.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-057-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-057-ref.xht index 4a0a5f7c972a..a058e542a9e2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-057-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-057-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-057.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-057.xht index 61e3490b6cfa..7d49e52513d5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-057.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-057.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-058-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-058-ref.xht index 73be491d5b60..80a20c1287fb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-058-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-058-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-058.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-058.xht index e49a8e5f445a..c9da04222f69 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-058.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-058.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-059-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-059-ref.xht index 183013052fa4..07e1392ed14e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-059-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-059-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-059.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-059.xht index 3a3fcd1ae363..35a9c6211cf2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-059.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-059.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-060-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-060-ref.xht index 9d7bf6730c16..396e90db9880 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-060-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-060-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-060.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-060.xht index 1f7fed2f3bbf..d784c64f6d1b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-060.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-060.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-061-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-061-ref.xht index 54270fa8b7b2..0a067a406f5f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-061-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-061-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-061.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-061.xht index f5b12a95a645..92cd18a17900 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-061.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-061.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-062-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-062-ref.xht index 615ccec5552f..7e8ac3794ae9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-062-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-062-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-062.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-062.xht index 2b57d95cee6b..845322ad36e4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-062.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-062.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-063-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-063-ref.xht index 86d22e2146ab..18379766f849 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-063-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-063-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-063.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-063.xht index 54f3a9c95b8d..44be9e3fe3d8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-063.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-063.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-064-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-064-ref.xht index 2b8dddb4c740..44d521f3fad8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-064-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-064-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-064.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-064.xht index 77f32a67d2f6..72d2828e9266 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-064.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-064.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-065-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-065-ref.xht index c1f893397cb6..c2b8f90884d5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-065-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-065-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-065.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-065.xht index 28587af03f4a..bf78eafd5eeb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-065.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-065.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-066-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-066-ref.xht index 25201b21e762..420390c2b7ae 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-066-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-066-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-066.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-066.xht index 891a08a246cb..a4a47d3a7305 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-066.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-066.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-067-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-067-ref.xht index a0e0322264df..ffcf4b63b6c0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-067-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-067-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-067.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-067.xht index 8a1d50a89d0c..1ce637b88ba1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-067.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-067.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-068-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-068-ref.xht index 8a8523d044cc..4f6406b65e26 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-068-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-068-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-068.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-068.xht index 011743958d00..5e3b4b948192 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-068.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-068.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-069-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-069-ref.xht index fc0b19135cea..9612536e34cc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-069-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-069-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-069.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-069.xht index a44016a93836..9f47cbdd192c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-069.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-069.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-070-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-070-ref.xht index 78d36c473c1e..5df57f4efa8b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-070-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-070-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-070.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-070.xht index 42dd948095cb..8a97e8aad079 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-070.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-070.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-071-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-071-ref.xht index 08ea31e27f12..1429ad4055b2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-071-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-071-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-071.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-071.xht index 76c772a8278c..8ec59862667f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-071.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-071.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-072-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-072-ref.xht index 7cc060db5282..9029cb627c66 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-072-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-072-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-072.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-072.xht index dca5f57103fb..e5ddc3b0ce7b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-072.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-072.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-073-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-073-ref.xht index 483c1942dda1..82ea14da3401 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-073-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-073-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-073.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-073.xht index 7893d9d2bbd0..bc82c3f398ef 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-073.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-073.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-074-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-074-ref.xht index 43abf67c081a..d17f36a0e1e3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-074-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-074-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-074.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-074.xht index a1811a0688d5..c1b809d3e860 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-074.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-074.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-075-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-075-ref.xht index 4e3ff5358864..07440f2e6aa2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-075-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-075-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-075.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-075.xht index 97c072c781ae..116835214fcd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-075.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-075.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-076-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-076-ref.xht index ecd9e312464e..f0e860387625 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-076-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-076-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-076.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-076.xht index 41f20f5a468b..e8550206840a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-076.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-076.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-077-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-077-ref.xht index a0f885a134be..0b04e40bb2d2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-077-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-077-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-077.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-077.xht index c44ed0437552..5e1556fe6f73 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-077.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-077.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-078-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-078-ref.xht index 2f8d10b30256..cac0c4664b03 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-078-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-078-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-078.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-078.xht index dd0d099652ce..cb5878197fc2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-078.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-078.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-079-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-079-ref.xht index 90759c89d306..af27c5238aef 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-079-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-079-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-079.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-079.xht index 063dfaecdcb6..d009b28cae86 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-079.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-079.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-080-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-080-ref.xht index c5517234ba9c..b1a5f0fb621b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-080-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-080-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-080.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-080.xht index 29549bf9e39d..7bc8d5e74b08 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-080.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-080.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-081-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-081-ref.xht index 49a9730b2aca..7f04c16e86c3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-081-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-081-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-081.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-081.xht index 1912f0223705..b956e90e1915 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-081.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-081.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-082-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-082-ref.xht index 39845902618b..73719c295227 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-082-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-082-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-082.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-082.xht index be275b748956..a9a1ed148c56 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-082.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-082.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-083-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-083-ref.xht index 99b3e755169e..0be1e05ece34 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-083-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-083-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-083.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-083.xht index 9be724834367..bea429bc0554 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-083.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-083.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-084-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-084-ref.xht index f18d6be7b4a7..abd0782f2749 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-084-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-084-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-084.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-084.xht index 69ae252024a1..730b280f618f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-084.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-084.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-085-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-085-ref.xht index 1839bb004264..2fe11bb5f24d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-085-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-085-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-085.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-085.xht index 106521c3dcee..2ee059d360b3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-085.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-085.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-086-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-086-ref.xht index ffdc2f8a94b6..2c922b761fce 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-086-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-086-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-086.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-086.xht index 4112ce2174b5..d1ab1614558e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-086.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-086.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-087-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-087-ref.xht index 46bf453e2022..ec4fe504c62c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-087-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-087-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-087.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-087.xht index 30e9e225e3a3..e9b2a7740cb3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-087.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-087.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-088-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-088-ref.xht index fefe77d87652..b33c3b0daf0f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-088-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-088-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-088.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-088.xht index 834371f0dc68..c728b24b0f8e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-088.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-088.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-089-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-089-ref.xht index 44f2f673d4c1..56ea09627c4a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-089-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-089-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-089.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-089.xht index 2076b0d6ec03..3f0af3071cb4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-089.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-089.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-090-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-090-ref.xht index 6c60fd149923..eb7a943e9b2a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-090-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-090-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-090.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-090.xht index d95e8f6a86f4..362eecc18054 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-090.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-090.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-091-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-091-ref.xht index d6402065c8b5..0cf386c8c761 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-091-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-091-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-091.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-091.xht index 011ee2ee83c7..bdf55fcfdb8e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-091.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-091.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-092-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-092-ref.xht index 8d8989e3fc6c..2a9ec78f82be 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-092-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-092-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-092.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-092.xht index 0136cd3da78a..7fbf1771e709 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-092.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-092.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-093-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-093-ref.xht index 896585892c57..351da08228a1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-093-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-093-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-093.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-093.xht index 0d2aff616172..21353f1f23c6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-093.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-093.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-094-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-094-ref.xht index b117905324db..eb1991d0e944 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-094-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-094-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-094.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-094.xht index 9b67f6c8f27d..66841b53b60c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-094.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-094.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-095-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-095-ref.xht index 249b9bdad0c1..25eb98e03b89 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-095-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-095-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-095.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-095.xht index ea6d1e931b88..f1de4e51f879 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-095.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-095.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-096-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-096-ref.xht index b28f677585a9..7516250df745 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-096-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-096-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-096.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-096.xht index 0e7f59a5758e..e99f502bb113 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-096.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-096.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-097-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-097-ref.xht index ac2768123d22..6ad6cf500e59 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-097-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-097-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-097.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-097.xht index 81fdc9e43e11..7ecff5047623 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-097.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-097.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-098-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-098-ref.xht index 35121ad0109a..d2a3d5e52f15 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-098-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-098-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-098.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-098.xht index 72498ee3953a..b7f2dee77e73 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-098.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-098.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-099-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-099-ref.xht index 7fd4afc58e43..9ea66d689a82 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-099-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-099-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-099.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-099.xht index e6996f8a84b7..b5de98561ae2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-099.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-099.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-100-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-100-ref.xht index 4fd43b7e79c8..77cba515ce38 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-100-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-100-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-100.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-100.xht index 8a59281b73ba..ca0bcb140b53 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-100.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-100.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-101-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-101-ref.xht index b50a511c8763..788ebd78a431 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-101-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-101-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-101.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-101.xht index cf76eec3ff70..dfb7d6cd5fcb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-101.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-101.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-102-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-102-ref.xht index e9aaefec18e0..df52a32b0281 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-102-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-102-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-102.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-102.xht index ba1c4ef599ad..20d9dac701e8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-102.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-102.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-103-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-103-ref.xht index c32ad72d0730..730279077e40 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-103-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-103-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-103.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-103.xht index 80136370fb2c..b4a03dcd45b0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-103.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-103.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-104-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-104-ref.xht index 6259a445f3ec..ff6f146e3c35 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-104-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-104-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-104.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-104.xht index 203078269010..fbfb41b2268d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-104.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-104.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-105-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-105-ref.xht index af9cf60c460e..973210d206ff 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-105-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-105-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-105.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-105.xht index 076227997ef4..120ed83a848d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-105.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-105.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-106-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-106-ref.xht index 841899ccd23c..afc93d75a526 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-106-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-106-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-106.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-106.xht index 03e82d6f8950..b1478179bcde 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-106.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-106.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-107-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-107-ref.xht index 0a4a319f8047..d4ddbf6b8d3b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-107-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-107-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-107.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-107.xht index 2df58bac624e..b03fe20050df 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-107.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-107.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-108-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-108-ref.xht index 92e16ae2803b..70d26e35e08a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-108-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-108-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-108.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-108.xht index 5dbc170e1758..98ced09a210b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-108.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-108.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-109-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-109-ref.xht index c7aab85ee817..754a71c9bf77 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-109-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-109-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-109.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-109.xht index 19ee0b784533..9e4d9e3a95de 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-109.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-109.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-110-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-110-ref.xht index 0cb216d4d5fb..4679bcf218d7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-110-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-110-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-110.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-110.xht index d1f2479779ec..db4211b16b5b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-110.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-110.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-111-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-111-ref.xht index 45007cc12dfb..89e596380432 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-111-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-111-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-111.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-111.xht index 81aeff9f29ae..b8fdc42c747a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-111.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-111.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-112-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-112-ref.xht index 5c8997d032dc..e9108e51e982 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-112-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-112-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-112.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-112.xht index cf909142621e..32b0cac84b65 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-112.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-112.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-113-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-113-ref.xht index 08e8009b579f..c98a961f3c6b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-113-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-113-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-113.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-113.xht index 795251e479e2..6319741b8685 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-113.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-113.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-115-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-115-ref.xht index d2290bc4a79a..18aae18a2f4d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-115-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-115-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-115.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-115.xht index 7264641d156b..1e03c3487256 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-115.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-115.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-116-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-116-ref.xht index e654713227b3..2009eb01edaf 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-116-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-116-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-116.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-116.xht index 13792d0b2e9f..af4ed16452db 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-116.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-116.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-117-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-117-ref.xht index 5c13219c7282..4b3979dd460f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-117-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-117-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-117.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-117.xht index bfb133773a90..206fe5fd4c4e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-117.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-117.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-118-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-118-ref.xht index 8c8d7596a3a7..27d4b7dfb364 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-118-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-118-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-118.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-118.xht index b8ba5762c6c4..5f74b03c12bc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-118.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-118.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-119-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-119-ref.xht index 4bd7fade4c4d..3a7ab5c1af32 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-119-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-119-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-119.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-119.xht index bd2addc5b334..65923d5e9938 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-119.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-119.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-120-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-120-ref.xht index 79a6f64292bd..8caa557527f8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-120-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-120-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-120.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-120.xht index 555d5f12a6a2..4e597e27f2dc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-120.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-120.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-121-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-121-ref.xht index bcb33474f9a3..90c81dd02c6d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-121-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-121-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-121.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-121.xht index e269ba1d2c83..cdff33d505c5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-121.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-121.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-122-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-122-ref.xht index fe6342e18b42..289151ba7dce 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-122-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-122-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-122.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-122.xht index 71a7020f0f81..6e1dd8220579 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-122.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-122.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-123-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-123-ref.xht index b6a581e393d7..cfcb3dc45860 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-123-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-123-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-123.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-123.xht index cf49cfa6a249..28a88707e65a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-123.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-123.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-124-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-124-ref.xht index 66d512a4820d..e64e7add4698 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-124-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-124-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-124.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-124.xht index 4e0544769309..98c529c5c158 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-124.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-124.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-125-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-125-ref.xht index b328c12e2eee..492806fb64fd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-125-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-125-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-125.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-125.xht index 48a8bae295cf..3371e9ef49a9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-125.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-125.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-126-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-126-ref.xht index 451a042d0228..0d82b5c95f17 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-126-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-126-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-126.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-126.xht index 953d5748f944..c5c2ab9f7251 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-126.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-126.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-127-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-127-ref.xht index f09bf00a9a8d..d99ee5d77c69 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-127-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-127-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-127.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-127.xht index 98fa11e266b7..dfb7fca8dd7b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-127.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-127.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-128-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-128-ref.xht index 40110d96067c..3c18fc8d5dd4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-128-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-128-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-128.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-128.xht index d4e602009015..02c114510f31 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-128.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-128.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-129-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-129-ref.xht index 06312d1ce59c..c7b47016b86c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-129-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-129-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-129.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-129.xht index 236598ed51d1..0b1ae640c7b7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-129.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-129.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-130-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-130-ref.xht index fad4f813446a..837c8a31c714 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-130-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-130-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-130.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-130.xht index 4ffb6d787a82..838d61462e96 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-130.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-130.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-131-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-131-ref.xht index 32f8a18b3886..bcec253120e8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-131-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-131-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-131.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-131.xht index 2609f2312df2..e039b9afc062 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-131.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-131.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-132-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-132-ref.xht index 57779d545a14..b4d105dc814a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-132-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-132-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-132.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-132.xht index 914909024633..71244835f3aa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-132.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-132.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-133-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-133-ref.xht index f1bd23ed9c52..68ff4671baf5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-133-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-133-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-133.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-133.xht index cdd609ed1fe8..b7bbbfe89d09 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-133.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-133.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-134-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-134-ref.xht index 7b5cc27f3bf7..88d72fdbce90 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-134-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-134-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-134.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-134.xht index b629044ecc89..7c68c9cebc20 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-134.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-134.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-135-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-135-ref.xht index f55e7b843a60..66d1b40d0a86 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-135-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-135-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-135.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-135.xht index fa69c75d3863..883829227b29 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-135.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-135.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-136-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-136-ref.xht index 3058f9849cb4..1565fc9c06a4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-136-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-136-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-136.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-136.xht index 9cb47134781b..40fb0bfb9ee2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-136.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-136.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-137-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-137-ref.xht index aef723d2a654..5b398a33c429 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-137-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-137-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-137.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-137.xht index 28c97dd50192..ca929ca94841 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-137.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-137.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-138-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-138-ref.xht index 827140651369..c8b4a2498a51 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-138-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-138-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-138.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-138.xht index 1207573a1cf2..a0daa2c05618 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-138.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-138.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-139-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-139-ref.xht index 29768d271bfd..b285ad737706 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-139-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-139-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-139.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-139.xht index 0b7a16dc801a..7d802750fc4e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-139.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-139.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-140-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-140-ref.xht index e7310b6cd4b7..2f65eb917535 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-140-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-140-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-140.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-140.xht index a6c4ded62143..59324ddeaa40 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-140.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-140.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-141-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-141-ref.xht index c824c3126870..beeda0e6c471 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-141-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-141-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-141.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-141.xht index 2248d9161545..0a94ebe7c954 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-141.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-141.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-142-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-142-ref.xht index 74aa13949785..f0532555c424 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-142-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-142-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-142.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-142.xht index eb3cfc286c43..10a8c5b32432 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-142.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-142.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-143-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-143-ref.xht index 133b4749433e..a6bdd4468dff 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-143-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-143-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-143.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-143.xht index e9f405a30386..27d2d77d2a53 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-143.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-143.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-144-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-144-ref.xht index 50f2e19e74b7..461baf3fbd23 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-144-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-144-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-144.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-144.xht index 91b4ec18800d..cde0eed99d2e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-144.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-144.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-145-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-145-ref.xht index b7189f856e33..50f2be2fccd7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-145-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-145-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-145.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-145.xht index 70343602827b..99c53c88dbe5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-145.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-145.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-146-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-146-ref.xht index 36ddb5b88e9e..474c17fd6502 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-146-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-146-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-146.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-146.xht index 6cef4c86c483..9cbcd9a072fc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-146.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-146.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-147-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-147-ref.xht index f2de64954be5..84d0d59019af 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-147-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-147-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-147.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-147.xht index 15c601f81034..7c00b4067af6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-147.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-147.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-148-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-148-ref.xht index 481a63227f3a..f55f4dff092e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-148-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-148-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-148.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-148.xht index 381beea42855..7b18617fc41c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-148.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-148.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-149-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-149-ref.xht index 14ab1cbdc09a..df53bfa2a96a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-149-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-149-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-149.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-149.xht index d7d7876997bd..ce50566f2edf 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-149.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-149.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-150-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-150-ref.xht index 8378bd37d3d0..86b5e3bbc7e9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-150-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-150-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-150.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-150.xht index 6623383ff3f9..a7276a8861e3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-150.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-150.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-151-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-151-ref.xht index bf37f6af9f5d..5107caa488b6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-151-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-151-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-151.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-151.xht index d6b5c73995d8..f22a923dc603 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-151.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-151.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-152-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-152-ref.xht index c2af35679665..e4bfbc6a3e35 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-152-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-152-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-152.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-152.xht index 4bf055cab616..ed9fdef8ac34 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-152.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-152.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-153-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-153-ref.xht index b347c0c8ba49..80fad3771022 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-153-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-153-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-153.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-153.xht index 39a8ec6c6cd3..71a21d807667 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-153.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-153.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-154-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-154-ref.xht index 1567a74b4956..0eea3b8e7947 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-154-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-154-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-154.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-154.xht index 27771d10a69c..57a1ef266dbd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-154.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-154.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-155-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-155-ref.xht index 8fe9e4f7ed24..492e0fb11d2d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-155-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-155-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-155.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-155.xht index fa9c56d86cf4..092dee0a6c2a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-155.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-155.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-156-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-156-ref.xht index 9965cacb66d3..03db729346cb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-156-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-156-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-156.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-156.xht index ad1f7ca7a614..7825c56fec9d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-156.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-156.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-157-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-157-ref.xht index f7db722af8f2..459be01e07de 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-157-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-157-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-157.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-157.xht index 53d6291773f9..9e694eddbaeb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-157.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-157.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-158-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-158-ref.xht index 5d7cf23eb8de..8d72e9e3b4a3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-158-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-158-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-158.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-158.xht index 0efd0118ce46..7c0c73f1402f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-158.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-158.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-159-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-159-ref.xht index b5b8db53774f..5b1550923467 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-159-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-159-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-159.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-159.xht index f51a381683a0..9a73999eab3b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-159.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-159.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-160-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-160-ref.xht index 50a3ba8823c1..d78d17be0764 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-160-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-160-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-160.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-160.xht index 062c53807713..bfc57d8097e6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-160.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-160.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-161-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-161-ref.xht index 0d99692c770b..d464cbdd7663 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-161-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-161-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-161.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-161.xht index 65f72f7152f9..c04bdf33a206 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-161.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-161.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-162-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-162-ref.xht index 0ef7f6f6377b..64c7a7690d56 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-162-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-162-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-162.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-162.xht index 19289f8f04c5..d8c4a89c2128 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-162.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-162.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-163-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-163-ref.xht index 51a04f668677..91e9d5e792e4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-163-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-163-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-163.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-163.xht index 22f1d54b1af1..31a44accca06 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-163.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-163.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-164-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-164-ref.xht index ed969123157b..579567b0ea7b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-164-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-164-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-164.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-164.xht index f8a7a7498bc6..658f6c003c68 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-164.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-164.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-165-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-165-ref.xht index 4c44d3df03a1..004cfeaed3f4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-165-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-165-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-165.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-165.xht index 0a9228ce8c6a..55a0d64cb2cb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-165.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-165.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-166-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-166-ref.xht index 9b215ec915f7..0384e9a92f32 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-166-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-166-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-166.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-166.xht index 8c51e2e57e88..7569554f8ba2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-166.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-166.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-167-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-167-ref.xht index 9584f6de9ab1..6cb5e1c37898 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-167-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-167-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-167.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-167.xht index ed66067e2174..df7abf286a3e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-167.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-167.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-168-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-168-ref.xht index e766c0e21281..3d95e1533f0f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-168-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-168-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-168.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-168.xht index aec03760c32b..18185e49ad21 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-168.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-168.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-169-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-169-ref.xht index 9db81f75e666..c8b0aa50ba55 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-169-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-169-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-169.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-169.xht index e395cb0aa82b..46e353b3787e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-169.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-169.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-170-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-170-ref.xht index c733aaf7f6b2..743cc4b23858 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-170-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-170-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-170.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-170.xht index 100966773df6..36df8f3a208f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-170.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-170.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-171-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-171-ref.xht index deab09af892f..bc727c799e31 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-171-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-171-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-171.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-171.xht index ffd1ced67e43..af9c30ffeb09 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-171.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-171.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-172-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-172-ref.xht index ca15ad0ca25d..32c8c572d305 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-172-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-172-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-172.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-172.xht index 0125d1d3c79d..c247d7bb612d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-172.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-172.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-173-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-173-ref.xht index f25f31b863a6..534a0b1fc2ca 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-173-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-173-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-173.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-173.xht index 30aa1465eca7..302f5483d19b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-173.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-173.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-174-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-174-ref.xht index 60bdddf136c5..399f71e2c050 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-174-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-174-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-174.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-174.xht index 89b2eab3818f..bdab4c3525f5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-174.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-174.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-175-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-175-ref.xht index f21b7cfd23e4..afee42c62123 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-175-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-175-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-175.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-175.xht index c5b5399750ce..c57f7b291206 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-175.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-175.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-176-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-176-ref.xht index 8d513a337506..cabce1b2f578 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-176-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-176-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-176.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-176.xht index cc54471df1b5..2eaeac64df45 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-176.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-176.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-177-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-177-ref.xht index d2ddcd394601..d41187453524 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-177-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-177-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-177.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-177.xht index 2f6afb49718f..e9ca73466804 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-177.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-177.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-178-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-178-ref.xht index 69895bdfff44..ca7118d682ee 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-178-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-178-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-178.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-178.xht index 4821acb39fbc..c55d01d6cb6c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-178.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-178.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-179-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-179-ref.xht index be7445d785b6..cb13983ff2b9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-179-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-179-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-179.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-179.xht index 139f93d95f31..669825a59c14 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-179.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-179.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-180-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-180-ref.xht index 122c28a8ce12..d5923ee7c784 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-180-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-180-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-180.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-180.xht index fd0eb2202a0d..355b2a6c93f2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-180.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-180.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-181-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-181-ref.xht index 978e6bd76415..2c9e7afa71b3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-181-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-181-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-181.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-181.xht index 745525e2a4aa..cf56611683b6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-181.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-181.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-182-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-182-ref.xht index 389d49ce3cca..e2c16a33e3a0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-182-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-182-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-182.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-182.xht index 0606860fbb97..2bff193c6c0f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-182.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-182.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-183-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-183-ref.xht index 5b0239b18c66..1417888516d1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-183-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-183-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-183.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-183.xht index b315135c2589..552773141752 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-183.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-183.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-184-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-184-ref.xht index 08ab9d78da4d..4bc74bda5136 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-184-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-184-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-184.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-184.xht index 535049573a43..ba4755c1ba8f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-184.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-184.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-185-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-185-ref.xht index 2f38885b7d64..981d79d2c946 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-185-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-185-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-185.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-185.xht index b91562f3ec23..26dff147e180 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-185.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-185.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-186-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-186-ref.xht index 3ab14b4dd47a..30ff65774464 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-186-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-186-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-186.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-186.xht index 0e1211eeaceb..c15733a35e46 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-186.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-186.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-187-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-187-ref.xht index a3957ed21fc5..392e751c7435 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-187-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-187-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-187.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-187.xht index 4f330f15c0ca..4352eee5e8b7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-187.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-187.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-188-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-188-ref.xht index 3c6fd5127485..e9b4d6d876c6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-188-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-188-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-188.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-188.xht index 0a8f74974fa5..6edb4f792756 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-188.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-188.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-189-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-189-ref.xht index 3fe6979a76f9..71843fa789b4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-189-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-189-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-189.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-189.xht index 53e4c7862521..0d4a5669a0f5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-189.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-189.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-190-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-190-ref.xht index 9be0478a000f..fc0988270c87 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-190-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-190-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-190.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-190.xht index 3eef2b6948e4..77ad96cf2b96 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-190.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-190.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-191-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-191-ref.xht index 5bdfb7cebcdd..8ebd426b0b05 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-191-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-191-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-191.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-191.xht index 3b28f300a368..d40185b14d5f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-191.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-191.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-192-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-192-ref.xht index 11c98f993c27..9f35e693ae8f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-192-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-192-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-192.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-192.xht index 374da016cf30..90d284ad3385 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-192.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-192.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-193-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-193-ref.xht index 8b62224000c8..b3f735fe63ba 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-193-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-193-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-193.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-193.xht index 832224de1626..7bfd148ba1a1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-193.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-193.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-194-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-194-ref.xht index 745c3cefc2bc..eb8b2ffe863f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-194-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-194-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-194.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-194.xht index 52f78e9676bd..eab152af2cee 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-194.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-194.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-195-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-195-ref.xht index e9db800cd070..4c98dafb5546 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-195-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-195-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-195.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-195.xht index c5a91d6ada61..c75ef1e5568e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-195.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-195.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-196-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-196-ref.xht index c31156355b80..8ab2fe038fd4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-196-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-196-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-196.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-196.xht index 70e9ee195a83..60a0a750ffe6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-196.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-196.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-197-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-197-ref.xht index 32ba3a00578c..3e0b68e29803 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-197-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-197-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-197.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-197.xht index 2fcc4ca71f6d..943087a09fe4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-197.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-197.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-198-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-198-ref.xht index 01e3c588827b..38b1f8ade24c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-198-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-198-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-198.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-198.xht index 950893b29c60..48cfe1d53791 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-198.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-198.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-199-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-199-ref.xht index 0570f7c30ba7..8cf6a1ab8b64 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-199-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-199-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-199.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-199.xht index 751f7d49b6f2..d8cdbf37728a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-199.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-199.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-200-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-200-ref.xht index 6cef10931b64..9720a16119ce 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-200-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-200-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-200.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-200.xht index 048b76f3064f..04bbd554f75d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-200.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-200.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-201-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-201-ref.xht index 7bbb23750d24..d9c59172324a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-201-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-201-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-201.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-201.xht index 0b1a2c3674d0..82fcf6be4812 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-201.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-201.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-202-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-202-ref.xht index 000d649e80f5..995d61316295 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-202-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-202-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-202.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-202.xht index a8c99dd79c08..1350b37948dd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-202.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-202.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-203-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-203-ref.xht index f0cd566ed640..851b101a2d47 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-203-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-203-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-203.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-203.xht index 3b0605c587b6..27c510890667 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-203.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-203.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-204-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-204-ref.xht index ab2f3a406e0b..d5c731895649 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-204-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-204-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-204.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-204.xht index 7da6599c88cf..e08658033bc8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-204.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-204.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-205-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-205-ref.xht index bb1377d22616..8e511ec2aefa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-205-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-205-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-205.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-205.xht index 97119adb3e8e..d409ab667a86 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-205.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-205.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-206-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-206-ref.xht index 9071fcbcb8e7..e387f3158f8b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-206-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-206-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-206.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-206.xht index 22e2ef65c8ec..1467bcc8fc25 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-206.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-206.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-207-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-207-ref.xht index db540bc8df31..8a4863fca144 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-207-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-207-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-207.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-207.xht index e7c1330fc157..d6dd6ed1d41f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-207.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-207.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-208-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-208-ref.xht index 4867bf3391ca..e366b23519b5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-208-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-208-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-208.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-208.xht index 928bbf057e7a..e3c521b1ef59 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-208.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-208.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-211-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-211-ref.xht index 00be4493da39..6a8855b5867a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-211-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-211-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-211.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-211.xht index 0b83dd88d668..78f5cb400e2f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-211.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-211.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-212-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-212-ref.xht index 08ff0e7913ba..d692a1568ff0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-212-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-212-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-212.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-212.xht index 041e2263af4f..2e129f6c5b9d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-212.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-212.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-213-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-213-ref.xht index 793ad881297a..4146f2a4ccb4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-213-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-213-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-213.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-213.xht index 216f61e2bf0d..298630b4eb76 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-213.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-213.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-214-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-214-ref.xht index 78b549f7b89f..59d5397e17f0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-214-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-214-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-214.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-214.xht index 63f62eda4493..c831ab3141ae 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-214.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-214.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-215-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-215-ref.xht index cf3e3f5c9773..21a22afd83f3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-215-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-215-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-215.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-215.xht index c4924720d8bb..1a6e28a8d063 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-215.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-215.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-216-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-216-ref.xht index 507166776c86..7bb3bf8dcb6c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-216-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-216-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-216.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-216.xht index 521c2713961b..4d4cb14c1097 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-216.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-216.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-217-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-217-ref.xht index 3baeda352563..1be6083c50bc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-217-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-217-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-217.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-217.xht index 79ad368de550..21d597b3eede 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-217.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-217.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-218-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-218-ref.xht index bc4481f6fbb3..afeb023a9929 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-218-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-218-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-218.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-218.xht index df65d5cc66e6..86cab67d99cd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-218.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-218.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-219-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-219-ref.xht index 2c68c6b90224..eb7dad3185a6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-219-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-219-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-219.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-219.xht index e94cdbe04245..bf9771312cb3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-219.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-219.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-220-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-220-ref.xht index 5786499d069c..0f1121d8cf6b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-220-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-220-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-220.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-220.xht index 3103187e6aeb..1b2dcdf5c01e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-220.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-220.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-221-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-221-ref.xht index b458860d5b98..188bc5d2772d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-221-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-221-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-221.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-221.xht index 21fe043543b0..0cd4a635150d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-221.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-221.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-222-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-222-ref.xht index d1916f693644..079ba6b60c73 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-222-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-222-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-222.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-222.xht index de3d04b617a9..341899670b29 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-222.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-222.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-223-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-223-ref.xht index 9d2a3685ef70..92a56c613b11 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-223-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-223-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-223.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-223.xht index af1376a23717..b64bb9d19cb2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-223.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-223.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-224-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-224-ref.xht index dddf3da6c307..476796899c3f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-224-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-224-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-224.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-224.xht index df0c0db2080e..35366c15703f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-224.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-224.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-225-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-225-ref.xht index 3add954db46d..c35178cdc866 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-225-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-225-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-225.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-225.xht index d82a2fd93016..1d04f814f39a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-225.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-225.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-226-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-226-ref.xht index 57155d6bf15a..e03fdd4774bd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-226-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-226-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-226.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-226.xht index 55db877a17f5..3c602087b0e9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-226.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-226.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-227-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-227-ref.xht index 02ea0cb831ee..de876a43aa0f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-227-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-227-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-227.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-227.xht index fe50cafd9979..f0a9d65d06c6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-227.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-227.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-228-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-228-ref.xht index bbe7b9b6c011..40a0f1c4d422 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-228-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-228-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-228.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-228.xht index 7c36cd45c84c..fda80ded2c55 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-228.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-228.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-229-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-229-ref.xht index 98e9a5aec7a2..7c2910812616 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-229-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-229-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-229.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-229.xht index 54c32192604b..5aba4e6b2ddc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-229.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-229.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-230-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-230-ref.xht index 05670a886a21..ee51c25049a8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-230-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-230-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-230.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-230.xht index 22bc579e1a51..e3dcc74a0a1f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-230.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-230.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-231-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-231-ref.xht index 34c3ece01d13..751c3f4844fb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-231-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-231-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-231.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-231.xht index 906be282a79f..c40ce1c64b31 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-231.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-231.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-232-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-232-ref.xht index 6fd089d4e273..209a715a58a1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-232-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-232-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-232.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-232.xht index 1d3dc6c533d0..c275d4e09478 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-232.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-232.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-233-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-233-ref.xht index b8107bb03818..b214e66e3392 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-233-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-233-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-233.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-233.xht index ed69e0c224f2..b3b44372fbf7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-233.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-233.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-234-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-234-ref.xht index a839c258cc7a..be2b52705240 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-234-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-234-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-234.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-234.xht index db54d2e93d47..609cbc43d011 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-234.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-234.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-235-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-235-ref.xht index 3924f63f62b5..e4cbd83f7458 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-235-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-235-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-235.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-235.xht index 0d18a5805aa8..ea56894dc9e5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-235.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-235.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-236-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-236-ref.xht index d2c221e1d067..0e01b37de62e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-236-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-236-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-236.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-236.xht index 95cc462691ad..4cac8faef8e1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-236.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-236.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-237-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-237-ref.xht index 41d5a50746e9..0509d40c29c8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-237-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-237-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-237.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-237.xht index 131cd1ddfcb9..8e3b26aef57e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-237.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-237.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-238-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-238-ref.xht index b34e23dbebe0..1e42b97d8eee 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-238-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-238-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-238.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-238.xht index 7265af471450..683ca66ff758 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-238.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-238.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-239-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-239-ref.xht index b8031fc48590..d5a7e06f7b21 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-239-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-239-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-239.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-239.xht index 562d8c92aa3e..89c3d3f535b9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-239.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-239.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-240-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-240-ref.xht index 0722f45f1b19..a9cdafa116b2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-240-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-240-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-240.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-240.xht index 7f7cabe4aa80..95287ef6dd4a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-240.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-240.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-241-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-241-ref.xht index b3d72b2c221d..ed4d197bd6ac 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-241-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-241-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-241.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-241.xht index ce68e37fb99f..933c6aa81c48 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-241.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-241.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-242-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-242-ref.xht index 8878dc5a815e..c791cad9cefd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-242-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-242-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-242.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-242.xht index a9c2fddc794c..34b8113c9540 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-242.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-242.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-243-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-243-ref.xht index 00b2b442fa09..c39d8f5b3271 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-243-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-243-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-243.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-243.xht index cd909ccca3d7..213ee367907f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-243.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-243.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-244-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-244-ref.xht index 715346b7f95a..9e0fdf19d4e0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-244-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-244-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-244.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-244.xht index eabf41da7868..7a1487c868aa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-244.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-244.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-245-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-245-ref.xht index 767e313a119c..869e86eae3d5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-245-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-245-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-245.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-245.xht index b8395d3fb9da..fe1fee6cbbb5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-245.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-245.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-246-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-246-ref.xht index d6ca229db710..2b5de2ea3633 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-246-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-246-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-246.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-246.xht index 873ff4e46c88..06be6a6bf0e3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-246.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-246.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-247-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-247-ref.xht index 083f64a44f02..9398c6366b65 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-247-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-247-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-247.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-247.xht index 1e6a25546417..1fe217961db8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-247.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-247.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-248-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-248-ref.xht index f785824559f9..df47b19ee098 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-248-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-248-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-248.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-248.xht index e6fce726c42b..e3e68db3fe07 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-248.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-248.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-249-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-249-ref.xht index cefc2ac02f2b..1e6f37b02ba7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-249-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-249-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-249.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-249.xht index 12e7330a2ab4..4401ef4575e0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-249.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-249.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-250-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-250-ref.xht index 659881e04ed0..33b6b5037fa5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-250-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-250-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-250.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-250.xht index a544fbff4016..b1746b70f688 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-250.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-250.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-251-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-251-ref.xht index 02ddd9de4a57..9dd06eaf1b38 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-251-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-251-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-251.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-251.xht index d14a4862eb3d..f749557e0d1d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-251.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-251.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-252-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-252-ref.xht index 6ee0b6a3a5fd..24efc62eb23c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-252-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-252-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-252.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-252.xht index a2173ead8a25..c7bb1e1e94f9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-252.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-252.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-253-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-253-ref.xht index 2f6aa4f22ccb..3dddd99c6e8d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-253-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-253-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-253.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-253.xht index 424e9a8d1895..dc4eb5f6631a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-253.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-253.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-254-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-254-ref.xht index 911c625ba12b..4b4a1d04b035 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-254-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-254-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-254.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-254.xht index 5c37ea2dd066..55407cd45e9f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-254.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-254.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-255-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-255-ref.xht index bb5bedb83454..60b89a99caf8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-255-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-255-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-255.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-255.xht index 7a2ce27392a0..f7fcf84b2452 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-255.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-255.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-256-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-256-ref.xht index 142b8a9a5ed9..e6462c14f548 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-256-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-256-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-256.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-256.xht index 0bbf2075802c..4f82f030361e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-256.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-256.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-257-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-257-ref.xht index 35641cbcb051..783e216bd1e6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-257-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-257-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-257.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-257.xht index 4d513f0d61bb..ad02334ea908 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-257.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-257.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-258-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-258-ref.xht index 2e9066b32f53..6d6759d79704 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-258-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-258-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-258.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-258.xht index b909571e30dd..639b62ab0e46 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-258.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-258.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-259-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-259-ref.xht index a311dc3c002a..bbb521e851cb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-259-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-259-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-259.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-259.xht index 2edcb7602839..28a28df7084c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-259.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-259.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-260-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-260-ref.xht index 0138342e6c9a..e67ca6ed63ec 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-260-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-260-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-260.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-260.xht index 751003a55c84..fc5c58fc91a6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-260.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-260.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-262-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-262-ref.xht index acf43018bf77..f2bf7e89bdc3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-262-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-262-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-262.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-262.xht index dd341c10602e..78ede1508c38 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-262.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-262.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-263-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-263-ref.xht index 8d40927874ff..519a912c9893 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-263-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-263-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-263.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-263.xht index 51cd6e0b0b72..c811c5d6dfa3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-263.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-263.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-264-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-264-ref.xht index 0d576c888a15..a41582ff2432 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-264-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-264-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-264.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-264.xht index 9c7b45ee37b4..90a765f198d9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-264.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-264.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-265-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-265-ref.xht index 9005ad182cd5..2257fde8d8ef 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-265-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-265-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-265.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-265.xht index f8d0aae02ce7..5a45abd07c65 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-265.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-265.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-266-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-266-ref.xht index 037a2e3504d0..e07cf60a65c8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-266-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-266-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-266.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-266.xht index 98e419a268f9..5388ba009193 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-266.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-266.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-267-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-267-ref.xht index 39c46b01b395..0b0fa6a10b50 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-267-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-267-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-267.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-267.xht index e461c8b8dedc..955b3434b24d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-267.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-267.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-268-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-268-ref.xht index a353be2e8ac6..f0c3389746bb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-268-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-268-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-268.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-268.xht index 1a10b7e389ad..9bb433297109 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-268.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-268.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-269-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-269-ref.xht index a5bf9dd0469a..b1eb0990209d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-269-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-269-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-269.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-269.xht index 9f2f4510a746..def2baf4e1c2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-269.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-269.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-270-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-270-ref.xht index 88f0ae167adc..32df94501e93 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-270-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-270-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-270.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-270.xht index e3ed66a6df56..08cd24105edb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-270.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-270.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-271-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-271-ref.xht index a8850e90e6a0..7b6c44121b4f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-271-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-271-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-271.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-271.xht index 9823d458d27a..4583dd1ee1dd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-271.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-271.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-272-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-272-ref.xht index bedba1bedce1..41afd0b8c230 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-272-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-272-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-272.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-272.xht index f463f0b75d33..c096cd8abf9d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-272.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-272.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-273-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-273-ref.xht index 0392165c039f..73f4497da2b4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-273-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-273-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-273.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-273.xht index 38ac24c039d0..7be36bc18f7b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-273.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-273.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-274-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-274-ref.xht index 4fb3d9878740..7bc6bf68e7ac 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-274-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-274-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-274.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-274.xht index 94062e37ba59..8a69edf8128a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-274.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-274.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-275-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-275-ref.xht index 8551a0c3cfea..af1d6f27e276 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-275-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-275-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-275.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-275.xht index 0285fe128a41..223dbea43255 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-275.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-275.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-276-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-276-ref.xht index c777ca45113c..76db03dd6196 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-276-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-276-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-276.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-276.xht index 661e063823dc..e04f2a0bd816 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-276.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-276.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-277-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-277-ref.xht index cfb5298b6cff..f9f1971405fe 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-277-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-277-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-277.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-277.xht index dc89b8c9e938..caecce6c8e3d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-277.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-277.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-278-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-278-ref.xht index bc6af2c0947f..388f06966f33 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-278-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-278-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-278.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-278.xht index 253a1d9ebcba..67f8e4e23282 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-278.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-278.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-279-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-279-ref.xht index 931c0f0f270f..c1489e87a689 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-279-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-279-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-279.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-279.xht index 0129dd0c0522..260a22aee738 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-279.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-279.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-280-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-280-ref.xht index 3c7fc99c1142..15a83b9cca0e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-280-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-280-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-280.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-280.xht index d25aceeea5e5..8775e27bbb88 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-280.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-280.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-281-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-281-ref.xht index 48f8f49d0253..96da0462e6f0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-281-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-281-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-281.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-281.xht index 4f868e6d22f4..1f64a12b7428 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-281.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-281.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-282-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-282-ref.xht index c59245e31820..4deebc763bd6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-282-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-282-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-282.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-282.xht index c6194a950326..2b9343e5b7fc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-282.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-282.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-283-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-283-ref.xht index 8c96e5316a81..5cde936b2244 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-283-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-283-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-283.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-283.xht index f9ab533b4d16..de258fb0b0e7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-283.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-283.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-284-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-284-ref.xht index 46eaa03cf15b..9387a6a1a5b3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-284-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-284-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-284.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-284.xht index 694c973c6e27..f3d45fc01fd7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-284.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-284.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-285-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-285-ref.xht index 1b2a853ed207..14bde6a7175f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-285-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-285-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-285.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-285.xht index b2d35ae4dc95..9a6bcae5a614 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-285.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-285.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-286-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-286-ref.xht index 130164ec0752..5b8d53810ab6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-286-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-286-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-286.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-286.xht index 54e6571623c7..c9e328cf3539 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-286.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-286.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-287-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-287-ref.xht index 34b186a5e876..eb19646aa4cb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-287-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-287-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-287.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-287.xht index 5a4e866f04d9..c878e7aea9d7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-287.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-287.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-288-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-288-ref.xht index 516f34e5e60a..138de8f74135 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-288-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-288-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-288.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-288.xht index 1fb8db659598..3842fa687fdc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-288.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-288.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-289-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-289-ref.xht index 5d6ce7e0b77d..8381e64c9533 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-289-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-289-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-289.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-289.xht index f68397d0ddae..fdb694dd90fa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-289.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-289.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-290-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-290-ref.xht index a8e5074d154e..738f2fa2ea44 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-290-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-290-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-290.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-290.xht index 4d65f2c4d84a..44bb23ccb963 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-290.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-290.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-291-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-291-ref.xht index 8da75cc4a192..acaf1dfc8873 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-291-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-291-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-291.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-291.xht index a873ac567a2e..98aea5284f77 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-291.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-291.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-292-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-292-ref.xht index b38dfd70f27c..adc9507a42c4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-292-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-292-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-292.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-292.xht index 36ed3ffdb905..dedc11e11507 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-292.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-292.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-293-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-293-ref.xht index 539a2e7d18d6..19ea4982910a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-293-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-293-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-293.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-293.xht index 9c64e8f7b747..689c2f9b861f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-293.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-293.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-294-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-294-ref.xht index b6cae5a65d1a..c2aef093ca65 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-294-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-294-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-294.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-294.xht index 0553863b7eb0..a4b6cd39121d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-294.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-294.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-295-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-295-ref.xht index 24232fa0b4fe..e4f48109a96a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-295-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-295-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-295.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-295.xht index 1b88358e53d4..3c66fa9dcd3b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-295.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-295.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-296-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-296-ref.xht index 7e8884da87b5..d60232b747d5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-296-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-296-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-296.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-296.xht index 890b4a7d4111..9b294a5aafd3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-296.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-296.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-297-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-297-ref.xht index 001c2e2e94e8..3efd41e9178e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-297-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-297-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-297.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-297.xht index 3df5992a39a5..a391ff05d5c0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-297.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-297.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-298-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-298-ref.xht index c74223d93a5c..1afb79d642b4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-298-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-298-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-298.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-298.xht index e7e9276f8ef9..908450e00b40 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-298.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-298.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-299-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-299-ref.xht index bec42fe97da5..bac18089fa1b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-299-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-299-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-299.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-299.xht index f3cff5c77e38..6f99f45a4898 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-299.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-299.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-300-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-300-ref.xht index f22943719f7d..863f9c03e896 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-300-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-300-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-300.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-300.xht index 03c5d4606074..ba427b367bd6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-300.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-300.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-301-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-301-ref.xht index bdd2a457858f..18ce9910cd15 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-301-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-301-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-301.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-301.xht index 033de2526111..048672f67bed 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-301.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-301.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-302-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-302-ref.xht index 56fe64e2dbfc..a5a8c2700d0a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-302-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-302-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-302.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-302.xht index 41d270e50c0e..78e12e79a278 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-302.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-302.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-303-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-303-ref.xht index 648a73e66ff6..db429fb8928c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-303-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-303-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-303.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-303.xht index cb4683b3e28f..1894445612dd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-303.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-303.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-304-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-304-ref.xht index 4c9006ab1a61..885a7c12f00b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-304-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-304-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-304.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-304.xht index 8d43068b8ab9..9824b4f1e629 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-304.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-304.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-305-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-305-ref.xht index 9fc81dc059da..8f4c4d674e66 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-305-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-305-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-305.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-305.xht index 4affea71bd13..a7b862292fc4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-305.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-305.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-306-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-306-ref.xht index 32d0cac0cd79..3ec18a943eec 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-306-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-306-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-306.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-306.xht index 72cca1620fde..bbfefde3c100 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-306.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-306.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-307-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-307-ref.xht index bfebbaa4e051..7e86f831cb5f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-307-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-307-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-307.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-307.xht index cbe2cbaa2cbd..a2234447a79e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-307.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-307.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-308-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-308-ref.xht index 4d3c8090a024..8ba18b7c4ec1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-308-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-308-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-308.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-308.xht index 81d0eeaaa0f2..b612d608ab8b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-308.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-308.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-309-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-309-ref.xht index 1abd4cc59171..d7658e789c9d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-309-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-309-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-309.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-309.xht index 2bc5d2aa3556..7a2fa13dc3f9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-309.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-309.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-310-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-310-ref.xht index c6ccf7e3004d..63a6ad797181 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-310-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-310-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-310.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-310.xht index 40caba13062c..c65f9fb85e78 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-310.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-310.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-311-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-311-ref.xht index 1c67dd756d9c..418365ac3662 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-311-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-311-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-311.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-311.xht index 51a4b2ad1fcf..7225bb94aa35 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-311.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-311.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-312-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-312-ref.xht index 4d0a95819b2b..fa1f31177980 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-312-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-312-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-312.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-312.xht index 9a6ccd6d44b0..6d5e835f1b4b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-312.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-312.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-313-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-313-ref.xht index 67b3114dbdb7..802755bebc31 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-313-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-313-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-313.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-313.xht index 9d3d2767912c..391254fcdc5b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-313.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-313.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-314-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-314-ref.xht index 84883e89cb4e..a80380a2432b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-314-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-314-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-314.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-314.xht index 75ce502ddd2c..dee95ffe6c90 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-314.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-314.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-315-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-315-ref.xht index a670478b5dd3..3d880d86395f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-315-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-315-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-315.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-315.xht index fb739e8334ec..74cd9e10b86e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-315.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-315.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-316-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-316-ref.xht index b66b01795b31..fb5282bd15fc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-316-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-316-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-316.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-316.xht index 42c223a8f2f0..ae4434d26b75 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-316.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-316.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-317-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-317-ref.xht index 8654e697b5ea..a2c7f9a021db 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-317-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-317-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-317.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-317.xht index c09be95cf472..a3bbd19a3bcc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-317.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-317.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-318-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-318-ref.xht index ba879ac7d476..3a89dbe96acf 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-318-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-318-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-318.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-318.xht index b8d14e13e079..bd2eac307c61 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-318.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-318.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-319-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-319-ref.xht index 4f6794dd2416..45e709ffea1a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-319-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-319-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-319.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-319.xht index 947e4922c146..af5da5da3313 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-319.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-319.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-320-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-320-ref.xht index e940ddb3868d..717f231d6858 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-320-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-320-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-320.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-320.xht index a7a7e79f4e99..737a474f8f15 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-320.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-320.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-321-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-321-ref.xht index 21f306ffdca1..fe0ebf3eca9c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-321-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-321-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-321.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-321.xht index 89284efed5d7..ec8b00d2f2c9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-321.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-321.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-322-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-322-ref.xht index 7d6a17a8f113..7e55e2e02715 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-322-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-322-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-322.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-322.xht index ed197b7d7cf4..28b4d8dd45f9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-322.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-322.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-323-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-323-ref.xht index e787afb2d548..9de4e412ab39 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-323-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-323-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-323.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-323.xht index e1ec8a264865..a0a6dc2bcf53 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-323.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-323.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-324-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-324-ref.xht index c49e415f17e1..b8a823de41e0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-324-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-324-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-324.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-324.xht index 64a7c6063038..e3dcb0261a5e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-324.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-324.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-325-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-325-ref.xht index d109b17f62d0..c2eb6fa67a55 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-325-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-325-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-325.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-325.xht index 0ad807318f3d..11d43f8f6d2c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-325.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-325.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-326-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-326-ref.xht index 57c2fb1f353f..2b37d74b1c38 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-326-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-326-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-326.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-326.xht index 098054073a2b..d161133f95e5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-326.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-326.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-327-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-327-ref.xht index 958abf4833b3..cf6267ff96ae 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-327-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-327-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-327.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-327.xht index fb4520e946cf..503f569d5786 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-327.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-327.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-328-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-328-ref.xht index a9d0bdbde7b4..43114a8c1d4b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-328-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-328-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-328.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-328.xht index 3232f76a0d61..56b53e6c0f1e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-328.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-328.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-329-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-329-ref.xht index c39f5b7d45ce..ab344096d33f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-329-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-329-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-329.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-329.xht index 0ce7eb734021..ff8e823a9842 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-329.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-329.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-330-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-330-ref.xht index c365ec95d4b9..a1fc53fabd33 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-330-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-330-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-330.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-330.xht index deabac0e3daf..475530a0d40c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-330.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-330.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-331-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-331-ref.xht index 0ff31340967d..762e93665cd7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-331-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-331-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-331.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-331.xht index d38b920de4a8..3a66eac1257f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-331.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-331.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-332-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-332-ref.xht index 6937fbca71be..0209c4e81163 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-332-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-332-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-332.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-332.xht index c5b8f1e5aa59..3c4de60a3b90 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-332.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-332.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-333-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-333-ref.xht index 4fe9f261fd11..4c7281cf032c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-333-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-333-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-333.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-333.xht index df27f1c7bce5..e8e99aed58ba 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-333.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-333.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-334-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-334-ref.xht index 7aa06703ad2e..ca7d14649b03 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-334-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-334-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-334.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-334.xht index aac48b605bcd..36265c9cf5aa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-334.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-334.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-335-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-335-ref.xht index 2487a4b73212..e1de21e7ce5e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-335-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-335-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-335.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-335.xht index 9ab002e38080..818a96147d2a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-335.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-335.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-336-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-336-ref.xht index 5ea78d9eff57..c7f64fe35c77 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-336-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-336-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-336.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-336.xht index 14a1dd010c35..4df86ba64978 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-336.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-336.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-337-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-337-ref.xht index c7f3ba2feca5..df98c3176fed 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-337-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-337-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-337.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-337.xht index 629af6ec7343..b9452e8601e0 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-337.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-337.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-338-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-338-ref.xht index feda2767383e..27732b67aaf3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-338-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-338-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-338.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-338.xht index a19ef814eec2..a0362b1b7e80 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-338.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-338.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-339-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-339-ref.xht index a5cd00371b21..804afda93d23 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-339-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-339-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-339.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-339.xht index 5bf143055acd..aafc464acb5a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-339.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-339.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-340-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-340-ref.xht index a06c5c02d995..6d131f02c5f9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-340-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-340-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-340.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-340.xht index 872b10625bc1..d26013aadcb5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-340.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-340.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-341-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-341-ref.xht index c380a7e4d3d9..cb8c9a4a639a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-341-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-341-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-341.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-341.xht index d3c16276a5e1..d76ddb65d6dd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-341.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-341.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-342-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-342-ref.xht index c20397dd5212..db5ca8c88287 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-342-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-342-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-342.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-342.xht index 8aa2c9f5cacc..3fe9517fef32 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-342.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-342.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-343-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-343-ref.xht index fc90353a4147..fc4e75d8a262 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-343-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-343-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-343.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-343.xht index 352199496130..2f9f2c641729 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-343.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-343.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-344-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-344-ref.xht index b5bda44dc8ab..9e6e26ad7c7e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-344-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-344-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-344.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-344.xht index 13da537cb66f..b4f2718c7ac5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-344.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-344.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-345-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-345-ref.xht index f85d2db9907a..64a7995ad208 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-345-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-345-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-345.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-345.xht index aedaebbab734..952f7d4b689e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-345.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-345.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-346-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-346-ref.xht index c2536bb3f35d..bfc7fa2472ce 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-346-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-346-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-346.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-346.xht index 7ca5f54d5fbe..d9387c456dad 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-346.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-346.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-347-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-347-ref.xht index 2b3952bbadd7..357b449bde01 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-347-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-347-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-347.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-347.xht index b0c77b79311a..f5e0297638b9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-347.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-347.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-348-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-348-ref.xht index 6e130de64506..f8af27e89deb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-348-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-348-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-348.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-348.xht index 20e2144a9b2e..8be0e328327c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-348.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-348.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-349-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-349-ref.xht index 14311d27ecee..e96ec5164139 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-349-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-349-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-349.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-349.xht index 09e725e0f841..346cd9a4efc8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-349.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-349.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-350-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-350-ref.xht index 6ea041d5472f..93cd4300d62f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-350-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-350-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-350.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-350.xht index 4d87155892d2..2f5f5c35c55b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-350.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-350.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-351-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-351-ref.xht index 321a5f21a42c..937b34258e2d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-351-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-351-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-351.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-351.xht index 64e4a5662ebe..617c16b9369c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-351.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-351.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-352-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-352-ref.xht index 5075ea0bc0f8..67a893692291 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-352-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-352-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-352.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-352.xht index 7dcb008d63c5..ebb0c5bbf1ed 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-352.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-352.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-353-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-353-ref.xht index 63ecebf8ca45..2aea289c07d8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-353-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-353-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-353.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-353.xht index 259b1cb47446..c1fc369ca91d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-353.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-353.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-354-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-354-ref.xht index db8f712c6fe5..18347df0fed8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-354-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-354-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-354.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-354.xht index 13d6240672a3..73f3f31f9313 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-354.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-354.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-355-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-355-ref.xht index d7a9ac51c098..f143c2ffe603 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-355-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-355-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-355.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-355.xht index d96fbfe74471..d5834a0c36fe 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-355.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-355.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-356-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-356-ref.xht index 635ce1f3ce1f..6d04e2f27f04 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-356-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-356-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-356.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-356.xht index cef9453f154b..e594296c75ee 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-356.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-356.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-357-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-357-ref.xht index 8ebf49a1ea33..8dc6a3d9e250 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-357-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-357-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-357.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-357.xht index 0746991450a1..21beaaf608fe 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-357.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-357.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-359-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-359-ref.xht index d5aa10017688..59f2aec60785 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-359-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-359-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-359.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-359.xht index c859258cebeb..75ee1156fe26 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-359.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-359.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-360-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-360-ref.xht index 44b9475bf630..99f273616e94 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-360-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-360-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-360.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-360.xht index 0fda7464e89d..1e37465d9c35 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-360.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-360.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-361-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-361-ref.xht index b39d333d7728..942773470bbc 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-361-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-361-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-361.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-361.xht index c7c319712175..962b77454874 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-361.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-361.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-362-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-362-ref.xht index 0431bbb8898f..d8f6e23d3d55 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-362-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-362-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-362.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-362.xht index 38ef9fcb1e22..8e801232e8e2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-362.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-362.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-363-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-363-ref.xht index 90905170d849..a910baf7dde5 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-363-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-363-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-363.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-363.xht index f4adcfa9b545..8c30ef5287c6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-363.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-363.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-364-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-364-ref.xht index eabddf1d3cd5..c51eb9ed4005 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-364-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-364-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-364.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-364.xht index 9686bca78384..d901ffae35fb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-364.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-364.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-365-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-365-ref.xht index fd6f34b76cf9..b5bae4713b8a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-365-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-365-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-365.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-365.xht index 46dad35b06a0..2227844f07f4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-365.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-365.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-366-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-366-ref.xht index ed2f35ada5b4..0f30e570e9b2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-366-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-366-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-366.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-366.xht index aef14058d549..e70d9a93337f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-366.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-366.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-367-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-367-ref.xht index 4da37f92bd4b..8ce6b50f0aeb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-367-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-367-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-367.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-367.xht index 6b729bfd0d0d..88eef8de05d3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-367.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-367.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-368-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-368-ref.xht index 4fb9f422ee64..537de8bdf616 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-368-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-368-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-368.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-368.xht index 0fa0257a2055..70a6cd5d1eb4 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-368.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-368.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-369-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-369-ref.xht index 7d1c00d0f1c2..b24460f6456e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-369-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-369-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-369.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-369.xht index e6f8e7a90351..62a3153e9387 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-369.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-369.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-370-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-370-ref.xht index ad7d1935a0b8..e859d21c8160 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-370-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-370-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-370.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-370.xht index a448facb4b03..c905bc5a7427 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-370.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-370.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-371-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-371-ref.xht index 8307aca97539..3868b55f9b49 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-371-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-371-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-371.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-371.xht index 26d45ee16f35..70f143a550af 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-371.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-371.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-372-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-372-ref.xht index 99a247017879..f48cb70f6a9c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-372-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-372-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-372.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-372.xht index 7f84fb10e99e..d33291d49116 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-372.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-372.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-373-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-373-ref.xht index 0118ddf83440..9f68513e1145 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-373-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-373-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-373.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-373.xht index cace936844d0..9ad88c6dfde1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-373.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-373.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-374-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-374-ref.xht index 4dc34961297d..acb7d45b0ceb 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-374-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-374-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-374.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-374.xht index 9f64d5d594e5..ff96061879a9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-374.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-374.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-375-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-375-ref.xht index 8bcc4dcee4d4..c4c19061e63c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-375-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-375-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-375.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-375.xht index e4efe3326fb4..13252eb610e2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-375.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-375.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-376-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-376-ref.xht index 17ee75eac931..f26a0106e3ed 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-376-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-376-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-376.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-376.xht index 8e912eb55821..13dbc3365f20 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-376.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-376.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-377-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-377-ref.xht index ee46a5d02bac..8fa13272c6be 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-377-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-377-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-377.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-377.xht index aefc19e91cb8..75d4958f46d8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-377.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-377.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-378-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-378-ref.xht index 26647eb86fc4..104b932eb941 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-378-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-378-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-378.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-378.xht index 7195696ae9e3..498c065e2ce8 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-378.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-378.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-379-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-379-ref.xht index d8b686f76902..ba5920c6fd01 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-379-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-379-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-379.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-379.xht index ad516d3a90f2..73d060afde26 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-379.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-379.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-380-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-380-ref.xht index 70aa407ee2ae..7c794c20d39b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-380-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-380-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-380.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-380.xht index 5789cf29ce3d..447dbb75d278 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-380.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-380.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-381-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-381-ref.xht index 1e64b781852f..a82be742b769 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-381-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-381-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-381.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-381.xht index ba7271bcd065..3aa29292aa39 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-381.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-381.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-382-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-382-ref.xht index 624628873626..4bcc064e1234 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-382-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-382-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-382.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-382.xht index 72f9da4630c0..4e9872b4d832 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-382.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-382.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-383-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-383-ref.xht index 2e9595e2bb67..e0c30b0d3110 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-383-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-383-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-383.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-383.xht index 6e5007d0f253..0f65feb64aac 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-383.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-383.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-384-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-384-ref.xht index e42c9b387b76..f4a9384db19a 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-384-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-384-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-384.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-384.xht index 5c2b2b6965b3..40d4c30af0d2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-384.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-384.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-385-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-385-ref.xht index 122f59e69ce2..8d49d32ebdee 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-385-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-385-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-385.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-385.xht index ca410fcca9d0..093f6068707e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-385.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-385.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-386-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-386-ref.xht index 938554c3ab34..819d9d536e30 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-386-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-386-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-386.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-386.xht index 51a0d3dd4b0f..587d86ec3012 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-386.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-386.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-387-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-387-ref.xht index 2fb28c40577a..8024a5e2719b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-387-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-387-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-387.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-387.xht index e219cc4b688b..a9b079eb20aa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-387.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-387.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-388-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-388-ref.xht index e3b1d80bd072..2c64ae80d621 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-388-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-388-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-388.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-388.xht index 1d4e3d98cae3..e17a5d3248d6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-388.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-388.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-389-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-389-ref.xht index 248d94faf8cd..9d833b96336e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-389-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-389-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-389.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-389.xht index 96ea9ca6d6ba..ff1791026b80 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-389.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-389.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-390-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-390-ref.xht index 1809748f48c2..296a0f29de95 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-390-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-390-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-390.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-390.xht index 5685c1767ca0..78a32e95e8e7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-390.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-390.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-391-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-391-ref.xht index 4f653ebe5b2d..607aaabdd1b6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-391-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-391-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-391.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-391.xht index 32bd7f370fad..9bd83e7ba0bd 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-391.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-391.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-392-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-392-ref.xht index 92b7ff20ad8c..61305127b76d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-392-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-392-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-392.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-392.xht index 9990a2becab1..2f7e48c00d3e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-392.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-392.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-393-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-393-ref.xht index 956dcd58b46f..a386b7d6388d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-393-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-393-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-393.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-393.xht index a42d7a27ece9..d9ac46911fcf 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-393.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-393.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-394-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-394-ref.xht index 81f6e0b3743b..7c5d115f6941 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-394-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-394-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-394.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-394.xht index f55846b1e9f0..c500d18b3ada 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-394.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-394.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-395-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-395-ref.xht index f69d99502e56..bbb5dabe4520 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-395-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-395-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-395.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-395.xht index 69ba0ece7cdb..91a3181d429c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-395.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-395.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-396-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-396-ref.xht index 95e6bcc847f3..8f432eb276b3 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-396-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-396-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-396.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-396.xht index 18ac4d5d2efe..121eb8347706 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-396.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-396.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-397-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-397-ref.xht index 9de58a2cd197..7d8d2494ac9d 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-397-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-397-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-397.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-397.xht index b67b7d074424..150335cd6214 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-397.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-397.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-398-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-398-ref.xht index 7cae5e96a589..9abad2c16d30 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-398-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-398-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-398.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-398.xht index 9d12407081b0..8d2d807403fa 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-398.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-398.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-399-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-399-ref.xht index c0492e10a782..8b914f113a20 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-399-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-399-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-399.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-399.xht index fbf866307875..6e1ec54648ab 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-399.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-399.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-400-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-400-ref.xht index 94bf00b7b6d6..97255cc8951c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-400-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-400-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-400.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-400.xht index 03b4db707db8..df8a433063e7 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-400.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-400.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-401-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-401-ref.xht index 91059cf51acb..364948276bf2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-401-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-401-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-401.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-401.xht index 112dd85f3dab..b588f5a9b5e2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-401.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-401.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-402-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-402-ref.xht index 1f9b9170dfd8..7f7442c16df1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-402-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-402-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-402.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-402.xht index 6460f6e9ee99..9ec9f843f5f9 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-402.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-402.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-403-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-403-ref.xht index 184e7830476c..d28808131284 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-403-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-403-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-403.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-403.xht index 1e5236e0bc19..573fbcb18619 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-403.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-403.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-404-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-404-ref.xht index 0a7bf5717cb1..e38e23d3cd18 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-404-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-404-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-404.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-404.xht index fb771cb3fd53..7186cc14404c 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-404.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-404.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-405-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-405-ref.xht index ab9e0a26006e..099ce1cc245f 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-405-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-405-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-405.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-405.xht index e358eb486257..503190cec685 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-405.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-405.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-406-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-406-ref.xht index af732ffcc77d..6f22e80bd079 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-406-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-406-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-406.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-406.xht index 141159dec69a..88e4f030f1be 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-406.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-406.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-407-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-407-ref.xht index b812d1ab3994..d2cd52ebca39 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-407-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-407-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-407.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-407.xht index 4ea6b2ed776f..2d2499f7f2df 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-407.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-407.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-408-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-408-ref.xht index 4805802c9a99..85875662fad1 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-408-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-408-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-408.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-408.xht index e7f312f0e2fa..cd9d5060452e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-408.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-408.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-409-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-409-ref.xht index 57a4f054ac91..44f21b2af76e 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-409-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-409-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-409.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-409.xht index bca89ec8bb6f..af64e54cb58b 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-409.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-409.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-410-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-410-ref.xht index afd29354c27b..7afda9864994 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-410-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-410-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-410.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-410.xht index 501f9c678b8e..3bbff2c78f95 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-410.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-410.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-411-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-411-ref.xht index f4c2c67a3023..8f5f785ce343 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-411-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-411-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-411.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-411.xht index c1b145c66f03..502bc08b2f11 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-411.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-411.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-412-ref.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-412-ref.xht index 09a31e85ef01..6443a39224d2 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-412-ref.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-412-ref.xht @@ -8,6 +8,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-412.xht b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-412.xht index fb61a0e67d0d..a957d6c028d6 100644 --- a/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-412.xht +++ b/testing/web-platform/tests/css/CSS2/selectors/first-letter-punctuation-412.xht @@ -12,6 +12,7 @@ { color: green; font-size: 36px; + line-height: 2; } diff --git a/testing/web-platform/tests/css/CSS2/stacking-context/opacity-change-parent-stacking-context-ref.html b/testing/web-platform/tests/css/CSS2/stacking-context/opacity-change-parent-stacking-context-ref.html new file mode 100644 index 000000000000..0e38f92ae474 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/stacking-context/opacity-change-parent-stacking-context-ref.html @@ -0,0 +1,8 @@ + +CSS Test Reference + +
    +
    +
    +
    +
    diff --git a/testing/web-platform/tests/css/CSS2/stacking-context/opacity-change-parent-stacking-context.html b/testing/web-platform/tests/css/CSS2/stacking-context/opacity-change-parent-stacking-context.html new file mode 100644 index 000000000000..94587c5f6e21 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/stacking-context/opacity-change-parent-stacking-context.html @@ -0,0 +1,21 @@ + + + CSS Test: Test for re-paint after stacking context removal due to opacity + + + + +
    +
    +
    +
    +
    + + +
    +
    diff --git a/testing/web-platform/tests/css/CSS2/stacking-context/opacity-change-twice-stacking-context.html b/testing/web-platform/tests/css/CSS2/stacking-context/opacity-change-twice-stacking-context.html new file mode 100644 index 000000000000..c3c680c68fad --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/stacking-context/opacity-change-twice-stacking-context.html @@ -0,0 +1,19 @@ + + + CSS Test: Test for re-paint after stacking context changes opacity twice + + + +
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/text-align-white-space-001.xht b/testing/web-platform/tests/css/CSS2/text/text-align-white-space-001.xht index 7ab7e1d17e79..bbdee6a1dba0 100644 --- a/testing/web-platform/tests/css/CSS2/text/text-align-white-space-001.xht +++ b/testing/web-platform/tests/css/CSS2/text/text-align-white-space-001.xht @@ -7,8 +7,9 @@ - + + + + +

    Test passes if there are 2 filled black squares.

    +
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-001.xht b/testing/web-platform/tests/css/CSS2/text/white-space-001.xht index 00bb50aba712..9f4961f8d24a 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-001.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-001.xht @@ -5,6 +5,8 @@ + + @@ -45,4 +47,4 @@
    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-002-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-002-ref.xht new file mode 100644 index 000000000000..018c193dde1a --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-002-ref.xht @@ -0,0 +1,41 @@ + + + + CSS Test reference + + + + + + +

    Test passes if there are two black squares on the page.

    +
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-002.xht b/testing/web-platform/tests/css/CSS2/text/white-space-002.xht index 9d32e06594ae..084f75bc8882 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-002.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-002.xht @@ -5,6 +5,8 @@ + + + + +

    Test passes if there is a single black box above a blue box (there can be white space between the boxes) and the black box has the same width as the blue box.

    +
    XX
    XX
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-004.xht b/testing/web-platform/tests/css/CSS2/text/white-space-004.xht index 501038c3bda6..ca5c79e7916c 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-004.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-004.xht @@ -5,6 +5,8 @@ + + -

    Test passes if there are two black squares on the page.

    +

    Test passes if there are 2 filled black squares.

    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-006.xht b/testing/web-platform/tests/css/CSS2/text/white-space-006.xht index 9530336cfb96..2980ea04c8c8 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-006.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-006.xht @@ -5,6 +5,8 @@ + + + + + + + +

    Test passes if the wide orange and blue rectangles are the same width and the same height.

    + +
     
    + +
     
    + + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-007.xht b/testing/web-platform/tests/css/CSS2/text/white-space-007.xht index 7cf4e143025c..8574eb7cafe4 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-007.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-007.xht @@ -12,6 +12,8 @@ + + @@ -49,4 +51,4 @@
     
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-008-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-008-ref.xht new file mode 100644 index 000000000000..82bf25af010d --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-008-ref.xht @@ -0,0 +1,32 @@ + + + + + + + CSS Test reference + + + + + + + + + + + + +

    Test passes if there is a wide bright green rectangle below with one "X" in it and if there is no red.

    + +


    X
    + + + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-008.xht b/testing/web-platform/tests/css/CSS2/text/white-space-008.xht index 565d663f368b..7a474ebe9d67 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-008.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-008.xht @@ -7,6 +7,8 @@ CSS Test: white-space - pre and newlines in source + + @@ -57,4 +59,4 @@ X
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-001.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-001.xht index d4633e26383a..918f22fef574 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-001.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-001.xht @@ -5,6 +5,8 @@ + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-002.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-002.xht index 63b61f96555e..43058a5a5d31 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-002.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-002.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-003-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-003-ref.xht new file mode 100644 index 000000000000..c3d4bc6ee516 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-003-ref.xht @@ -0,0 +1,39 @@ + + + + CSS Test reference + + + + + + +

    Test passes if there are two squares below and the left most square has a marker bullet on the left-hand side.

    +
    XX   XX
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-003.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-003.xht index 1a012065aae0..d4adcd6a993d 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-003.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-003.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-006.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-006.xht index 7606876f663e..0daa4132a6fb 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-006.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-006.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    XX XX
    @@ -47,4 +48,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-007.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-007.xht index d774ef9add4b..4e98ae2bbc2a 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-007.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-007.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    @@ -49,4 +50,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-008.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-008.xht index 91d3a6830be8..37ed18b16404 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-008.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-008.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    @@ -54,4 +55,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-009.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-009.xht index c4f2da06b4db..ef33e9a0395b 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-009.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-009.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    @@ -54,4 +55,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-010.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-010.xht index 3ff1e148293b..7f3f6f8b3330 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-010.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-010.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    @@ -54,4 +55,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-011.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-011.xht index 34e3b7e63753..9b6380db89ff 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-011.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-011.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    @@ -49,4 +50,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-012.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-012.xht index e4d22ebfab87..f0d7f2c250b4 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-012.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-012.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    @@ -52,4 +53,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-013.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-013.xht index 5444fbba46ea..e95e5b45e231 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-013.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-013.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    @@ -52,4 +53,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-014.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-014.xht index 258a8b17175a..eab0754f46f0 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-014.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-014.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    XX XX
    @@ -47,4 +48,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-015.xht b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-015.xht index 29bf18b67637..83f288f2fdff 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-015.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-applies-to-015.xht @@ -5,6 +5,7 @@ + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    XX XX
    @@ -52,4 +53,4 @@
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-bidirectionality-001-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-bidirectionality-001-ref.xht new file mode 100644 index 000000000000..7234d4346976 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-bidirectionality-001-ref.xht @@ -0,0 +1,14 @@ + + + + CSS Test reference + + + + +

    Test passes if the following text is below "A BC" (there can be two spaces between letters 'A' and 'B').

    +
    + A  BC +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-bidirectionality-001.xht b/testing/web-platform/tests/css/CSS2/text/white-space-bidirectionality-001.xht index fe9e52de496c..407d9c7d87ac 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-bidirectionality-001.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-bidirectionality-001.xht @@ -4,6 +4,8 @@ CSS Test: White-space and bidirectionality (example from spec) + + + + +

    The following lines should all look identical:

    +
    XXXX
    +
    XXXX
    +
    XXXX
    +
    XXXX
    +
    XXXX
    +
    XXXX
    +
    XXXX
    +
    XXXX
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-003.xht b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-003.xht index e0839245fc4c..2034d2826a73 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-003.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-003.xht @@ -5,6 +5,8 @@ + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-004.xht b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-004.xht index 8eb847f4785f..e31dae029d29 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-004.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-004.xht @@ -6,6 +6,7 @@ + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-005.xht b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-005.xht index 010db98859f6..9916684930db 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-005.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-005.xht @@ -6,6 +6,7 @@ + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-001.xht b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-001.xht index e400e49e7df1..16e8bdfe5540 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-001.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-001.xht @@ -6,6 +6,9 @@ + + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-002.xht b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-002.xht index 1078c7dcf19d..3de497be05ce 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-002.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-002.xht @@ -6,6 +6,9 @@ + + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-003.xht b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-003.xht index f0c6399b10d3..540e0708ecd7 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-003.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-bidi-003.xht @@ -6,6 +6,9 @@ + + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-breaks-001-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-breaks-001-ref.xht new file mode 100644 index 000000000000..42dd7d0187f2 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-breaks-001-ref.xht @@ -0,0 +1,19 @@ + + + + CSS Test reference + + + + + + +

    There must be a green box below and no red.

    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-breaks-001.xht b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-breaks-001.xht index 49c3bb239932..d06ca5f96b1f 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-breaks-001.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-collapsing-breaks-001.xht @@ -4,6 +4,8 @@ CSS Test: Line Breaking in Collapsed White Space + + + + +

    Test passes if the two lines below have the exact same spacing.

    +
    The spacing on these two sentences need to be the same!
    +
    The spacing on these two sentences need to be the same!
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-generated-content-before-001.xht b/testing/web-platform/tests/css/CSS2/text/white-space-generated-content-before-001.xht index c995fa1fc403..238e09efacd2 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-generated-content-before-001.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-generated-content-before-001.xht @@ -4,6 +4,8 @@ CSS Test: White-space 'pre-line' vs. ':before' assignment + + @@ -18,4 +20,4 @@
    The spacing on these two sentences need to be the same!

    The spacing on these two sentences need to be the same!

    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-pre-001.xht b/testing/web-platform/tests/css/CSS2/text/white-space-pre-001.xht index 4c89b51beb58..795ddf10a0ed 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-pre-001.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-pre-001.xht @@ -6,6 +6,7 @@ + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-pre-005.xht b/testing/web-platform/tests/css/CSS2/text/white-space-pre-005.xht index be2f5d3190aa..05680d804e6f 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-pre-005.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-pre-005.xht @@ -6,6 +6,7 @@ + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-pre-006.xht b/testing/web-platform/tests/css/CSS2/text/white-space-pre-006.xht index f2b03f5c46cc..b0e773c4cba5 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-pre-006.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-pre-006.xht @@ -6,6 +6,7 @@ + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-pre-element-001-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-pre-element-001-ref.xht new file mode 100644 index 000000000000..f000117e8bc0 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-pre-element-001-ref.xht @@ -0,0 +1,24 @@ + + + + CSS Test reference + + + + + +

    Test passes if the next two lines have the exact same spacing.

    +
    The spacing on these two sentences need to be the same!
    +
    The spacing on these two sentences need to be the same!
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-pre-element-001.xht b/testing/web-platform/tests/css/CSS2/text/white-space-pre-element-001.xht index 0abe6c485151..cf49962d3731 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-pre-element-001.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-pre-element-001.xht @@ -4,6 +4,7 @@ CSS Test: White-space 'pre' vs. 'pre' element + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    XX XX
    diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-002-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-002-ref.xht new file mode 100644 index 000000000000..30320ebde2e0 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-002-ref.xht @@ -0,0 +1,30 @@ + + + + CSS Test reference + + + + + +

    Test passes if the black box below is shorter than the blue box.

    +
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-002.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-002.xht index bc9a4418b47b..2f87d802bc65 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-002.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-002.xht @@ -4,8 +4,10 @@ CSS Test: White-space 'normal' with tab adjoining linefeed - - + + + + -

    Test passes if the black box below is the same width, or shorter, than the blue box.

    +

    Test passes if the black box below is shorter than the blue box.

    XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-003.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-003.xht index edac19422f40..e3f4bab21a1c 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-003.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-003.xht @@ -4,8 +4,10 @@ CSS Test: White-space 'nowrap' with tab adjoining linefeed - - + + + + -

    Test passes if the black box below is the same width, or shorter, than the blue box.

    +

    Test passes if the black box below is shorter than the blue box.

    XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-004.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-004.xht index 4615fd653941..017f88c13bf7 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-004.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-004.xht @@ -4,8 +4,10 @@ CSS Test: White-space 'pre-line' with tab adjoining linefeed - - + + + + -

    Test passes if the black box below is the same width, or shorter, than the blue box.

    +

    Test passes if the black box below is shorter than the blue box.

    XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-008.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-008.xht index f1954b6c2c1d..9811ccbacd2f 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-008.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-008.xht @@ -4,8 +4,10 @@ CSS Test: White-space 'normal' with space adjoining linefeed - - + + + + -

    Test passes if the black box below is the same width, or shorter, than the blue box.

    +

    Test passes if the black box below is shorter than the blue box.

    XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-009.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-009.xht index b27dc73eea42..251a02666b2b 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-009.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-009.xht @@ -4,8 +4,10 @@ CSS Test: White-space 'nowrap' with space adjoining linefeed - - + + + + -

    Test passes if the black box below is the same width, or shorter, than the blue box.

    +

    Test passes if the black box below is shorter than the blue box.

    XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-010.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-010.xht index f2748f91f80d..ec8a258d214d 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-010.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-010.xht @@ -4,8 +4,10 @@ CSS Test: White-space 'pre-line' with space adjoining linefeed - - + + + + -

    Test passes if the black box below is the same width, or shorter, than the blue box.

    +

    Test passes if the black box below is shorter than the blue box.

    XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-011.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-011.xht index 9f4855296df9..8d6453bd0d43 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-011.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-011.xht @@ -4,6 +4,8 @@ CSS Test: White-space 'pre' with sequence of spaces + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-012.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-012.xht index a0363889efbc..1bb819e1e130 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-012.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-012.xht @@ -4,6 +4,8 @@ CSS Test: White-space 'pre-wrap' with sequence of spaces + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are two black squares on the page.

    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-013-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-013-ref.xht new file mode 100644 index 000000000000..ddfa5cc3a33d --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-013-ref.xht @@ -0,0 +1,21 @@ + + + + CSS Test reference + + + + + + +

    Test passes if there is one box below.

    +
    XX
    XX
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-013.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-013.xht index b24a204e2f16..7d17160aea43 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-013.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-013.xht @@ -4,6 +4,8 @@ CSS Test: White-space 'pre-wrap' and line opportunity with sequence of spaces + + + + +

    Test passes if there are two boxes below, one above the other.

    +
    + XX
    XX
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-016.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-016.xht index 08692bd612fa..339226f2cf39 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-016.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-016.xht @@ -4,6 +4,9 @@ CSS Test: White-space 'pre' and linefeed characters + + + -

    Test passes if there are only two boxes below.

    -
    X X
    +

    Test passes if there are 2 filled black squares.

    +
    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-020.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-020.xht index b1f626130451..2402e62215e6 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-020.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-020.xht @@ -4,6 +4,8 @@ CSS Test: White-space 'nowrap' and tabs + + -

    Test passes if there are only two boxes below.

    -
    X X
    +

    Test passes if there are 2 filled black squares.

    +
    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-021.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-021.xht index 0a24679e89a5..30e5a105a509 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-021.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-021.xht @@ -4,6 +4,8 @@ CSS Test: White-space 'pre-line' and tabs + + -

    Test passes if there are only two boxes below.

    -
    X X
    +

    Test passes if there are 2 filled black squares.

    +
    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-022.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-022.xht index 449b0c643bdf..f7b417899d22 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-022.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-022.xht @@ -4,6 +4,8 @@ CSS Test: White space processing model with 'space' characters + + -

    Test passes if there are only two boxes below.

    -
    X X
    +

    Test passes if there are 2 filled black squares.

    +
    XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-023.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-023.xht index 5e6de5a7f120..25aabf1594d3 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-023.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-023.xht @@ -4,6 +4,8 @@ CSS Test: Two spaces adjoining with 'white-space' 'normal'/'nowrap' + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    - X - X + XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-024.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-024.xht index afa4628ae0fb..8178e2171771 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-024.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-024.xht @@ -4,6 +4,8 @@ CSS Test: Two spaces adjoining with 'white-space' 'normal'/'pre-line' + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    - X - X + XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-025.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-025.xht index 8eac47bcdb85..dfabc2af0e0c 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-025.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-025.xht @@ -4,6 +4,8 @@ CSS Test: Two spaces adjoining with 'white-space' 'nowrap'/'normal' + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    - X - X + XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-026.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-026.xht index 9da44b65b929..da79d00a1a02 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-026.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-026.xht @@ -4,6 +4,8 @@ CSS Test: Two spaces adjoining with 'white-space' 'nowrap'/'nowrap' + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    - X - X + XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-027.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-027.xht index ce66527e5ab4..3d5dc3a80fe7 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-027.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-027.xht @@ -4,6 +4,8 @@ CSS Test: Two spaces adjoining with 'white-space' 'nowrap'/'pre-line' + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    - X - X + XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-028.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-028.xht index a5cf8274c7a6..c2ffa9ab2109 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-028.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-028.xht @@ -4,6 +4,8 @@ CSS Test: Two spaces adjoining with 'white-space' 'pre-line'/'normal' + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    - X - X + XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-029.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-029.xht index 48517147f455..caba60a4b8c2 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-029.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-029.xht @@ -4,6 +4,8 @@ CSS Test: Two spaces adjoining with 'white-space' 'pre-line'/'nowrap' + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    - X - X + XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-030.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-030.xht index 4fa89a621190..95e85a5d3df6 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-030.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-030.xht @@ -4,6 +4,8 @@ CSS Test: Two spaces adjoining with 'white-space' 'pre-line'/'pre-line' + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    - X - X + XX XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-031-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-031-ref.xht new file mode 100644 index 000000000000..050191c8e8ea --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-031-ref.xht @@ -0,0 +1,34 @@ + + + + CSS Test reference + + + + + +

    Test passes if there are only two boxes below.

    +
    +
    +
    +
    +
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-031.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-031.xht index 715bed7948db..108ba749c38c 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-031.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-031.xht @@ -4,6 +4,8 @@ CSS Test: Two spaces adjoining with 'white-space' 'normal'/'pre' + + + + +

    Test passes if there is only one box below.

    +
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-037.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-037.xht index ca0249dc5b2a..e16d935566e2 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-037.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-037.xht @@ -4,6 +4,8 @@ CSS Test: White-space 'normal' and space at beginning of line + + @@ -29,4 +31,4 @@
    X
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-042-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-042-ref.xht new file mode 100644 index 000000000000..c845dd06d9d2 --- /dev/null +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-042-ref.xht @@ -0,0 +1,34 @@ + + + + CSS Test reference + + + + + +

    Test passes if there are only two boxes below.

    +
    +
    +
    +
    +
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-042.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-042.xht index 909214f84f7f..09c040129049 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-042.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-042.xht @@ -4,6 +4,8 @@ CSS Test: Tab width + + + + +

    Test passes if there is no red.

    +
    + X +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-043.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-043.xht index 45f0adc2d9ba..545651693c5c 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-043.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-043.xht @@ -5,6 +5,8 @@ + + + + +

    Test passes if there is a box below.

    +
    +   +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-046.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-046.xht index dc8c442bbe0a..326bcb919f22 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-046.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-046.xht @@ -4,6 +4,8 @@ CSS Test: White-space 'pre' and space at end of line + + -

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    XX   XX
    
         
    -
    \ No newline at end of file
    +
    diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-051.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-051.xht
    index 320ed4991ea4..ba909caffb9f 100644
    --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-051.xht
    +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-051.xht
    @@ -4,6 +4,8 @@
             CSS Test: White-space 'nowrap' on a 'pre' element
             
             
    +        
    +        
             
             
             
         
         
    -        

    Test passes if there are only two boxes below.

    +

    Test passes if there are 2 filled black squares.

    XX   XX
    
         
    -
    \ No newline at end of file
    +
    diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-052-ref.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-052-ref.xht
    new file mode 100644
    index 000000000000..594f516395f1
    --- /dev/null
    +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-052-ref.xht
    @@ -0,0 +1,34 @@
    +
    +
    +    
    +        CSS Test reference
    +        
    +        
    +        
    +        
    +    
    +    
    +        

    Test passes if there is one box below.

    +
    XX
    XX
    +
    
    +    
    +
    diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-052.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-052.xht
    index 4174df225b8c..f7af42504d01 100644
    --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-052.xht
    +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-052.xht
    @@ -4,6 +4,8 @@
             CSS Test: White-space 'pre-wrap' on a 'pre' element
             
             
    +        
    +        
             
             
             
    +    
    +    
    +        

    Test passes if there are only two boxes below.

    +
    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-054.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-054.xht index 5f4cc9ec48b3..ce8b3fe45e50 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-054.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-054.xht @@ -4,6 +4,8 @@ CSS Test: White space processing model with 'en quad' characters + + + + +

    Test passes if there is only one box below.

    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-055.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-055.xht index d8a53adc46ae..d96262ad5fcf 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-055.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-055.xht @@ -4,6 +4,8 @@ CSS Test: White space processing model with 'zero width no break space' character + + + + +

    Test passes if there are 2 small filled black squares.

    +
    + + diff --git a/testing/web-platform/tests/css/CSS2/text/white-space-processing-056.xht b/testing/web-platform/tests/css/CSS2/text/white-space-processing-056.xht index f39ef79d37b5..4cd3c1348eea 100644 --- a/testing/web-platform/tests/css/CSS2/text/white-space-processing-056.xht +++ b/testing/web-platform/tests/css/CSS2/text/white-space-processing-056.xht @@ -4,6 +4,8 @@ CSS Test: White space processing model with 'ideographic space' character + + @@ -34,4 +36,4 @@
    XX   XX
    - \ No newline at end of file + diff --git a/testing/web-platform/tests/css/compositing/inheritance.html b/testing/web-platform/tests/css/compositing/inheritance.html new file mode 100644 index 000000000000..8bd08672edf5 --- /dev/null +++ b/testing/web-platform/tests/css/compositing/inheritance.html @@ -0,0 +1,23 @@ + + + + +Inheritance of Compositing and Blending properties + + + + + + + + +
    +
    +
    + + + diff --git a/testing/web-platform/tests/css/css-backgrounds/background-border-collapsed-gradient.html b/testing/web-platform/tests/css/css-backgrounds/background-border-collapsed-gradient.html new file mode 100644 index 000000000000..73b097cf9a84 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/background-border-collapsed-gradient.html @@ -0,0 +1,22 @@ + + + + CSS Background Test: There should be no gap between border-collapsed backgrounds + + + + + + +
    +
    + + diff --git a/testing/web-platform/tests/css/css-backgrounds/background-image-centered-with-border-radius.html b/testing/web-platform/tests/css/css-backgrounds/background-image-centered-with-border-radius.html new file mode 100644 index 000000000000..602cd48aaa9b --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/background-image-centered-with-border-radius.html @@ -0,0 +1,24 @@ + + + + CSS Background Test: Centered background image with border radius + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-backgrounds/background-image-cover-zoomed-1.html b/testing/web-platform/tests/css/css-backgrounds/background-image-cover-zoomed-1.html new file mode 100644 index 000000000000..0d434abe23a5 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/background-image-cover-zoomed-1.html @@ -0,0 +1,34 @@ + + + + CSS Background Test: background-size:cover should cover at zoom + + + + + + + +
    +
    +
    +
    + + diff --git a/testing/web-platform/tests/css/css-backgrounds/background-image-first-line.html b/testing/web-platform/tests/css/css-backgrounds/background-image-first-line.html new file mode 100644 index 000000000000..206ff68d1736 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/background-image-first-line.html @@ -0,0 +1,30 @@ + + +CSS Test: background-image applicability to ::first-line + + + + + + + + +

    Test passes if cat image is visible.

    +
    X
    + + + \ No newline at end of file diff --git a/testing/web-platform/tests/css/css-backgrounds/background-image-large-with-auto.html b/testing/web-platform/tests/css/css-backgrounds/background-image-large-with-auto.html new file mode 100644 index 000000000000..2658e4051eb5 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/background-image-large-with-auto.html @@ -0,0 +1,33 @@ + + + + CSS Background Test: Large images with one auto size are correctly sized + + + + + + + +
    +
    + + diff --git a/testing/web-platform/tests/css/css-backgrounds/background-image-table-cells-zoomed.html b/testing/web-platform/tests/css/css-backgrounds/background-image-table-cells-zoomed.html new file mode 100644 index 000000000000..4683e5b4b65b --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/background-image-table-cells-zoomed.html @@ -0,0 +1,44 @@ + + + + CSS Background Test: A background image on table cells with collapsed borders should fill the table + + + + + + + +
    +
    +
    +
    +
    +
    + + diff --git a/testing/web-platform/tests/css/css-backgrounds/border-image-slice-shorthand-reset.html b/testing/web-platform/tests/css/css-backgrounds/border-image-slice-shorthand-reset.html new file mode 100644 index 000000000000..7f178b428de3 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/border-image-slice-shorthand-reset.html @@ -0,0 +1,21 @@ + + + + + + +
    This text should not have a border, just corner dots
    + diff --git a/testing/web-platform/tests/css/css-backgrounds/reference/background-border-collapsed-gradient-ref.html b/testing/web-platform/tests/css/css-backgrounds/reference/background-border-collapsed-gradient-ref.html new file mode 100644 index 000000000000..6e09d46cbc50 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/reference/background-border-collapsed-gradient-ref.html @@ -0,0 +1,19 @@ + + + + CSS Background Test Reference + + + + +
    + + diff --git a/testing/web-platform/tests/css/css-backgrounds/reference/background-image-centered-with-border-radius-ref.html b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-centered-with-border-radius-ref.html new file mode 100644 index 000000000000..44db3f56017f --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-centered-with-border-radius-ref.html @@ -0,0 +1,22 @@ + + + + CSS Background Test Reference + + + + + + + + diff --git a/testing/web-platform/tests/css/css-backgrounds/reference/background-image-cover-zoomed-1-ref.html b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-cover-zoomed-1-ref.html new file mode 100644 index 000000000000..d61bac9feddf --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-cover-zoomed-1-ref.html @@ -0,0 +1,24 @@ + + + + CSS Background Test Reference + + + + + +
    +
    + + diff --git a/testing/web-platform/tests/css/css-backgrounds/reference/background-image-first-line-ref.html b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-first-line-ref.html new file mode 100644 index 000000000000..82fd9a2d3d0e --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-first-line-ref.html @@ -0,0 +1,12 @@ + + + +

    Test passes if cat image is visible.

    +
    X
    diff --git a/testing/web-platform/tests/css/css-backgrounds/reference/background-image-large-with-auto-ref.html b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-large-with-auto-ref.html new file mode 100644 index 000000000000..7bad169e3aa6 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-large-with-auto-ref.html @@ -0,0 +1,31 @@ + + + + CSS Background Test Reference + + + + + +
    +
    + + diff --git a/testing/web-platform/tests/css/css-backgrounds/reference/background-image-table-cells-zoomed-ref.html b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-table-cells-zoomed-ref.html new file mode 100644 index 000000000000..6f4261ecf454 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/reference/background-image-table-cells-zoomed-ref.html @@ -0,0 +1,39 @@ + + + + CSS Background Test Reference + + + + + +
    +
    +
    +
    +
    +
    + + diff --git a/testing/web-platform/tests/css/css-backgrounds/support/green-1000x10.png b/testing/web-platform/tests/css/css-backgrounds/support/green-1000x10.png new file mode 100644 index 000000000000..8ce354cfb755 Binary files /dev/null and b/testing/web-platform/tests/css/css-backgrounds/support/green-1000x10.png differ diff --git a/testing/web-platform/tests/css/css-backgrounds/support/green-10x1000.png b/testing/web-platform/tests/css/css-backgrounds/support/green-10x1000.png new file mode 100644 index 000000000000..c7fd6eee5c27 Binary files /dev/null and b/testing/web-platform/tests/css/css-backgrounds/support/green-10x1000.png differ diff --git a/testing/web-platform/tests/css/css-backgrounds/support/green-60x60-red-5px-border.png b/testing/web-platform/tests/css/css-backgrounds/support/green-60x60-red-5px-border.png new file mode 100644 index 000000000000..97a94592dd59 Binary files /dev/null and b/testing/web-platform/tests/css/css-backgrounds/support/green-60x60-red-5px-border.png differ diff --git a/testing/web-platform/tests/css/css-backgrounds/table-cell-background-local-ref.html b/testing/web-platform/tests/css/css-backgrounds/table-cell-background-local-ref.html new file mode 100644 index 000000000000..b6088dd39ad9 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/table-cell-background-local-ref.html @@ -0,0 +1,12 @@ + +Passes if there is a brown square. +
    +
    +
    + diff --git a/testing/web-platform/tests/css/css-backgrounds/table-cell-background-local.html b/testing/web-platform/tests/css/css-backgrounds/table-cell-background-local.html new file mode 100644 index 000000000000..e52aa26ef209 --- /dev/null +++ b/testing/web-platform/tests/css/css-backgrounds/table-cell-background-local.html @@ -0,0 +1,24 @@ + +Tests rendering of table cell's background-image with local attachment. + + + + + +Passes if there is a brown square. + + + +
    +
    +
    +
    + +
    + diff --git a/testing/web-platform/tests/css/css-break/META.yml b/testing/web-platform/tests/css/css-break/META.yml index bfd40518b4a6..5c3363562ab1 100644 --- a/testing/web-platform/tests/css/css-break/META.yml +++ b/testing/web-platform/tests/css/css-break/META.yml @@ -1,3 +1,4 @@ spec: https://drafts.csswg.org/css-break/ suggested_reviewers: - mstensho + - rachelandrew diff --git a/testing/web-platform/tests/css/css-break/block-end-aligned-abspos-nested.html b/testing/web-platform/tests/css/css-break/block-end-aligned-abspos-nested.html new file mode 100644 index 000000000000..b74a28e7319b --- /dev/null +++ b/testing/web-platform/tests/css/css-break/block-end-aligned-abspos-nested.html @@ -0,0 +1,22 @@ + + + + + +

    Test passes if there is a filled green square and no red.

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + diff --git a/testing/web-platform/tests/css/css-conditional/idlharness.html b/testing/web-platform/tests/css/css-conditional/idlharness.html index 410466b25230..63cf75093373 100644 --- a/testing/web-platform/tests/css/css-conditional/idlharness.html +++ b/testing/web-platform/tests/css/css-conditional/idlharness.html @@ -3,12 +3,22 @@ - css-conditional IDL tests + CSS Conditional Rules IDL tests + + + + @@ -16,16 +26,20 @@ diff --git a/testing/web-platform/tests/css/css-contain/contain-size-replaced-001.html b/testing/web-platform/tests/css/css-contain/contain-size-replaced-001.html new file mode 100644 index 000000000000..b0dba02f1cd5 --- /dev/null +++ b/testing/web-platform/tests/css/css-contain/contain-size-replaced-001.html @@ -0,0 +1,17 @@ + + +CSS Containment Test: Size containment replaced elements intrinsic size + + + + + +

    Test passes if there is a filled green square and no red.

    + + diff --git a/testing/web-platform/tests/css/css-contain/contain-size-replaced-002.html b/testing/web-platform/tests/css/css-contain/contain-size-replaced-002.html new file mode 100644 index 000000000000..20e4c8a1a668 --- /dev/null +++ b/testing/web-platform/tests/css/css-contain/contain-size-replaced-002.html @@ -0,0 +1,18 @@ + + +CSS Containment Test: Size containment replaced elements intrinsic size + + + + + +

    Test passes if there is a filled green square and no red.

    + + + diff --git a/testing/web-platform/tests/css/css-display/display-inline-dynamic-001-ref.html b/testing/web-platform/tests/css/css-display/display-inline-dynamic-001-ref.html new file mode 100644 index 000000000000..8b5f5015f9eb --- /dev/null +++ b/testing/web-platform/tests/css/css-display/display-inline-dynamic-001-ref.html @@ -0,0 +1,4 @@ + + +

    Test passes if PASS is displayed in green below.

    +
    PASS
    diff --git a/testing/web-platform/tests/css/css-display/display-inline-dynamic-001.html b/testing/web-platform/tests/css/css-display/display-inline-dynamic-001.html new file mode 100644 index 000000000000..7df697f940d4 --- /dev/null +++ b/testing/web-platform/tests/css/css-display/display-inline-dynamic-001.html @@ -0,0 +1,10 @@ + + + + +

    Test passes if PASS is displayed in green below.

    +
    PS
    + diff --git a/testing/web-platform/tests/css/css-display/display-none-inline-img-ref.html b/testing/web-platform/tests/css/css-display/display-none-inline-img-ref.html new file mode 100644 index 000000000000..a3e7369afbae --- /dev/null +++ b/testing/web-platform/tests/css/css-display/display-none-inline-img-ref.html @@ -0,0 +1,46 @@ + + +CSS Test Reference + + + + + diff --git a/testing/web-platform/tests/css/css-display/display-none-inline-img.html b/testing/web-platform/tests/css/css-display/display-none-inline-img.html new file mode 100644 index 000000000000..f97ca7bbd351 --- /dev/null +++ b/testing/web-platform/tests/css/css-display/display-none-inline-img.html @@ -0,0 +1,70 @@ + + +CSS Test: display: none then inline on img + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-flexbox/META.yml b/testing/web-platform/tests/css/css-flexbox/META.yml index 64946c1e1143..764d8cbd1685 100644 --- a/testing/web-platform/tests/css/css-flexbox/META.yml +++ b/testing/web-platform/tests/css/css-flexbox/META.yml @@ -6,4 +6,5 @@ suggested_reviewers: - cbiesinger - atanassov - fantasai + - rachelandrew - tabatkins diff --git a/testing/web-platform/tests/css/css-flexbox/flex-basis-009.html b/testing/web-platform/tests/css/css-flexbox/flex-basis-009.html new file mode 100644 index 000000000000..3e2026958fdd --- /dev/null +++ b/testing/web-platform/tests/css/css-flexbox/flex-basis-009.html @@ -0,0 +1,42 @@ + + + + + + + + + + + +
    +
    + +
    +
    + +
    +
    + + diff --git a/testing/web-platform/tests/css/css-flexbox/hittest-overlapping-margin.html b/testing/web-platform/tests/css/css-flexbox/hittest-overlapping-margin.html new file mode 100644 index 000000000000..5c3601d96aeb --- /dev/null +++ b/testing/web-platform/tests/css/css-flexbox/hittest-overlapping-margin.html @@ -0,0 +1,43 @@ + + + + + + + +
    + diff --git a/testing/web-platform/tests/css/css-flexbox/hittest-overlapping-order.html b/testing/web-platform/tests/css/css-flexbox/hittest-overlapping-order.html new file mode 100644 index 000000000000..f52a37c181cf --- /dev/null +++ b/testing/web-platform/tests/css/css-flexbox/hittest-overlapping-order.html @@ -0,0 +1,45 @@ + + + + + + +
    +
    + diff --git a/testing/web-platform/tests/css/css-flexbox/hittest-overlapping-relative.html b/testing/web-platform/tests/css/css-flexbox/hittest-overlapping-relative.html new file mode 100644 index 000000000000..985ac1aed565 --- /dev/null +++ b/testing/web-platform/tests/css/css-flexbox/hittest-overlapping-relative.html @@ -0,0 +1,45 @@ + + + + + + +
    +
    + diff --git a/testing/web-platform/tests/css/css-fonts/font-display/font-display-feature-policy.tentative-ref.html b/testing/web-platform/tests/css/css-fonts/font-display/font-display-feature-policy.tentative-ref.html new file mode 100644 index 000000000000..5b707e5b43ab --- /dev/null +++ b/testing/web-platform/tests/css/css-fonts/font-display/font-display-feature-policy.tentative-ref.html @@ -0,0 +1,29 @@ + +Test for font-display-late-swap feature policy + +

    Tests if font-display is set to optional for each option except for when it is set to fallback

    + + + + + + + + + + + + + + + + + +
    not-setautoblockswapfallbackoptional
    aaaaaa
    diff --git a/testing/web-platform/tests/css/css-fonts/font-display/font-display-feature-policy.tentative.html b/testing/web-platform/tests/css/css-fonts/font-display/font-display-feature-policy.tentative.html new file mode 100644 index 000000000000..558f5b8aa8a8 --- /dev/null +++ b/testing/web-platform/tests/css/css-fonts/font-display/font-display-feature-policy.tentative.html @@ -0,0 +1,46 @@ + + +Test for font-display-late-swap feature policy + + + +

    Tests if font-display is set to optional for each option except for when it is set to fallback

    + + + + + + + + + +
    not-setautoblockswapfallbackoptional
    + + diff --git a/testing/web-platform/tests/css/css-fonts/font-display/font-display-feature-policy.tentative.html.headers b/testing/web-platform/tests/css/css-fonts/font-display/font-display-feature-policy.tentative.html.headers new file mode 100644 index 000000000000..0c3e29db99f0 --- /dev/null +++ b/testing/web-platform/tests/css/css-fonts/font-display/font-display-feature-policy.tentative.html.headers @@ -0,0 +1 @@ +Feature-Policy: font-display-late-swap 'none'; \ No newline at end of file diff --git a/testing/web-platform/tests/css/css-fonts/idlharness.html b/testing/web-platform/tests/css/css-fonts/idlharness.html index 9209144c3e51..ecc601bcf6a9 100644 --- a/testing/web-platform/tests/css/css-fonts/idlharness.html +++ b/testing/web-platform/tests/css/css-fonts/idlharness.html @@ -1,19 +1,34 @@ -css-fonts IDL tests +CSS Fonts IDL tests + + + + diff --git a/testing/web-platform/tests/css/css-fonts/variations/at-font-face-descriptors.html b/testing/web-platform/tests/css/css-fonts/variations/at-font-face-descriptors.html index 942686c4a1fd..cd1c22b01ce0 100644 --- a/testing/web-platform/tests/css/css-fonts/variations/at-font-face-descriptors.html +++ b/testing/web-platform/tests/css/css-fonts/variations/at-font-face-descriptors.html @@ -147,6 +147,8 @@ { value: "oblique 20deg", isValid: true, expectedValue: "oblique", description: "'oblique' followed by default 20deg angle" }, { value: "oblique 90deg", isValid: true, description: "'oblique' followed by maxumum 90 degree angle" }, { value: "oblique -90deg", isValid: true, description: "'oblique' followed by minimum -90 degree angle" }, + { value: "oblique calc(91deg)", isValid: true, expectedValue: "oblique 90deg", description: "'oblique' followed by calc with out of range value (should be clamped)" }, + { value: "oblique calc(-91deg)", isValid: true, expectedValue: "oblique -90deg", description: "'oblique' followed by calc with out of range value (should be clamped)" }, { value: "oblique 0rad", isValid: true, expectedValue: "oblique 0deg", description: "'oblique' followed by angle in radians" }, { value: "oblique 20", isValid: false, description: "'oblique' followed by unit-less number" }, { value: "oblique 20px", isValid: false, description: "'oblique' followed by non-angle" }, diff --git a/testing/web-platform/tests/css/css-fonts/variations/font-style-parsing.html b/testing/web-platform/tests/css/css-fonts/variations/font-style-parsing.html index 0973d6340cb4..cb5e42eab4f7 100644 --- a/testing/web-platform/tests/css/css-fonts/variations/font-style-parsing.html +++ b/testing/web-platform/tests/css/css-fonts/variations/font-style-parsing.html @@ -7,43 +7,54 @@ - +
    - + \ No newline at end of file diff --git a/testing/web-platform/tests/css/css-grid/META.yml b/testing/web-platform/tests/css/css-grid/META.yml index 18c574ac68ba..af20bb4be80f 100644 --- a/testing/web-platform/tests/css/css-grid/META.yml +++ b/testing/web-platform/tests/css/css-grid/META.yml @@ -7,4 +7,5 @@ suggested_reviewers: - fantasai - atanassov - javifernandez + - rachelandrew - svillar diff --git a/testing/web-platform/tests/css/css-grid/abspos/grid-positioned-items-padding-001.html b/testing/web-platform/tests/css/css-grid/abspos/grid-positioned-items-padding-001.html index 4941d77a71af..643a68830d4a 100644 --- a/testing/web-platform/tests/css/css-grid/abspos/grid-positioned-items-padding-001.html +++ b/testing/web-platform/tests/css/css-grid/abspos/grid-positioned-items-padding-001.html @@ -109,13 +109,13 @@
    + data-offset-x="15" data-offset-y="15" data-expected-width="515" data-expected-height="315">
    + data-offset-x="15" data-offset-y="15" data-expected-width="100" data-expected-height="315">
    + data-offset-x="15" data-offset-y="15" data-expected-width="515" data-expected-height="50">
    @@ -193,13 +193,13 @@
    + data-offset-x="0" data-offset-y="15" data-expected-width="515" data-expected-height="315">
    + data-offset-x="415" data-offset-y="15" data-expected-width="100" data-expected-height="315">
    + data-offset-x="0" data-offset-y="15" data-expected-width="515" data-expected-height="50">
    diff --git a/testing/web-platform/tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html b/testing/web-platform/tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html index 24d9d769f990..6e61f7c2de36 100644 --- a/testing/web-platform/tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html +++ b/testing/web-platform/tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html @@ -3,7 +3,7 @@ CSS Grid Layout Test: Grid positioned items unknown named grid line - + + + + +

    The test passes if it has the same visual effect as reference.

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + \ No newline at end of file diff --git a/testing/web-platform/tests/css/css-grid/parsing/grid-area-computed.html b/testing/web-platform/tests/css/css-grid/parsing/grid-area-computed.html new file mode 100644 index 000000000000..731b7ebda61e --- /dev/null +++ b/testing/web-platform/tests/css/css-grid/parsing/grid-area-computed.html @@ -0,0 +1,61 @@ + + + + +CSS Grid Layout Test: getComputedValue().gridArea + + + + + + +
    + + + diff --git a/testing/web-platform/tests/css/css-grid/parsing/grid-auto-columns-computed.html b/testing/web-platform/tests/css/css-grid/parsing/grid-auto-columns-computed.html new file mode 100644 index 000000000000..6aea96a80f6d --- /dev/null +++ b/testing/web-platform/tests/css/css-grid/parsing/grid-auto-columns-computed.html @@ -0,0 +1,58 @@ + + + + +CSS Grid Layout Test: getComputedValue().gridAutoColumns + + + + + + +
    + + + + diff --git a/testing/web-platform/tests/css/css-grid/parsing/grid-auto-flow-computed.html b/testing/web-platform/tests/css/css-grid/parsing/grid-auto-flow-computed.html new file mode 100644 index 000000000000..7484f62ddb6e --- /dev/null +++ b/testing/web-platform/tests/css/css-grid/parsing/grid-auto-flow-computed.html @@ -0,0 +1,25 @@ + + + + +CSS Grid Layout Test: getComputedValue().gridAutoFlow + + + + + + +
    + + + diff --git a/testing/web-platform/tests/css/css-grid/parsing/grid-auto-rows-computed.html b/testing/web-platform/tests/css/css-grid/parsing/grid-auto-rows-computed.html new file mode 100644 index 000000000000..071c16928e57 --- /dev/null +++ b/testing/web-platform/tests/css/css-grid/parsing/grid-auto-rows-computed.html @@ -0,0 +1,58 @@ + + + + +CSS Grid Layout Test: getComputedValue().gridAutoRows + + + + + + +
    + + + + diff --git a/testing/web-platform/tests/css/css-grid/parsing/grid-template-areas-computed.html b/testing/web-platform/tests/css/css-grid/parsing/grid-template-areas-computed.html new file mode 100644 index 000000000000..84627f8d2851 --- /dev/null +++ b/testing/web-platform/tests/css/css-grid/parsing/grid-template-areas-computed.html @@ -0,0 +1,27 @@ + + + + +CSS Grid Layout Test: getComputedValue().gridTemplateAreas + + + + + + +
    + + + diff --git a/testing/web-platform/tests/css/css-grid/placement/grid-auto-placement-implicit-tracks-001.html b/testing/web-platform/tests/css/css-grid/placement/grid-auto-placement-implicit-tracks-001.html new file mode 100644 index 000000000000..546336a6ce82 --- /dev/null +++ b/testing/web-platform/tests/css/css-grid/placement/grid-auto-placement-implicit-tracks-001.html @@ -0,0 +1,124 @@ + + +CSS Grid Layout Test: Grid items auto-placement implicit tracks + + + + + + + + + + +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + +
    +
    i1
    +
    i2
    +
    i3
    +
    i4
    +
    + + diff --git a/testing/web-platform/tests/css/css-grid/reference/grid-auto-repeat-multiple-values-001-ref.html b/testing/web-platform/tests/css/css-grid/reference/grid-auto-repeat-multiple-values-001-ref.html new file mode 100644 index 000000000000..0b8ef6d39bf6 --- /dev/null +++ b/testing/web-platform/tests/css/css-grid/reference/grid-auto-repeat-multiple-values-001-ref.html @@ -0,0 +1,56 @@ + + + + + + CSS Grid Layout Test: Auto Repaeat with Multiple Tracks and Gutters + + + + + +

    The test passes if it has the same visual effect as reference.

    +
    +
    +
    +
    +
    +
    +
    +
    + + + \ No newline at end of file diff --git a/testing/web-platform/tests/css/css-inline/META.yml b/testing/web-platform/tests/css/css-inline/META.yml index 323d367b9231..7253eabf54e5 100644 --- a/testing/web-platform/tests/css/css-inline/META.yml +++ b/testing/web-platform/tests/css/css-inline/META.yml @@ -2,3 +2,4 @@ spec: https://drafts.csswg.org/css-fonts/ suggested_reviewers: - dauwhe - fantasai + - rachelandrew diff --git a/testing/web-platform/tests/css/css-lists/add-inline-child-after-marker-001-ref.html b/testing/web-platform/tests/css/css-lists/add-inline-child-after-marker-001-ref.html new file mode 100644 index 000000000000..0c1d2397d75c --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/add-inline-child-after-marker-001-ref.html @@ -0,0 +1,14 @@ + + +CSS Lists: Add inline child after marker + +

    The test passes if you see the list marker followed by the text "inline" and "axxx" in a line below.

    + +
      +
    • + inline +
      + axxx +
      +
    • +
    diff --git a/testing/web-platform/tests/css/css-lists/add-inline-child-after-marker-001.html b/testing/web-platform/tests/css/css-lists/add-inline-child-after-marker-001.html new file mode 100644 index 000000000000..228604ee357d --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/add-inline-child-after-marker-001.html @@ -0,0 +1,26 @@ + + +CSS Lists: Add inline child after marker + + + + +

    The test passes if you see the list marker followed by the text "inline" and "axxx" in a line below.

    + +
      +
    • +
      + axxx +
      +
    • +
    + diff --git a/testing/web-platform/tests/css/css-lists/li-with-height-001-ref.html b/testing/web-platform/tests/css/css-lists/li-with-height-001-ref.html new file mode 100644 index 000000000000..486009d5604a --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/li-with-height-001-ref.html @@ -0,0 +1,11 @@ + + +CSS Lists: list with height + +

    The test passes if "second" is in the following line of "first".

    +
      +
    • + first
      second
      +
    • +
    + diff --git a/testing/web-platform/tests/css/css-lists/li-with-height-001.html b/testing/web-platform/tests/css/css-lists/li-with-height-001.html new file mode 100644 index 000000000000..ad2ac65e1797 --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/li-with-height-001.html @@ -0,0 +1,23 @@ + + +CSS Lists: list with height + + + + +

    The test passes if "second" is in the following line of "first".

    + +
      +
    • +
      second
      +
    • +
    + + diff --git a/testing/web-platform/tests/css/css-lists/li-with-overflow-hidden-change-list-style-position-001-ref.html b/testing/web-platform/tests/css/css-lists/li-with-overflow-hidden-change-list-style-position-001-ref.html new file mode 100644 index 000000000000..a3ea8b66ee0d --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/li-with-overflow-hidden-change-list-style-position-001-ref.html @@ -0,0 +1,21 @@ + + +CSS Lists: test inside and outside switch + +

    The test passes if the first li is inside and the second one is outside.

    + +
      +
    • +
      + outside to inside +
      +
    • +
    + +
      +
    • +
      + inside to outside +
      +
    • +
    diff --git a/testing/web-platform/tests/css/css-lists/li-with-overflow-hidden-change-list-style-position-001.html b/testing/web-platform/tests/css/css-lists/li-with-overflow-hidden-change-list-style-position-001.html new file mode 100644 index 000000000000..992ed83cedaa --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/li-with-overflow-hidden-change-list-style-position-001.html @@ -0,0 +1,36 @@ + + +CSS Lists: test inside and outside switch + + + + +

    The test passes if the first li is inside and the second one is outside.

    + +
      +
    • +
      + outside to inside +
      +
    • +
    + +
      +
    • +
      + inside to outside +
      +
    • +
    + diff --git a/testing/web-platform/tests/css/css-lists/list-and-block-textarea-001.html b/testing/web-platform/tests/css/css-lists/list-and-block-textarea-001.html new file mode 100644 index 000000000000..96af38a8adb2 --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-and-block-textarea-001.html @@ -0,0 +1,33 @@ + + +CSS Lists: test list with textarea as its first child + + + + + + + + +
    + +
      +
    • + +
    • +
    + + diff --git a/testing/web-platform/tests/css/css-lists/list-and-flex-001-ref.html b/testing/web-platform/tests/css/css-lists/list-and-flex-001-ref.html new file mode 100644 index 000000000000..d7be687125aa --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-and-flex-001-ref.html @@ -0,0 +1,15 @@ + + +CSS Lists: test list with flex as its first child + +

    There should be no extra line generated between the marker and the flex.

    + +
      +
    • +
      +
      + text +
      +
      +
    • +
    diff --git a/testing/web-platform/tests/css/css-lists/list-and-flex-001.html b/testing/web-platform/tests/css/css-lists/list-and-flex-001.html new file mode 100644 index 000000000000..98ab9c400b68 --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-and-flex-001.html @@ -0,0 +1,18 @@ + + +CSS Lists: test list with flex as its first child + + + + +

    There should be no extra line generated between the marker and the flex.

    + +
      +
    • +
      +
      + text +
      +
      +
    • +
    diff --git a/testing/web-platform/tests/css/css-lists/list-and-grid-001-ref.html b/testing/web-platform/tests/css/css-lists/list-and-grid-001-ref.html new file mode 100644 index 000000000000..b6e777428df5 --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-and-grid-001-ref.html @@ -0,0 +1,14 @@ + + +CSS Lists: test list with grid as its first child + +

    There should be no extra line generated between the marker and the grid.

    + +
      +
    • +
      +
      grid
      +
      +
    • +
    + diff --git a/testing/web-platform/tests/css/css-lists/list-and-grid-001.html b/testing/web-platform/tests/css/css-lists/list-and-grid-001.html new file mode 100644 index 000000000000..562961d5a98c --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-and-grid-001.html @@ -0,0 +1,16 @@ + + +CSS Lists: test list with grid as its first child + + + + +

    There should be no extra line generated between the marker and the grid.

    + +
      +
    • +
      +
      grid
      +
      +
    • +
    diff --git a/testing/web-platform/tests/css/css-lists/list-and-margin-collapse-001.html b/testing/web-platform/tests/css/css-lists/list-and-margin-collapse-001.html new file mode 100644 index 000000000000..e267b839083b --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-and-margin-collapse-001.html @@ -0,0 +1,23 @@ + + +CSS Lists: test the margin collapse of marker + + + + + + +
    + + + + diff --git a/testing/web-platform/tests/css/css-lists/list-and-writing-mode-001.html b/testing/web-platform/tests/css/css-lists/list-and-writing-mode-001.html new file mode 100644 index 000000000000..df54e8fb0df8 --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-and-writing-mode-001.html @@ -0,0 +1,24 @@ + + +CSS Lists: test list with root writing-mode as its first child + + + + + + +
    + +
      +
    • +
      a b c
      +
    • +
    + + + diff --git a/testing/web-platform/tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001-ref.html b/testing/web-platform/tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001-ref.html new file mode 100644 index 000000000000..ae6486147e28 --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001-ref.html @@ -0,0 +1,19 @@ + + +CSS Lists: test list with overflow:hidden and line-height firstchild + +

    This test passes if there is a marker for each li and followed by "text" in the same line.

    + +
      +
    • +
      + text +
      +
    • +
    +
      +
    • +
      text
      +
    • +
    + diff --git a/testing/web-platform/tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html b/testing/web-platform/tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html new file mode 100644 index 000000000000..d78743facb53 --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html @@ -0,0 +1,22 @@ + + +CSS Lists: test list with overflow:hidden and line-height firstchild + + + + +

    This test passes if there is a marker for each li and followed by "text" in the same line.

    + +
      +
    • +
      + text +
      +
    • +
    + +
      +
    • +
      text
      +
    • +
    diff --git a/testing/web-platform/tests/css/css-lists/list-with-image-display-changed-001-ref.html b/testing/web-platform/tests/css/css-lists/list-with-image-display-changed-001-ref.html new file mode 100644 index 000000000000..bfe0eb60f8df --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-with-image-display-changed-001-ref.html @@ -0,0 +1,15 @@ + + +CSS Lists: test list with firstchild changing display + + + +
      +
    • + + Some other text +
    • +
    diff --git a/testing/web-platform/tests/css/css-lists/list-with-image-display-changed-001.html b/testing/web-platform/tests/css/css-lists/list-with-image-display-changed-001.html new file mode 100644 index 000000000000..d4b3e300f8ea --- /dev/null +++ b/testing/web-platform/tests/css/css-lists/list-with-image-display-changed-001.html @@ -0,0 +1,29 @@ + + +CSS Lists: test list with firstchild changing display + + + + + + + +
      +
    • + + Some other text +
    • +
    + + diff --git a/testing/web-platform/tests/css/css-lists/resources/white.gif b/testing/web-platform/tests/css/css-lists/resources/white.gif new file mode 100644 index 000000000000..3aa2098dc881 Binary files /dev/null and b/testing/web-platform/tests/css/css-lists/resources/white.gif differ diff --git a/testing/web-platform/tests/css/css-multicol/float-with-line-after-spanner-ref.html b/testing/web-platform/tests/css/css-multicol/float-with-line-after-spanner-ref.html new file mode 100644 index 000000000000..7c33b48f5e60 --- /dev/null +++ b/testing/web-platform/tests/css/css-multicol/float-with-line-after-spanner-ref.html @@ -0,0 +1,7 @@ + + +

    The word 'PASS' should be seen below, inside a blue square.

    +
    +
    + PASS +
    diff --git a/testing/web-platform/tests/css/css-multicol/float-with-line-after-spanner.html b/testing/web-platform/tests/css/css-multicol/float-with-line-after-spanner.html new file mode 100644 index 000000000000..2351fb4bec9f --- /dev/null +++ b/testing/web-platform/tests/css/css-multicol/float-with-line-after-spanner.html @@ -0,0 +1,11 @@ + + + + +

    The word 'PASS' should be seen below, inside a blue square.

    +
    +
    PASS
    +
    +
    +
    +
    diff --git a/testing/web-platform/tests/css/css-multicol/large-actual-column-count.html b/testing/web-platform/tests/css/css-multicol/large-actual-column-count.html new file mode 100644 index 000000000000..615e3f2f0598 --- /dev/null +++ b/testing/web-platform/tests/css/css-multicol/large-actual-column-count.html @@ -0,0 +1,13 @@ + + + + +

    Test passes if there is a filled green square and no red.

    +
    +
    +
    +
    +
    + diff --git a/testing/web-platform/tests/css/css-multicol/multicol-span-all-under-clip-path-crash.html b/testing/web-platform/tests/css/css-multicol/multicol-span-all-under-clip-path-crash.html new file mode 100644 index 000000000000..d37a120b2e0c --- /dev/null +++ b/testing/web-platform/tests/css/css-multicol/multicol-span-all-under-clip-path-crash.html @@ -0,0 +1,11 @@ + +Should not crash on composited column-span:all under a clip-path + + + + +
    +
    +
    column-span: all
    +
    +
    diff --git a/testing/web-platform/tests/css/css-overflow/META.yml b/testing/web-platform/tests/css/css-overflow/META.yml index 8d6c2cba90db..b9ba7acd150e 100644 --- a/testing/web-platform/tests/css/css-overflow/META.yml +++ b/testing/web-platform/tests/css/css-overflow/META.yml @@ -2,3 +2,4 @@ spec: https://drafts.csswg.org/css-overflow/ suggested_reviewers: - frivoal - dbaron + - rachelandrew diff --git a/testing/web-platform/tests/css/css-overflow/inheritance.html b/testing/web-platform/tests/css/css-overflow/inheritance.html new file mode 100644 index 000000000000..976406be413b --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/inheritance.html @@ -0,0 +1,28 @@ + + + + +Inheritance of CSS Overflow properties + + + + + + + + +
    +
    +
    + + + diff --git a/testing/web-platform/tests/css/css-overflow/overflow-abpos-transform.html b/testing/web-platform/tests/css/css-overflow/overflow-abpos-transform.html new file mode 100644 index 000000000000..df1128316f60 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/overflow-abpos-transform.html @@ -0,0 +1,32 @@ + +CSS Overflow and Transforms: css-overflow-3 + + + + + + + +
    +
    +
    + diff --git a/testing/web-platform/tests/css/css-overflow/overflow-inline-transform-relative.html b/testing/web-platform/tests/css/css-overflow/overflow-inline-transform-relative.html new file mode 100644 index 000000000000..4df7b6389432 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/overflow-inline-transform-relative.html @@ -0,0 +1,39 @@ + +CSS Overflow and Transforms: css-overflow-3 + + + + + + + +
    + + scroll +
    + down +
    +
    + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-invalid.html new file mode 100644 index 000000000000..2b9c059a45d0 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-invalid.html @@ -0,0 +1,22 @@ + + + + +CSS Overflow: parsing block-ellipsis with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-valid.html new file mode 100644 index 000000000000..06148ef01b29 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/block-ellipsis-valid.html @@ -0,0 +1,19 @@ + + + + +CSS Overflow: parsing block-ellipsis with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/continue-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/continue-invalid.html new file mode 100644 index 000000000000..36e164158f39 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/continue-invalid.html @@ -0,0 +1,19 @@ + + + + +CSS Overflow: parsing continue with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/continue-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/continue-valid.html new file mode 100644 index 000000000000..97524cf80db2 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/continue-valid.html @@ -0,0 +1,18 @@ + + + + +CSS Overflow: parsing continue with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-invalid.html new file mode 100644 index 000000000000..7b64e4735867 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-invalid.html @@ -0,0 +1,27 @@ + + + + +CSS Overflow: parsing line-clamp with invalid values + + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-valid.html new file mode 100644 index 000000000000..735300c9efe7 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/line-clamp-valid.html @@ -0,0 +1,24 @@ + + + + +CSS Overflow: parsing line-clamp with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/max-lines-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/max-lines-invalid.html new file mode 100644 index 000000000000..85fe77fdb7a6 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/max-lines-invalid.html @@ -0,0 +1,25 @@ + + + + +CSS Overflow: parsing max-lines with invalid values + + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/max-lines-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/max-lines-valid.html new file mode 100644 index 000000000000..f2fda80c3b3d --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/max-lines-valid.html @@ -0,0 +1,19 @@ + + + + +CSS Overflow: parsing max-lines with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/overflow-computed.html b/testing/web-platform/tests/css/css-overflow/parsing/overflow-computed.html new file mode 100644 index 000000000000..f3aaaa3c67ff --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/overflow-computed.html @@ -0,0 +1,52 @@ + + + + +CSS Overflow: getComputedValue().overflow + + + + + + + +
    + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/overflow-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/overflow-invalid.html new file mode 100644 index 000000000000..c99fda7f784e --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/overflow-invalid.html @@ -0,0 +1,24 @@ + + + + +CSS Overflow: parsing overflow with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/overflow-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/overflow-valid.html new file mode 100644 index 000000000000..02ddd9385930 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/overflow-valid.html @@ -0,0 +1,37 @@ + + + + +CSS Overflow: parsing overflow with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-computed.html b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-computed.html new file mode 100644 index 000000000000..39358d04c6ce --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-computed.html @@ -0,0 +1,18 @@ + + + + +CSS Overflow: getComputedValue().textOverflow + + + + + + +
    + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-invalid.html b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-invalid.html new file mode 100644 index 000000000000..785632a727a5 --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-invalid.html @@ -0,0 +1,19 @@ + + + + +CSS Overflow: parsing text-overflow with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-valid.html b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-valid.html new file mode 100644 index 000000000000..df77dffd6d8b --- /dev/null +++ b/testing/web-platform/tests/css/css-overflow/parsing/text-overflow-valid.html @@ -0,0 +1,18 @@ + + + + +CSS Overflow: parsing text-overflow with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-paint-api/idlharness.html b/testing/web-platform/tests/css/css-paint-api/idlharness.html index bb4c9357f243..c9675ab0412b 100644 --- a/testing/web-platform/tests/css/css-paint-api/idlharness.html +++ b/testing/web-platform/tests/css/css-paint-api/idlharness.html @@ -8,19 +8,9 @@ diff --git a/testing/web-platform/tests/css/css-position/position-absolute-abspos-table-dynamic.html b/testing/web-platform/tests/css/css-position/position-absolute-abspos-table-dynamic.html new file mode 100644 index 000000000000..2b158a86f659 --- /dev/null +++ b/testing/web-platform/tests/css/css-position/position-absolute-abspos-table-dynamic.html @@ -0,0 +1,36 @@ + +CSS Position: dynamic abspos table height changes + + + + + + + +
    +
    +
    + diff --git a/testing/web-platform/tests/css/css-position/position-absolute-in-inline-crash.html b/testing/web-platform/tests/css/css-position/position-absolute-in-inline-crash.html new file mode 100644 index 000000000000..5d36710b6fe6 --- /dev/null +++ b/testing/web-platform/tests/css/css-position/position-absolute-in-inline-crash.html @@ -0,0 +1,23 @@ + + + + Should not crash with split inline abspos container, and flex ancestor + + + + + + + +
    + + AAA +
    + + XXX +
    + ZZZ +
    +
    + + diff --git a/testing/web-platform/tests/css/css-position/position-absolute-replaced-minmax.html b/testing/web-platform/tests/css/css-position/position-absolute-replaced-minmax.html new file mode 100644 index 000000000000..644b147a227e --- /dev/null +++ b/testing/web-platform/tests/css/css-position/position-absolute-replaced-minmax.html @@ -0,0 +1,328 @@ + +CSS Position: absolute position, replaced elements, and minmax + + + + + + + + + + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + + + +
    + +
    + +
    + +
    + +
    + +
    + + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + + +
    + +
    + +
    + +
    + +
    + +
    + + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + + + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + diff --git a/testing/web-platform/tests/css/css-position/position-sticky-hyperlink-ref.html b/testing/web-platform/tests/css/css-position/position-sticky-hyperlink-ref.html index 74a48fb50708..0f8100e8888b 100644 --- a/testing/web-platform/tests/css/css-position/position-sticky-hyperlink-ref.html +++ b/testing/web-platform/tests/css/css-position/position-sticky-hyperlink-ref.html @@ -15,6 +15,7 @@ body { .positioned { position: relative; top: 100px; + will-change: transform; } .spacer { diff --git a/testing/web-platform/tests/css/css-position/position-sticky-hyperlink.html b/testing/web-platform/tests/css/css-position/position-sticky-hyperlink.html index 466876ee28dd..fc1c2fce0aac 100644 --- a/testing/web-platform/tests/css/css-position/position-sticky-hyperlink.html +++ b/testing/web-platform/tests/css/css-position/position-sticky-hyperlink.html @@ -18,6 +18,7 @@ body { .sticky { position: sticky; top: 0; + will-change: transform; } .spacer { diff --git a/testing/web-platform/tests/css/css-properties-values-api/idlharness.html b/testing/web-platform/tests/css/css-properties-values-api/idlharness.html index e57f0f00ca26..6f053757c3ce 100644 --- a/testing/web-platform/tests/css/css-properties-values-api/idlharness.html +++ b/testing/web-platform/tests/css/css-properties-values-api/idlharness.html @@ -8,13 +8,9 @@ diff --git a/testing/web-platform/tests/css/css-pseudo/first-line-first-letter-insert-crash.html b/testing/web-platform/tests/css/css-pseudo/first-line-first-letter-insert-crash.html new file mode 100644 index 000000000000..17f035dedf1e --- /dev/null +++ b/testing/web-platform/tests/css/css-pseudo/first-line-first-letter-insert-crash.html @@ -0,0 +1,19 @@ + +Should not crash when inserting an element inside a :first-line pseudo. + + + + +

    + testsup +

    + diff --git a/testing/web-platform/tests/css/css-regions/META.yml b/testing/web-platform/tests/css/css-regions/META.yml index ed505dab98a5..d8e38081fcfe 100644 --- a/testing/web-platform/tests/css/css-regions/META.yml +++ b/testing/web-platform/tests/css/css-regions/META.yml @@ -2,3 +2,4 @@ spec: https://drafts.csswg.org/css-regions/ suggested_reviewers: - atanassov - astearns + - rachelandrew diff --git a/testing/web-platform/tests/css/css-scroll-anchoring/ancestor-change-heuristic.html b/testing/web-platform/tests/css/css-scroll-anchoring/ancestor-change-heuristic.html index 21adfbb6b7a5..ffe60ad775ad 100644 --- a/testing/web-platform/tests/css/css-scroll-anchoring/ancestor-change-heuristic.html +++ b/testing/web-platform/tests/css/css-scroll-anchoring/ancestor-change-heuristic.html @@ -3,7 +3,7 @@ diff --git a/testing/web-platform/tests/css/css-scroll-anchoring/descend-into-container-with-float.html b/testing/web-platform/tests/css/css-scroll-anchoring/descend-into-container-with-float.html index ff39608ff040..a86634f9ed3d 100644 --- a/testing/web-platform/tests/css/css-scroll-anchoring/descend-into-container-with-float.html +++ b/testing/web-platform/tests/css/css-scroll-anchoring/descend-into-container-with-float.html @@ -3,7 +3,7 @@ +out of view +
    +excluded subtree [nested inline] +
    + diff --git a/testing/web-platform/tests/css/css-scroll-anchoring/inline-block.html b/testing/web-platform/tests/css/css-scroll-anchoring/inline-block.html index 881ff97de9ea..fa7655bcd8af 100644 --- a/testing/web-platform/tests/css/css-scroll-anchoring/inline-block.html +++ b/testing/web-platform/tests/css/css-scroll-anchoring/inline-block.html @@ -3,7 +3,7 @@

    -
    -
    -
    -
    +
    +
    +
    + The following text should be green: + +
    + + diff --git a/testing/web-platform/tests/css/css-shadow-parts/interaction-with-placeholder.html b/testing/web-platform/tests/css/css-shadow-parts/interaction-with-placeholder.html new file mode 100644 index 000000000000..a064789f0611 --- /dev/null +++ b/testing/web-platform/tests/css/css-shadow-parts/interaction-with-placeholder.html @@ -0,0 +1,29 @@ + + + + CSS Shadow Parts - Interaction with placeholder + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-shadow-parts/interaction-with-pseudo-elements.html b/testing/web-platform/tests/css/css-shadow-parts/interaction-with-pseudo-elements.html new file mode 100644 index 000000000000..776ab2eb69dc --- /dev/null +++ b/testing/web-platform/tests/css/css-shadow-parts/interaction-with-pseudo-elements.html @@ -0,0 +1,86 @@ + + + + CSS Shadow Parts - Interaction with pseudo-elements + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes.html b/testing/web-platform/tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes.html new file mode 100644 index 000000000000..0dbbb2f9404d --- /dev/null +++ b/testing/web-platform/tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes.html @@ -0,0 +1,22 @@ + + + +

    There should be a green square below, and no red.

    +
    +
    +
    + + +
    +
    +
    + + + + diff --git a/testing/web-platform/tests/css/css-sizing/percentage-height-in-flexbox.html b/testing/web-platform/tests/css/css-sizing/percentage-height-in-flexbox.html new file mode 100644 index 000000000000..f5d9d528a15b --- /dev/null +++ b/testing/web-platform/tests/css/css-sizing/percentage-height-in-flexbox.html @@ -0,0 +1,45 @@ + +Percentage height in flexbox: css-sizing-3 + + + + + + + +
    +
    + +
    +
    + diff --git a/testing/web-platform/tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html b/testing/web-platform/tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html new file mode 100644 index 000000000000..c63c490c370c --- /dev/null +++ b/testing/web-platform/tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html @@ -0,0 +1,15 @@ + + + + + +

    Test passes if there is a green square below.

    + +
    + +
    + + diff --git a/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-1-ref.html b/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-1-ref.html index 9a68590b6389..a4419eab319e 100644 --- a/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-1-ref.html +++ b/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-1-ref.html @@ -69,6 +69,10 @@ div {
    +
    + +
    +
    @@ -85,6 +89,10 @@ div {
    +
    + +
    +
    diff --git a/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-1.html b/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-1.html index 018129aae3a7..5bde7ec045bb 100644 --- a/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-1.html +++ b/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-1.html @@ -93,6 +93,10 @@ div {
    +
    + +
    +
    diff --git a/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-2-ref.html b/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-2-ref.html new file mode 100644 index 000000000000..83eff4b45c2c --- /dev/null +++ b/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-2-ref.html @@ -0,0 +1,136 @@ + + + + + Reference: INPUT type=range percent intrinsic block-size + + + +
    + +
    + +
    + + +
    + +
    + + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + + +
    + +
    + + +
    + +
    + +
    + +
    + +
    + +
    +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + + diff --git a/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-2.html b/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-2.html new file mode 100644 index 000000000000..e11e2955891f --- /dev/null +++ b/testing/web-platform/tests/css/css-sizing/range-percent-intrinsic-size-2.html @@ -0,0 +1,145 @@ + + + + + Test: INPUT type=range percent intrinsic block-size + + + + + + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + + +
    +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + +
    + + + diff --git a/testing/web-platform/tests/css/css-syntax/anb-parsing.html b/testing/web-platform/tests/css/css-syntax/anb-parsing.html new file mode 100644 index 000000000000..7fcc06e2c7e8 --- /dev/null +++ b/testing/web-platform/tests/css/css-syntax/anb-parsing.html @@ -0,0 +1,125 @@ + +An+B Parsing + + + + + + + + diff --git a/testing/web-platform/tests/css/css-syntax/anb-serialization.html b/testing/web-platform/tests/css/css-syntax/anb-serialization.html new file mode 100644 index 000000000000..787700cebf39 --- /dev/null +++ b/testing/web-platform/tests/css/css-syntax/anb-serialization.html @@ -0,0 +1,62 @@ + +An+B Serialization + + + + + + + + diff --git a/testing/web-platform/tests/css/css-syntax/charset-is-not-a-rule.html b/testing/web-platform/tests/css/css-syntax/charset-is-not-a-rule.html new file mode 100644 index 000000000000..81b2a04dc5a0 --- /dev/null +++ b/testing/web-platform/tests/css/css-syntax/charset-is-not-a-rule.html @@ -0,0 +1,17 @@ + +@charset isn't a valid rule and should be dropped + + + + + + diff --git a/testing/web-platform/tests/css/css-syntax/escaped-eof.html b/testing/web-platform/tests/css/css-syntax/escaped-eof.html new file mode 100644 index 000000000000..5d47c34ac512 --- /dev/null +++ b/testing/web-platform/tests/css/css-syntax/escaped-eof.html @@ -0,0 +1,46 @@ + +Escaped EOF + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-syntax/inclusive-ranges.html b/testing/web-platform/tests/css/css-syntax/inclusive-ranges.html new file mode 100644 index 000000000000..ac486bde5698 --- /dev/null +++ b/testing/web-platform/tests/css/css-syntax/inclusive-ranges.html @@ -0,0 +1,60 @@ + +Inclusive Ranges + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-syntax/input-preprocessing.html b/testing/web-platform/tests/css/css-syntax/input-preprocessing.html new file mode 100644 index 000000000000..9ef9a730820d --- /dev/null +++ b/testing/web-platform/tests/css/css-syntax/input-preprocessing.html @@ -0,0 +1,46 @@ + +Input Preprocessing + + + + + + + + diff --git a/testing/web-platform/tests/css/css-syntax/unclosed-constructs.html b/testing/web-platform/tests/css/css-syntax/unclosed-constructs.html new file mode 100644 index 000000000000..3d7940387c81 --- /dev/null +++ b/testing/web-platform/tests/css/css-syntax/unclosed-constructs.html @@ -0,0 +1,36 @@ + +Unclosed Constructs Are Valid + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-syntax/whitespace.html b/testing/web-platform/tests/css/css-syntax/whitespace.html new file mode 100644 index 000000000000..bc7aa7ebda51 --- /dev/null +++ b/testing/web-platform/tests/css/css-syntax/whitespace.html @@ -0,0 +1,62 @@ + +CSS Whitespace + + + + + + +
    +
    + + + + diff --git a/testing/web-platform/tests/css/css-tables/META.yml b/testing/web-platform/tests/css/css-tables/META.yml index ac81381ef568..b5372064ac27 100644 --- a/testing/web-platform/tests/css/css-tables/META.yml +++ b/testing/web-platform/tests/css/css-tables/META.yml @@ -3,3 +3,4 @@ suggested_reviewers: - dbaron - FremyCompany - gregwhitworth + - rachelandrew diff --git a/testing/web-platform/tests/css/css-tables/inheritance.html b/testing/web-platform/tests/css/css-tables/inheritance.html new file mode 100644 index 000000000000..2c640db6d9ec --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/inheritance.html @@ -0,0 +1,25 @@ + + + + +Inheritance of CSS Tables properties + + + + + + + + +
    +
    +
    + + + diff --git a/testing/web-platform/tests/css/css-tables/no-overflow-with-table-cell-margins.html b/testing/web-platform/tests/css/css-tables/no-overflow-with-table-cell-margins.html new file mode 100644 index 000000000000..9657da9c262c --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/no-overflow-with-table-cell-margins.html @@ -0,0 +1,26 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/border-collapse-computed.html b/testing/web-platform/tests/css/css-tables/parsing/border-collapse-computed.html new file mode 100644 index 000000000000..1ad0b6d701a7 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/border-collapse-computed.html @@ -0,0 +1,19 @@ + + + + +CSS Table Module: getComputedValue().borderCollapse + + + + + + + +
    + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/border-collapse-invalid.html b/testing/web-platform/tests/css/css-tables/parsing/border-collapse-invalid.html new file mode 100644 index 000000000000..9b10062f0f35 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/border-collapse-invalid.html @@ -0,0 +1,18 @@ + + + + +CSS Table Module Test: parsing border-collapse with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/border-collapse-valid.html b/testing/web-platform/tests/css/css-tables/parsing/border-collapse-valid.html new file mode 100644 index 000000000000..2dc8ae45a386 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/border-collapse-valid.html @@ -0,0 +1,18 @@ + + + + +CSS Table Module Test: parsing border-collapse with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/border-spacing-computed.html b/testing/web-platform/tests/css/css-tables/parsing/border-spacing-computed.html new file mode 100644 index 000000000000..384321fa8ed3 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/border-spacing-computed.html @@ -0,0 +1,26 @@ + + + + +CSS Table Module: getComputedValue().borderSpacing + + + + + + + +
    + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/border-spacing-invalid.html b/testing/web-platform/tests/css/css-tables/parsing/border-spacing-invalid.html new file mode 100644 index 000000000000..47fd283ccfb4 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/border-spacing-invalid.html @@ -0,0 +1,20 @@ + + + + +CSS Table Module Test: parsing border-spacing with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/border-spacing-valid.html b/testing/web-platform/tests/css/css-tables/parsing/border-spacing-valid.html new file mode 100644 index 000000000000..98bf402fc6cc --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/border-spacing-valid.html @@ -0,0 +1,19 @@ + + + + +CSS Table Module Test: parsing border-spacing with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/caption-side-computed.html b/testing/web-platform/tests/css/css-tables/parsing/caption-side-computed.html new file mode 100644 index 000000000000..ea618891878e --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/caption-side-computed.html @@ -0,0 +1,19 @@ + + + + +CSS Table Module: getComputedValue().captionSide + + + + + + + +
    + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/caption-side-invalid.html b/testing/web-platform/tests/css/css-tables/parsing/caption-side-invalid.html new file mode 100644 index 000000000000..1552e4d241f6 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/caption-side-invalid.html @@ -0,0 +1,20 @@ + + + + +CSS Table Module Test: parsing caption-side with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/caption-side-valid.html b/testing/web-platform/tests/css/css-tables/parsing/caption-side-valid.html new file mode 100644 index 000000000000..a97683a6f428 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/caption-side-valid.html @@ -0,0 +1,18 @@ + + + + +CSS Table Module Test: parsing caption-side with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/empty-cells-computed.html b/testing/web-platform/tests/css/css-tables/parsing/empty-cells-computed.html new file mode 100644 index 000000000000..f8f6663c6603 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/empty-cells-computed.html @@ -0,0 +1,19 @@ + + + + +CSS Table Module: getComputedValue().emptyCells + + + + + + + +
    + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/empty-cells-invalid.html b/testing/web-platform/tests/css/css-tables/parsing/empty-cells-invalid.html new file mode 100644 index 000000000000..4b5bf95dcdcb --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/empty-cells-invalid.html @@ -0,0 +1,18 @@ + + + + +CSS Table Module Test: parsing empty-cells with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/empty-cells-valid.html b/testing/web-platform/tests/css/css-tables/parsing/empty-cells-valid.html new file mode 100644 index 000000000000..c3483aafe01d --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/empty-cells-valid.html @@ -0,0 +1,18 @@ + + + + +CSS Table Module Test: parsing empty-cells with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/table-layout-computed.html b/testing/web-platform/tests/css/css-tables/parsing/table-layout-computed.html new file mode 100644 index 000000000000..53a43151ed57 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/table-layout-computed.html @@ -0,0 +1,19 @@ + + + + +CSS Table Module: getComputedValue().tableLayout + + + + + + + +
    + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/table-layout-invalid.html b/testing/web-platform/tests/css/css-tables/parsing/table-layout-invalid.html new file mode 100644 index 000000000000..23a60ca56e75 --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/table-layout-invalid.html @@ -0,0 +1,18 @@ + + + + +CSS Table Module Test: parsing table-layout with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-tables/parsing/table-layout-valid.html b/testing/web-platform/tests/css/css-tables/parsing/table-layout-valid.html new file mode 100644 index 000000000000..bf94ed83693d --- /dev/null +++ b/testing/web-platform/tests/css/css-tables/parsing/table-layout-valid.html @@ -0,0 +1,18 @@ + + + + +CSS Table Module Test: parsing table-layout with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-001.html b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-001.html new file mode 100644 index 000000000000..06237319a802 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-001.html @@ -0,0 +1,30 @@ + + +CSS Text Test: overflow-wrap: anywhere + + + + + + + +

    Test passes if there is a filled green square and no red.

    +
         X
    + diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-002.html b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-002.html new file mode 100644 index 000000000000..a3ec2f5f06d7 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-002.html @@ -0,0 +1,31 @@ + + +CSS Text Test: overflow-wrap: anywhere + white-space:break-spaces + + + + + + + + +

    This test passes if there is nothing below this sentence. +

    FAIL
    + diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-003.html b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-003.html new file mode 100644 index 000000000000..4870b0867b9c --- /dev/null +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-003.html @@ -0,0 +1,25 @@ + + +CSS Text Test: overflow-wrap:anywhere + white-space:break-spaces + + + + + + + + +

    This test passes if the word FAIL does not appear below. +

    PASS FAIL
    diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-004.html b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-004.html new file mode 100644 index 000000000000..9488ac83b0b6 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-004.html @@ -0,0 +1,36 @@ + + +CSS Text Test: overflow-wrap: anywhere + + + + + + + +

    Test passes if there is a filled green square and no red.

    +

    XXXXX
    +
    XXXXX
    + diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-005.html b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-005.html new file mode 100644 index 000000000000..57e14ac5b2ba --- /dev/null +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-005.html @@ -0,0 +1,36 @@ + + +CSS Text Test: overflow-wrap: anywhere + + + + + + + + +

    Test passes if there is a filled green square and no red.

    +
    XXXXX
    XXXXX
    XXXXX
    XXXXX
    XXXXX
    +
    XXX + XXXXXXXXX
    + diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-fit-content-001.html b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-fit-content-001.html new file mode 100644 index 000000000000..8655b1f087df --- /dev/null +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-fit-content-001.html @@ -0,0 +1,23 @@ + + +CSS Text Test: overflow-wrap: anywhere with fit-content + + + + + + + +
    +

    Tests pass if all lines do not wrap. +

    𝜋
    +
    𝜋
    + diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-001.html b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-001.html new file mode 100644 index 000000000000..c4a0e10fa42d --- /dev/null +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-001.html @@ -0,0 +1,17 @@ + +CSS Text Test: overflow-wrap: anywhere + + + + + +
    1234567890
    diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-002.html b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-002.html new file mode 100644 index 000000000000..b149ca4d7c25 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-002.html @@ -0,0 +1,22 @@ + +CSS Text Test: overflow-wrap: anywhere + + + + + + +
    1234567890
    + + diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-break-word-002.html b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-break-word-002.html index 660b7f163020..6f90f0c0cb8c 100644 --- a/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-break-word-002.html +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/overflow-wrap-break-word-002.html @@ -22,7 +22,7 @@ div {

    This test passes if there is nothing below this sentence. -

    FAIL
    +
    FAIL
    diff --git a/testing/web-platform/tests/css/css-text/overflow-wrap/reference/overflow-wrap-min-content-size-004-ref.html b/testing/web-platform/tests/css/css-text/overflow-wrap/reference/overflow-wrap-min-content-size-004-ref.html new file mode 100644 index 000000000000..c37f3f107841 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/overflow-wrap/reference/overflow-wrap-min-content-size-004-ref.html @@ -0,0 +1,14 @@ + + +CSS Text Test reference + + + +

    Test passes if there is a green box below and no red. +

    XXXX
    diff --git a/testing/web-platform/tests/css/css-text/parsing/hanging-punctuation-invalid.html b/testing/web-platform/tests/css/css-text/parsing/hanging-punctuation-invalid.html new file mode 100644 index 000000000000..50ed22f1b745 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/hanging-punctuation-invalid.html @@ -0,0 +1,23 @@ + + + + +CSS Text Module Test: parsing hanging-punctuation with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/hanging-punctuation-valid.html b/testing/web-platform/tests/css/css-text/parsing/hanging-punctuation-valid.html new file mode 100644 index 000000000000..3523a791b847 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/hanging-punctuation-valid.html @@ -0,0 +1,36 @@ + + + + +CSS Text Module Test: parsing hanging-punctuation with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/hyphens-invalid.html b/testing/web-platform/tests/css/css-text/parsing/hyphens-invalid.html new file mode 100644 index 000000000000..521600f7138b --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/hyphens-invalid.html @@ -0,0 +1,19 @@ + + + + +CSS Text Module Test: parsing hyphens with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/hyphens-valid.html b/testing/web-platform/tests/css/css-text/parsing/hyphens-valid.html new file mode 100644 index 000000000000..0ad72094c705 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/hyphens-valid.html @@ -0,0 +1,19 @@ + + + + +CSS Text Module Test: parsing hyphens with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/letter-spacing-invalid.html b/testing/web-platform/tests/css/css-text/parsing/letter-spacing-invalid.html new file mode 100644 index 000000000000..e9ad4e56a5bb --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/letter-spacing-invalid.html @@ -0,0 +1,22 @@ + + + + +CSS Text Module Test: parsing letter-spacing with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/letter-spacing-valid.html b/testing/web-platform/tests/css/css-text/parsing/letter-spacing-valid.html new file mode 100644 index 000000000000..740d1fc39884 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/letter-spacing-valid.html @@ -0,0 +1,21 @@ + + + + +CSS Text Module Test: parsing letter-spacing with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/line-break-invalid.html b/testing/web-platform/tests/css/css-text/parsing/line-break-invalid.html new file mode 100644 index 000000000000..aca166493607 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/line-break-invalid.html @@ -0,0 +1,20 @@ + + + + +CSS Text Module Test: parsing line-break with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/line-break-valid.html b/testing/web-platform/tests/css/css-text/parsing/line-break-valid.html new file mode 100644 index 000000000000..caaae9a5a015 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/line-break-valid.html @@ -0,0 +1,21 @@ + + + + +CSS Text Module Test: parsing line-break with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/overflow-wrap-invalid.html b/testing/web-platform/tests/css/css-text/parsing/overflow-wrap-invalid.html new file mode 100644 index 000000000000..1a467d5f1882 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/overflow-wrap-invalid.html @@ -0,0 +1,19 @@ + + + + +CSS Text Module Test: parsing overflow-wrap with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/overflow-wrap-valid.html b/testing/web-platform/tests/css/css-text/parsing/overflow-wrap-valid.html new file mode 100644 index 000000000000..8ab907c57028 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/overflow-wrap-valid.html @@ -0,0 +1,19 @@ + + + + +CSS Text Module Test: parsing overflow-wrap with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/tab-size-invalid.html b/testing/web-platform/tests/css/css-text/parsing/tab-size-invalid.html new file mode 100644 index 000000000000..c95c0462f236 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/tab-size-invalid.html @@ -0,0 +1,21 @@ + + + + +CSS Text Module Test: parsing tab-size with invalid values + + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/tab-size-valid.html b/testing/web-platform/tests/css/css-text/parsing/tab-size-valid.html new file mode 100644 index 000000000000..ced5a3660985 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/tab-size-valid.html @@ -0,0 +1,22 @@ + + + + +CSS Text Module Test: parsing tab-size with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-align-all-invalid.html b/testing/web-platform/tests/css/css-text/parsing/text-align-all-invalid.html new file mode 100644 index 000000000000..70cbadf588bd --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-align-all-invalid.html @@ -0,0 +1,21 @@ + + + + +CSS Text Module Test: parsing text-align-all with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-align-all-valid.html b/testing/web-platform/tests/css/css-text/parsing/text-align-all-valid.html new file mode 100644 index 000000000000..f65b15afde02 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-align-all-valid.html @@ -0,0 +1,23 @@ + + + + +CSS Text Module Test: parsing text-align-all with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-align-invalid.html b/testing/web-platform/tests/css/css-text/parsing/text-align-invalid.html new file mode 100644 index 000000000000..38a56d914cda --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-align-invalid.html @@ -0,0 +1,21 @@ + + + + +CSS Text Module Test: parsing text-align with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-align-last-invalid.html b/testing/web-platform/tests/css/css-text/parsing/text-align-last-invalid.html new file mode 100644 index 000000000000..c16e9a6c1336 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-align-last-invalid.html @@ -0,0 +1,21 @@ + + + + +CSS Text Module Test: parsing text-align-last with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-align-last-valid.html b/testing/web-platform/tests/css/css-text/parsing/text-align-last-valid.html new file mode 100644 index 000000000000..c64e7d8a39e0 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-align-last-valid.html @@ -0,0 +1,24 @@ + + + + +CSS Text Module Test: parsing text-align-last with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-align-valid.html b/testing/web-platform/tests/css/css-text/parsing/text-align-valid.html new file mode 100644 index 000000000000..e67f4f6f1679 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-align-valid.html @@ -0,0 +1,24 @@ + + + + +CSS Text Module Test: parsing text-align with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-indent-invalid.html b/testing/web-platform/tests/css/css-text/parsing/text-indent-invalid.html new file mode 100644 index 000000000000..9b5d7754b101 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-indent-invalid.html @@ -0,0 +1,24 @@ + + + + +CSS Text Module Test: parsing text-indent with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-indent-valid.html b/testing/web-platform/tests/css/css-text/parsing/text-indent-valid.html new file mode 100644 index 000000000000..9433ba3d9d35 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-indent-valid.html @@ -0,0 +1,32 @@ + + + + +CSS Text Module Test: parsing text-indent with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-justify-invalid.html b/testing/web-platform/tests/css/css-text/parsing/text-justify-invalid.html new file mode 100644 index 000000000000..a009ef08eb53 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-justify-invalid.html @@ -0,0 +1,19 @@ + + + + +CSS Text Module Test: parsing text-justify with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-justify-valid.html b/testing/web-platform/tests/css/css-text/parsing/text-justify-valid.html new file mode 100644 index 000000000000..0991409da15f --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-justify-valid.html @@ -0,0 +1,20 @@ + + + + +CSS Text Module Test: parsing text-justify with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-transform-invalid.html b/testing/web-platform/tests/css/css-text/parsing/text-transform-invalid.html new file mode 100644 index 000000000000..41482ab5f2c5 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-transform-invalid.html @@ -0,0 +1,23 @@ + + + + +CSS Text Module Test: parsing text-transform with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/text-transform-valid.html b/testing/web-platform/tests/css/css-text/parsing/text-transform-valid.html new file mode 100644 index 000000000000..a40166c37ef6 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/text-transform-valid.html @@ -0,0 +1,37 @@ + + + + +CSS Text Module Test: parsing text-transform with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/white-space-invalid.html b/testing/web-platform/tests/css/css-text/parsing/white-space-invalid.html new file mode 100644 index 000000000000..12c34fb53783 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/white-space-invalid.html @@ -0,0 +1,20 @@ + + + + +CSS Text Module Test: parsing white-space with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/white-space-valid.html b/testing/web-platform/tests/css/css-text/parsing/white-space-valid.html new file mode 100644 index 000000000000..d872c0b6fbc3 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/white-space-valid.html @@ -0,0 +1,22 @@ + + + + +CSS Text Module Test: parsing white-space with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/word-break-invalid.html b/testing/web-platform/tests/css/css-text/parsing/word-break-invalid.html new file mode 100644 index 000000000000..6d544de8bfa2 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/word-break-invalid.html @@ -0,0 +1,19 @@ + + + + +CSS Text Module Test: parsing word-break with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/word-break-valid.html b/testing/web-platform/tests/css/css-text/parsing/word-break-valid.html new file mode 100644 index 000000000000..9cd917b488a0 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/word-break-valid.html @@ -0,0 +1,19 @@ + + + + +CSS Text Module Test: parsing word-break with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/word-spacing-invalid.html b/testing/web-platform/tests/css/css-text/parsing/word-spacing-invalid.html new file mode 100644 index 000000000000..3a1c4ca487c4 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/word-spacing-invalid.html @@ -0,0 +1,20 @@ + + + + +CSS Text Module Test: parsing word-spacing with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/word-spacing-valid.html b/testing/web-platform/tests/css/css-text/parsing/word-spacing-valid.html new file mode 100644 index 000000000000..217b2488f531 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/word-spacing-valid.html @@ -0,0 +1,22 @@ + + + + +CSS Text Module Test: parsing word-spacing with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/word-wrap-invalid.html b/testing/web-platform/tests/css/css-text/parsing/word-wrap-invalid.html new file mode 100644 index 000000000000..40890775ca56 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/word-wrap-invalid.html @@ -0,0 +1,19 @@ + + + + +CSS Text Module Test: parsing word-wrap with invalid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/parsing/word-wrap-valid.html b/testing/web-platform/tests/css/css-text/parsing/word-wrap-valid.html new file mode 100644 index 000000000000..ce5731551aec --- /dev/null +++ b/testing/web-platform/tests/css/css-text/parsing/word-wrap-valid.html @@ -0,0 +1,19 @@ + + + + +CSS Text Module Test: parsing word-wrap with valid values + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-text/tab-size/tab-size-inheritance-001-ref.html b/testing/web-platform/tests/css/css-text/tab-size/tab-size-inheritance-001-ref.html new file mode 100644 index 000000000000..5e253df9490e --- /dev/null +++ b/testing/web-platform/tests/css/css-text/tab-size/tab-size-inheritance-001-ref.html @@ -0,0 +1,15 @@ + + +CSS Text level 3 Test reference + + + +

    Test passes if there is a green square and no red. +

    diff --git a/testing/web-platform/tests/css/css-text/tab-size/tab-size-inheritance-001.html b/testing/web-platform/tests/css/css-text/tab-size/tab-size-inheritance-001.html new file mode 100644 index 000000000000..0cba27079bdc --- /dev/null +++ b/testing/web-platform/tests/css/css-text/tab-size/tab-size-inheritance-001.html @@ -0,0 +1,40 @@ + + +CSS Text level 3 Test: tab-size in lengths inherit as absolute lengths + + + + + + +

    Test passes if there is a green square and no red. +

    +
    diff --git a/testing/web-platform/tests/css/css-text/tab-size/tab-size-spacing-001-ref.html b/testing/web-platform/tests/css/css-text/tab-size/tab-size-spacing-001-ref.html new file mode 100644 index 000000000000..2711617476d4 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/tab-size/tab-size-spacing-001-ref.html @@ -0,0 +1,16 @@ + + +CSS Text level 3 Test reference + + + +

    Test passes if there is a green square and no red. +

    diff --git a/testing/web-platform/tests/css/css-text/tab-size/tab-size-spacing-001.html b/testing/web-platform/tests/css/css-text/tab-size/tab-size-spacing-001.html new file mode 100644 index 000000000000..65943dcd32a7 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/tab-size/tab-size-spacing-001.html @@ -0,0 +1,42 @@ + + +CSS Text level 3 Test: tab-size, word-spacing and letter-spacing + + + + + + + + +

    Test passes if there is a green square and no red. +

    +
    diff --git a/testing/web-platform/tests/css/css-text/text-indent/reference/text-indent-percentage-002-ref.html b/testing/web-platform/tests/css/css-text/text-indent/reference/text-indent-percentage-002-ref.html index fc4887a1f014..0160c34fb155 100644 --- a/testing/web-platform/tests/css/css-text/text-indent/reference/text-indent-percentage-002-ref.html +++ b/testing/web-platform/tests/css/css-text/text-indent/reference/text-indent-percentage-002-ref.html @@ -7,8 +7,14 @@ body { background: white; } div { padding-left: 50px; - font-family: Ahem; +} +span { + display: inline-block; + width: 10px; + height: 10px; + background: green; } -
    X
    +

    Test passes if there is a green square below and no red. +

    diff --git a/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-002.html b/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-002.html index 568241b893b3..2d16b5ad778c 100644 --- a/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-002.html +++ b/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-002.html @@ -9,17 +9,32 @@ -
    X
    +

    Test passes if there is a green square below and no red. +

    +
    diff --git a/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-003.html b/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-003.html index 7bbac522b374..f2067fb1f47b 100644 --- a/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-003.html +++ b/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-003.html @@ -9,17 +9,32 @@ -
    X
    +

    Test passes if there is a green square below and no red. +

    +
    diff --git a/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-004.html b/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-004.html index c800e2a80b87..5a3c3f576a56 100644 --- a/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-004.html +++ b/testing/web-platform/tests/css/css-text/text-indent/text-indent-percentage-004.html @@ -9,6 +9,7 @@ -
    X
    +

    Test passes if there is a green square below and no red. +

    +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-001-ref.html b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-001-ref.html index a81a5eacb516..10fe7800b1c4 100644 --- a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-001-ref.html +++ b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-001-ref.html @@ -1,69 +1,25 @@ - - - -CSS3 Text, text transform: full-size-kana, small kanas - + +CSS Text level 3 Test reference + - - - - -

    Test passes if both characters in each pair match. If you are missing a font glyph for a character, ignore that pair, but report which characters were ignored.

    -
    - あ あ - い い - う う - え え - お お - か か - け け - つ つ - や や - ゆ ゆ - よ よ - わ わ - ア ア - イ イ - ウ ウ - エ エ - オ オ - カ カ - ク ク - ケ ケ - シ シ - ス ス - ツ ツ - ト ト - ヌ ヌ - ハ ハ - ヒ ヒ - フ フ - ヘ ヘ - ホ ホ - ム ム - ヤ ヤ - ユ ユ - ヨ ヨ - ラ ラ - リ リ - ル ル - レ レ - ロ ロ - ワ ワ - ア ア - イ イ - ウ ウ - エ エ - オ オ - ツ ツ - ヤ ヤ - ユ ユ - ヨ ヨ -
    - - + +

    Test passes if the characters in the second column are +the same shape and size as those in the rightmost column, +not small as those in the leftmost column.
    +Any missing glyph should be ignored as long as it is missing in both the second and the rightmost column. + + +
    あ +
    い +
    う +
    え +
    お +
    か +
    け +
    つ +
    や +
    ゆ +
    よ +
    わ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-002-ref.html b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-002-ref.html index fe0b11995ebc..69591280b298 100644 --- a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-002-ref.html +++ b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-002-ref.html @@ -1,225 +1,26 @@ - - - -CSS3 Text, text transform: full-size-kana, full-size kanas - + +CSS Text level 3 Test Reference + - - - - -

    Test passes if both characters in each pair match. If you are missing a font glyph for a character, ignore that pair, but report which characters were ignored.

    -
    - ー ー - あ あ - い い - う う - え え - お お - か か - が が - き き - ぎ ぎ - く く - ぐ ぐ - け け - げ げ - こ こ - ご ご - さ さ - ざ ざ - し し - じ じ - す す - ず ず - せ せ - ぜ ぜ - そ そ - ぞ ぞ - た た - だ だ - ち ち - ぢ ぢ - つ つ - づ づ - て て - で で - と と - ど ど - な な - に に - ぬ ぬ - ね ね - の の - は は - ば ば - ぱ ぱ - ひ ひ - び び - ぴ ぴ - ふ ふ - ぶ ぶ - ぷ ぷ - へ へ - べ べ - ぺ ぺ - ほ ほ - ぼ ぼ - ぽ ぽ - ま ま - み み - む む - め め - も も - や や - ゆ ゆ - よ よ - ら ら - り り - る る - れ れ - ろ ろ - わ わ - ゐ ゐ - ゑ ゑ - を を - ん ん - ア ア - イ イ - ウ ウ - エ エ - オ オ - カ カ - ガ ガ - キ キ - ギ ギ - ク ク - グ グ - ケ ケ - ゲ ゲ - コ コ - ゴ ゴ - サ サ - ザ ザ - シ シ - ジ ジ - ス ス - ズ ズ - セ セ - ゼ ゼ - ソ ソ - ゾ ゾ - タ タ - ダ ダ - チ チ - ヂ ヂ - ツ ツ - ヅ ヅ - テ テ - デ デ - ト ト - ド ド - ナ ナ - ニ ニ - ヌ ヌ - ネ ネ - ノ ノ - ハ ハ - バ バ - パ パ - ヒ ヒ - ビ ビ - ピ ピ - フ フ - ブ ブ - プ プ - ヘ ヘ - ベ ベ - ペ ペ - ホ ホ - ボ ボ - ポ ポ - マ マ - ミ ミ - ム ム - メ メ - モ モ - ヤ ヤ - ユ ユ - ヨ ヨ - ラ ラ - リ リ - ル ル - レ レ - ロ ロ - ワ ワ - ヰ ヰ - ヱ ヱ - ヲ ヲ - ン ン - ヴ ヴ - ゛ ゛ - ゜ ゜ - ⦆ ⦆ - 。 。 - 「 「 - 」 」 - 、 、 - ・ ・ - ヲ ヲ - ー ー - ア ア - イ イ - ウ ウ - エ エ - オ オ - カ カ - キ キ - ク ク - ケ ケ - コ コ - サ サ - シ シ - ス ス - セ セ - ソ ソ - タ タ - チ チ - ツ ツ - テ テ - ト ト - ナ ナ - ニ ニ - ヌ ヌ - ネ ネ - ノ ノ - ハ ハ - ヒ ヒ - フ フ - ヘ ヘ - ホ ホ - マ マ - ミ ミ - ム ム - メ メ - モ モ - ヤ ヤ - ユ ユ - ヨ ヨ - ラ ラ - リ リ - ル ル - レ レ - ロ ロ - ワ ワ - ン ン - ゙ ゙ - ゚ ゚ -
    - - + +

    Test passes if the characters in the second column are +the same shape and size as those in the rightmost column, +not small as those in the leftmost column.
    +Any missing glyph should be ignored as long as it is missing in both the second and the rightmost column. + + +
    ア +
    イ +
    ウ +
    エ +
    オ +
    カ +
    ク +
    ケ +
    シ +
    ス +
    ツ +
    ト +
    ヌ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-003-ref.html b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-003-ref.html new file mode 100644 index 000000000000..c2a8a1e76bd5 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-003-ref.html @@ -0,0 +1,28 @@ + + +CSS Text level 3 Test Reference + + + +

    Test passes if the characters in the second column are +the same shape and size as those in the rightmost column, +not small as those in the leftmost column.
    +Any missing glyph should be ignored as long as it is missing in both the second and the rightmost column. + + +
    ハ +
    ヒ +
    フ +
    ヘ +
    ホ +
    ム +
    ヤ +
    ユ +
    ヨ +
    ラ +
    リ +
    ル +
    レ +
    ロ +
    ワ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-004-ref.html b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-004-ref.html new file mode 100644 index 000000000000..4f23628af62b --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-004-ref.html @@ -0,0 +1,22 @@ + + +CSS Text level 3 Test Reference + + + +

    Test passes if the characters in the second column are +the same shape and size as those in the rightmost column, +not small as those in the leftmost column.
    +Any missing glyph should be ignored as long as it is missing in both the second and the rightmost column. + + +
    ア +
    イ +
    ウ +
    エ +
    オ +
    ツ +
    ヤ +
    ユ +
    ヨ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-005-ref.html b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-005-ref.html new file mode 100644 index 000000000000..adedc8dc7be4 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-005-ref.html @@ -0,0 +1,90 @@ + + +CSS3 test reference + + + + +

    Test passes if both characters in each pair are the same shape and size.
    +Any missing glyph should be ignored +as long as it is missing for both the first and second characters in a pair. + +

    + ー ー + あ あ + い い + う う + え え + お お + か か + が が + き き + ぎ ぎ + く く + ぐ ぐ + け け + げ げ + こ こ + ご ご + さ さ + ざ ざ + し し + じ じ + す す + ず ず + せ せ + ぜ ぜ + そ そ + ぞ ぞ + た た + だ だ + ち ち + ぢ ぢ + つ つ + づ づ + て て + で で + と と + ど ど + な な + に に + ぬ ぬ + ね ね + の の + は は + ば ば + ぱ ぱ + ひ ひ + び び + ぴ ぴ + ふ ふ + ぶ ぶ + ぷ ぷ + へ へ + べ べ + ぺ ぺ + ほ ほ + ぼ ぼ + ぽ ぽ + ま ま + み み + む む + め め + も も + や や + ゆ ゆ + よ よ + ら ら + り り + る る + れ れ + ろ ろ + わ わ + ゐ ゐ + ゑ ゑ + を を + ん ん +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-006-ref.html b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-006-ref.html new file mode 100644 index 000000000000..f806093ab95e --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-006-ref.html @@ -0,0 +1,92 @@ + + +CSS3 test reference + + + + +

    Test passes if both characters in each pair are the same shape and size.
    +Any missing glyph should be ignored +as long as it is missing for both the first and second characters in a pair. + +

    + ア ア + イ イ + ウ ウ + エ エ + オ オ + カ カ + ガ ガ + キ キ + ギ ギ + ク ク + グ グ + ケ ケ + ゲ ゲ + コ コ + ゴ ゴ + サ サ + ザ ザ + シ シ + ジ ジ + ス ス + ズ ズ + セ セ + ゼ ゼ + ソ ソ + ゾ ゾ + タ タ + ダ ダ + チ チ + ヂ ヂ + ツ ツ + ヅ ヅ + テ テ + デ デ + ト ト + ド ド + ナ ナ + ニ ニ + ヌ ヌ + ネ ネ + ノ ノ + ハ ハ + バ バ + パ パ + ヒ ヒ + ビ ビ + ピ ピ + フ フ + ブ ブ + プ プ + ヘ ヘ + ベ ベ + ペ ペ + ホ ホ + ボ ボ + ポ ポ + マ マ + ミ ミ + ム ム + メ メ + モ モ + ヤ ヤ + ユ ユ + ヨ ヨ + ラ ラ + リ リ + ル ル + レ レ + ロ ロ + ワ ワ + ヰ ヰ + ヱ ヱ + ヲ ヲ + ン ン + ヴ ヴ + ゛ ゛ + ゜ ゜ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-007-ref.html b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-007-ref.html new file mode 100644 index 000000000000..b07e9197fdaf --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-full-size-kana-007-ref.html @@ -0,0 +1,66 @@ + + +CSS3 test reference + + + + +

    Test passes if both characters in each pair are the same shape and size.
    +Any missing glyph should be ignored +as long as it is missing for both the first and second characters in a pair. + +

    + ・ ・ + ヲ ヲ + ー ー + ア ア + イ イ + ウ ウ + エ エ + オ オ + カ カ + キ キ + ク ク + ケ ケ + コ コ + サ サ + シ シ + ス ス + セ セ + ソ ソ + タ タ + チ チ + ツ ツ + テ テ + ト ト + ナ ナ + ニ ニ + ヌ ヌ + ネ ネ + ノ ノ + ハ ハ + ヒ ヒ + フ フ + ヘ ヘ + ホ ホ + マ マ + ミ ミ + ム ム + メ メ + モ モ + ヤ ヤ + ユ ユ + ヨ ヨ + ラ ラ + リ リ + ル ル + レ レ + ロ ロ + ワ ワ + ン ン + ゙ ゙ + ゚ ゚ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-shaping-001-ref.html b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-shaping-001-ref.html new file mode 100644 index 000000000000..693007e896a6 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/reference/text-transform-shaping-001-ref.html @@ -0,0 +1,15 @@ + + +CSS Text Test reference + + + +

    Test passes if there are two identical strings below. Pay attention to the right-most character. +

    عائلة
    +
    عائلة
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-copy-paste-001-manual.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-copy-paste-001-manual.html new file mode 100644 index 000000000000..d80901cb2a8d --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-copy-paste-001-manual.html @@ -0,0 +1,31 @@ + + +CSS Text 3 test: effects of text-transform on plain text copy&paste + + + + + + + +

    Copy the content of the blue box, then paste it in the orange box. +

    The test passes if the result is in lowercase. + +

    there is no need to shout
    + diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-001.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-001.html index 70584ef38935..8c532ff7238a 100644 --- a/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-001.html +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-001.html @@ -1,71 +1,33 @@ - - - -CSS3 Text, text transform: full-size-kana, small kanas - + +CSS Text level 3 Test: Hiragana and text-transform: full-size-kana + - + - - - -

    Test passes if both characters in each pair match. If you are missing a font glyph for a character, ignore that pair, but report which characters were ignored.

    -
    - ぁ あ - ぃ い - ぅ う - ぇ え - ぉ お - ゕ か - ゖ け - っ つ - ゃ や - ゅ ゆ - ょ よ - ゎ わ - ァ ア - ィ イ - ゥ ウ - ェ エ - ォ オ - ヵ カ - ㇰ ク - ヶ ケ - ㇱ シ - ㇲ ス - ッ ツ - ㇳ ト - ㇴ ヌ - ㇵ ハ - ㇶ ヒ - ㇷ フ - ㇸ ヘ - ㇹ ホ - ㇺ ム - ャ ヤ - ュ ユ - ョ ヨ - ㇻ ラ - ㇼ リ - ㇽ ル - ㇾ レ - ㇿ ロ - ヮ ワ - ァ ア - ィ イ - ゥ ウ - ェ エ - ォ オ - ッ ツ - ャ ヤ - ュ ユ - ョ ヨ -
    - - + +

    Test passes if the characters in the second column are +the same shape and size as those in the rightmost column, +not small as those in the leftmost column.
    +Any missing glyph should be ignored as long as it is missing in both the second and the rightmost column. + + +
    あ +
    い +
    う +
    え +
    お +
    か +
    け +
    つ +
    や +
    ゆ +
    よ +
    わ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-002.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-002.html index f77e09cc25e4..1aa03aa2f8bd 100644 --- a/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-002.html +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-002.html @@ -1,227 +1,34 @@ - - - -CSS3 Text, text transform: full-size-kana, full-size kanas - + +CSS Text level 3 Test: Katakana and text-transform: full-size-kana + - + - - - -

    Test passes if both characters in each pair match. If you are missing a font glyph for a character, ignore that pair, but report which characters were ignored.

    -
    - ー ー - あ あ - い い - う う - え え - お お - か か - が が - き き - ぎ ぎ - く く - ぐ ぐ - け け - げ げ - こ こ - ご ご - さ さ - ざ ざ - し し - じ じ - す す - ず ず - せ せ - ぜ ぜ - そ そ - ぞ ぞ - た た - だ だ - ち ち - ぢ ぢ - つ つ - づ づ - て て - で で - と と - ど ど - な な - に に - ぬ ぬ - ね ね - の の - は は - ば ば - ぱ ぱ - ひ ひ - び び - ぴ ぴ - ふ ふ - ぶ ぶ - ぷ ぷ - へ へ - べ べ - ぺ ぺ - ほ ほ - ぼ ぼ - ぽ ぽ - ま ま - み み - む む - め め - も も - や や - ゆ ゆ - よ よ - ら ら - り り - る る - れ れ - ろ ろ - わ わ - ゐ ゐ - ゑ ゑ - を を - ん ん - ア ア - イ イ - ウ ウ - エ エ - オ オ - カ カ - ガ ガ - キ キ - ギ ギ - ク ク - グ グ - ケ ケ - ゲ ゲ - コ コ - ゴ ゴ - サ サ - ザ ザ - シ シ - ジ ジ - ス ス - ズ ズ - セ セ - ゼ ゼ - ソ ソ - ゾ ゾ - タ タ - ダ ダ - チ チ - ヂ ヂ - ツ ツ - ヅ ヅ - テ テ - デ デ - ト ト - ド ド - ナ ナ - ニ ニ - ヌ ヌ - ネ ネ - ノ ノ - ハ ハ - バ バ - パ パ - ヒ ヒ - ビ ビ - ピ ピ - フ フ - ブ ブ - プ プ - ヘ ヘ - ベ ベ - ペ ペ - ホ ホ - ボ ボ - ポ ポ - マ マ - ミ ミ - ム ム - メ メ - モ モ - ヤ ヤ - ユ ユ - ヨ ヨ - ラ ラ - リ リ - ル ル - レ レ - ロ ロ - ワ ワ - ヰ ヰ - ヱ ヱ - ヲ ヲ - ン ン - ヴ ヴ - ゛ ゛ - ゜ ゜ - ⦆ ⦆ - 。 。 - 「 「 - 」 」 - 、 、 - ・ ・ - ヲ ヲ - ー ー - ア ア - イ イ - ウ ウ - エ エ - オ オ - カ カ - キ キ - ク ク - ケ ケ - コ コ - サ サ - シ シ - ス ス - セ セ - ソ ソ - タ タ - チ チ - ツ ツ - テ テ - ト ト - ナ ナ - ニ ニ - ヌ ヌ - ネ ネ - ノ ノ - ハ ハ - ヒ ヒ - フ フ - ヘ ヘ - ホ ホ - マ マ - ミ ミ - ム ム - メ メ - モ モ - ヤ ヤ - ユ ユ - ヨ ヨ - ラ ラ - リ リ - ル ル - レ レ - ロ ロ - ワ ワ - ン ン - ゙ ゙ - ゚ ゚ -
    - - + +

    Test passes if the characters in the second column are +the same shape and size as those in the rightmost column, +not small as those in the leftmost column.
    +Any missing glyph should be ignored as long as it is missing in both the second and the rightmost column. + + +
    ア +
    イ +
    ウ +
    エ +
    オ +
    カ +
    ク +
    ケ +
    シ +
    ス +
    ツ +
    ト +
    ヌ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-003.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-003.html new file mode 100644 index 000000000000..49938c218590 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-003.html @@ -0,0 +1,36 @@ + + +CSS Text level 3 Test: Katakana and text-transform: full-size-kana + + + + + + + +

    Test passes if the characters in the second column are +the same shape and size as those in the rightmost column, +not small as those in the leftmost column.
    +Any missing glyph should be ignored as long as it is missing in both the second and the rightmost column. + + +
    ハ +
    ヒ +
    フ +
    ヘ +
    ホ +
    ム +
    ヤ +
    ユ +
    ヨ +
    ラ +
    リ +
    ル +
    レ +
    ロ +
    ワ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-004.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-004.html new file mode 100644 index 000000000000..1e6e690d73b0 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-004.html @@ -0,0 +1,30 @@ + + +CSS Text level 3 Test: half-width Katakana and text-transform: full-size-kana + + + + + + + +

    Test passes if the characters in the second column are +the same shape and size as those in the rightmost column, +not small as those in the leftmost column.
    +Any missing glyph should be ignored as long as it is missing in both the second and the rightmost column. + + +
    ア +
    イ +
    ウ +
    エ +
    オ +
    ツ +
    ヤ +
    ユ +
    ヨ +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-005.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-005.html new file mode 100644 index 000000000000..32cadd3138a8 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-005.html @@ -0,0 +1,95 @@ + + +CSS3 Text, text transform: full-size-kana, full-size kanas, hiragana + + + + + + + +

    Test passes if both characters in each pair are the same shape and size.
    +Any missing glyph should be ignored +as long as it is missing for both the first and second characters in a pair. + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-006.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-006.html new file mode 100644 index 000000000000..b9e3f19b4f35 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-006.html @@ -0,0 +1,97 @@ + + +CSS3 Text, text transform: full-size-kana, full-size kanas, katakana + + + + + + + +

    Test passes if both characters in each pair are the same shape and size.
    +Any missing glyph should be ignored +as long as it is missing for both the first and second characters in a pair. + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-007.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-007.html new file mode 100644 index 000000000000..5ea01050887b --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-full-size-kana-007.html @@ -0,0 +1,71 @@ + + +CSS3 Text, text transform: full-size-kana, full-size kanas, half-width katakana + + + + + + + +

    Test passes if both characters in each pair are the same shape and size.
    +Any missing glyph should be ignored +as long as it is missing for both the first and second characters in a pair. + +

    + + + + + + + + + + + + + + + + + + ソ ソ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-shaping-001.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-shaping-001.html new file mode 100644 index 000000000000..fa0a04cd222e --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-shaping-001.html @@ -0,0 +1,23 @@ + + +CSS Text level 3 Test: text-transform:capitalize and text-shaping + + + + + + + +

    Test passes if there are two identical strings below. Pay attention to the right-most character. +

    عائلة
    +
    عائلة
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-shaping-002.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-shaping-002.html new file mode 100644 index 000000000000..6245135e0429 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-shaping-002.html @@ -0,0 +1,23 @@ + + +CSS Text level 3 Test: text-transform:uppercase and text-shaping + + + + + + + +

    Test passes if there are two identical strings below. Pay attention to the right-most character. +

    عائلة
    +
    عائلة
    diff --git a/testing/web-platform/tests/css/css-text/text-transform/text-transform-shaping-003.html b/testing/web-platform/tests/css/css-text/text-transform/text-transform-shaping-003.html new file mode 100644 index 000000000000..54650a9f19cc --- /dev/null +++ b/testing/web-platform/tests/css/css-text/text-transform/text-transform-shaping-003.html @@ -0,0 +1,23 @@ + + +CSS Text level 3 Test: text-transform:lowercase and text-shaping + + + + + + + +

    Test passes if there are two identical strings below. Pay attention to the right-most character. +

    عائلة
    +
    عائلة
    diff --git a/testing/web-platform/tests/css/css-text/white-space/break-spaces-004.html b/testing/web-platform/tests/css/css-text/white-space/break-spaces-004.html new file mode 100644 index 000000000000..e2c043ec42ec --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/break-spaces-004.html @@ -0,0 +1,35 @@ + + +CSS Text Test: white-space: break-spaces + + + + + + + + + + +

    Test passes if there is a filled green square and no red.

    +
    XX
    XX
    +
    XX
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/break-spaces-005.html b/testing/web-platform/tests/css/css-text/white-space/break-spaces-005.html new file mode 100644 index 000000000000..d0dafd38c047 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/break-spaces-005.html @@ -0,0 +1,33 @@ + + +CSS Text Test: white-space - break-spaces + + + + + + + + +

    Test passes if there is a filled green square and no red.

    +
    XXXXXXXXXX
    XXXXXXXXXX
    XXXXXXXXXX
    XXXXXXXXXX
    XXXXXXXXXX
    XXXXXXXXXX
    XXXXXXXXXX
    XXXXXXXXXX
    XXXXXXXXXX
    XXXXXXXXXX
    +
    XXXX XXXX
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/break-spaces-006.html b/testing/web-platform/tests/css/css-text/white-space/break-spaces-006.html new file mode 100644 index 000000000000..5f9d605866d7 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/break-spaces-006.html @@ -0,0 +1,35 @@ + + +CSS Text Test: white-space - break-spaces + + + + + + + + + + +

    Test passes if there is a filled green square and no red.

    +
    XXXX
    XXXX
    XXXX
    XXXX
    +
    XXXX XXX
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/break-spaces-007.html b/testing/web-platform/tests/css/css-text/white-space/break-spaces-007.html new file mode 100644 index 000000000000..77213618bd97 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/break-spaces-007.html @@ -0,0 +1,34 @@ + + +CSS Text Test: white-space - break-spaces + + + + + + + + + + +

    Test passes if there is a filled green square and no red.

    +
    XXXX
    XXXX
    XXXX
    XXXX
    +
    XXXX XXX
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/break-spaces-008.html b/testing/web-platform/tests/css/css-text/white-space/break-spaces-008.html new file mode 100644 index 000000000000..d183cac942f7 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/break-spaces-008.html @@ -0,0 +1,35 @@ + + +CSS Text Test: white-space - break-spaces + + + + + + + + + + +

    Test passes if there is a filled green square and no red.

    +
    XXXX
    XXXX
    XXXX
    XXXX
    +
    XXXX XX
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/pre-wrap-012.html b/testing/web-platform/tests/css/css-text/white-space/pre-wrap-012.html index 2d322aaf5713..03f9d98a5a53 100644 --- a/testing/web-platform/tests/css/css-text/white-space/pre-wrap-012.html +++ b/testing/web-platform/tests/css/css-text/white-space/pre-wrap-012.html @@ -3,8 +3,8 @@ CSS Text level 3 Test: preserved white space at the end of and white-space:pre-wrap with right alignement - - + + -

    Test passes if there is a filled green square and no red.

    -
    X​X -X​X
    +

    Test passes if there is a filled green rectangle and no red.

    +
    X X + X
    diff --git a/testing/web-platform/tests/css/css-text/white-space/pre-wrap-016.html b/testing/web-platform/tests/css/css-text/white-space/pre-wrap-016.html new file mode 100644 index 000000000000..5f66a7be92b3 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/pre-wrap-016.html @@ -0,0 +1,38 @@ + + +CSS Text Test: white-space: pre-wrap + + + + + + + + +

    Test passes if there is a filled green square and no red.

    +

    XX
    +
    XX
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-012-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-012-ref.html new file mode 100644 index 000000000000..24c64bf6c19e --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-012-ref.html @@ -0,0 +1,20 @@ + + +CSS Text level 3 Test reference + + + +

    Test passes if there is a filled green square and no red.

    +
    XX +XX
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-013-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-013-ref.html new file mode 100644 index 000000000000..f9382e529b6f --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-013-ref.html @@ -0,0 +1,20 @@ + + +CSS Text level 3 Test reference + + + +

    Test passes if there is a filled green square and no red.

    +
    XX +XX
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-014-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-014-ref.html new file mode 100644 index 000000000000..8f825c54fdd4 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/reference/pre-wrap-014-ref.html @@ -0,0 +1,17 @@ + + +CSS Text level 3 Test reference + + + +

    Test passes if there is a filled green rectangle and no red.

    +
    XXXX
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-break-spaces-005-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-break-spaces-005-ref.html new file mode 100644 index 000000000000..3247ae5a881e --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-break-spaces-005-ref.html @@ -0,0 +1,16 @@ + + +CSS Text Reference File + + + +

    Test passes if there is a filled green square and no red.

    +
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html new file mode 100644 index 000000000000..1f1761d5a3de --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html @@ -0,0 +1,15 @@ + + +test reference + + + +

    Test passes if there is a green rectangle below and no red. +

    XS
    S
    XS
    S
    diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html new file mode 100644 index 000000000000..a97a089153d9 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html @@ -0,0 +1,19 @@ + + +test reference + + + +

    Test passes if there is a single blue rectangle below. +

    +XXX
    +XXX +
    diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html new file mode 100644 index 000000000000..2ead6c8c7ae7 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html @@ -0,0 +1,14 @@ + + +test reference + + + +

    Test passes if there is a green rectangle below and no red. +

    X
    X
    diff --git a/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html new file mode 100644 index 000000000000..6b2d4b49d53a --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html @@ -0,0 +1,22 @@ + + +test reference + + + +

    Test passes if there is a single blue rectangle below. +

    + + +
    diff --git a/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-003.html b/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-003.html new file mode 100644 index 000000000000..24cf10defc2e --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-003.html @@ -0,0 +1,25 @@ + + +CSS Text level 3 Test: the nearest tab stop is more than 0.5 ch away, white-space:pre-wrap + + + + + + + +

    Test passes if the 4 letters bellow are vertically aligned. +

    P
    +
    A
    +
    S
    +
    S
    diff --git a/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-004.html b/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-004.html new file mode 100644 index 000000000000..3949c55a44a8 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-004.html @@ -0,0 +1,25 @@ + + +CSS Text level 3 Test: the nearest tab stop is less than 0.5 ch away, white-space:pre-wrap + + + + + + + +

    Test passes if the 4 letters bellow are vertically aligned. +

    P
    +
    A
    +
    S
    +
    S
    diff --git a/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-005.html b/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-005.html new file mode 100644 index 000000000000..f82e5e517447 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-005.html @@ -0,0 +1,25 @@ + + +CSS Text level 3 Test: the nearest tab stop is more than 0.5 ch away, white-space:break-spaces + + + + + + + +

    Test passes if the 4 letters bellow are vertically aligned. +

    P
    +
    A
    +
    S
    +
    S
    diff --git a/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-006.html b/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-006.html new file mode 100644 index 000000000000..7d1299124d12 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/tab-stop-threshold-006.html @@ -0,0 +1,25 @@ + + +CSS Text level 3 Test: the nearest tab stop is less than 0.5 ch away, white-space:break-spaces + + + + + + + +

    Test passes if the 4 letters bellow are vertically aligned. +

    P
    +
    A
    +
    S
    +
    S
    diff --git a/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-001.html b/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-001.html new file mode 100644 index 000000000000..22514ed669f0 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-001.html @@ -0,0 +1,46 @@ + + +CSS Text Test: min-content sizing and white-space: break-spaces + + + + + + + + +

    Test passes if there is a green rectangle below and no red. +

    XS
    S
    XS
    S
    +
    + + +
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-002.html b/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-002.html new file mode 100644 index 000000000000..ce222d898798 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-002.html @@ -0,0 +1,39 @@ + + +CSS Text Test: max-content sizing and white-space:break-spaces + + + + + + + + +

    Test passes if there is a single blue rectangle below. +

    + + +
    diff --git a/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-003.html b/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-003.html new file mode 100644 index 000000000000..50c1d1aca6d5 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-003.html @@ -0,0 +1,38 @@ + + +CSS Text Test: min-content sizing and white-space:pre-wrap + + + + + + + + +

    Test passes if there is a green rectangle below and no red. +

    X
    X
    +
    + + +
    + diff --git a/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-004.html b/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-004.html new file mode 100644 index 000000000000..21c0bd66cb54 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/white-space/white-space-intrinsic-size-004.html @@ -0,0 +1,31 @@ + + +CSS Text Test: max-content sizing and white-space: pre-wrap + + + + + + + + +

    Test passes if there is a single blue rectangle below. +

    + + +
    diff --git a/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-010.html b/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-010.html index 7d3bc056d822..be46d29d7ddf 100644 --- a/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-010.html +++ b/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-010.html @@ -1,8 +1,9 @@ -CSS Text Test: overflow-wrap: break-word +CSS Text Test: word-break: break-all + diff --git a/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-011.html b/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-011.html index 531c68d8cea3..fade439dd9a9 100644 --- a/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-011.html +++ b/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-011.html @@ -1,8 +1,9 @@ -CSS Text Test: overflow-wrap: break-word +CSS Text Test: word-break: break-all + diff --git a/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-012.html b/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-012.html new file mode 100644 index 000000000000..cd3d44056ec9 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-012.html @@ -0,0 +1,38 @@ + + +CSS Text Test: overflow-wrap: break-word + + + + + + + + +

    Test passes if there is a filled green square and no red.

    +
    XXXX
    X
    +
    XXXXX
    + diff --git a/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-013.html b/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-013.html new file mode 100644 index 000000000000..85dce08b6418 --- /dev/null +++ b/testing/web-platform/tests/css/css-text/word-break/word-break-break-all-013.html @@ -0,0 +1,37 @@ + + +CSS Text Test: word-break: break-all + + + + + + + + +

    Test passes if there is a filled green square and no red.

    +
    X
    X
    X
    +
    XX
    + diff --git a/testing/web-platform/tests/css/css-transforms/animation/list-interpolation.html b/testing/web-platform/tests/css/css-transforms/animation/list-interpolation.html index 90cdebbb6cdb..af221e5feaee 100644 --- a/testing/web-platform/tests/css/css-transforms/animation/list-interpolation.html +++ b/testing/web-platform/tests/css/css-transforms/animation/list-interpolation.html @@ -135,6 +135,56 @@ test_interpolation( [{ at: 0.25, expect: 'matrix(2, 0, 0, 2, 100, 0)' }], 'Complete mismatch including length' ); + +test_interpolation( + { + property: 'transform', + from: 'rotate(0deg) scaleX(1)', + to: 'rotate(720deg) translateX(0px) scaleX(2)' + }, + [{at: 0.25, expect: 'rotate(180deg) matrix(1.25, 0, 0, 1, 0, 0)'}], + 'Mismatched lengths (from is shorter), partial match' +); + +test_interpolation( + { + property: 'transform', + from: 'rotate(720deg) translateX(0px) scaleX(2)', + to: 'rotate(0deg) scaleX(1)' + }, + [{at: 0.25, expect: 'rotate(540deg) matrix(1.75, 0, 0, 1, 0, 0)'}], + 'Mismatched lengths (to is shorter), partial match' +); + +test_interpolation( + { + property: 'transform', + from: 'scaleX(-3) scaleY(2)', + to: 'scaleY(-3) translateX(0px) scaleX(2)' + }, + [{at: 0.25, expect: 'scale(-2, 0) matrix(1.25, 0, 0, 1.75, 0, 0)'}], + 'Mismatched lengths (from is shorter), partial match on primitive' +); + +test_interpolation( + { + property: 'transform', + from: 'scaleY(-3) translateX(0px) scaleX(2)', + to: 'scaleX(-3) scaleY(2)' + }, + [{at: 0.25, expect: 'scale(0, -2) matrix(1.75, 0, 0, 1.25, 0, 0)'}], + 'Mismatched lengths (to is shorter), partial match on primitive' +); + +test_interpolation( + { + property: 'transform', + from: 'scaleY(-3) translateX(0px)', + to: 'scaleX(-3) scaleY(2)' + }, + [{at: 0.25, expect: 'scale(0, -2) matrix(1, 0, 0, 1.25, 0, 0)'}], + 'Common prefix on primitive' +); diff --git a/testing/web-platform/tests/css/css-transforms/size-change-under-backface-visibility-hidden-ref.html b/testing/web-platform/tests/css/css-transforms/size-change-under-backface-visibility-hidden-ref.html new file mode 100644 index 000000000000..e9362c357454 --- /dev/null +++ b/testing/web-platform/tests/css/css-transforms/size-change-under-backface-visibility-hidden-ref.html @@ -0,0 +1,9 @@ + +CSS Test + +Passes if it shows a green 200x200 square. +
    +
    +
    +
    +
    diff --git a/testing/web-platform/tests/css/css-transforms/size-change-under-backface-visibility-hidden.html b/testing/web-platform/tests/css/css-transforms/size-change-under-backface-visibility-hidden.html new file mode 100644 index 000000000000..1543eeb3da3e --- /dev/null +++ b/testing/web-platform/tests/css/css-transforms/size-change-under-backface-visibility-hidden.html @@ -0,0 +1,22 @@ + + + CSS Test: Test for re-paint after resizing an element underneath a backface-visibility hidden element + + + + + Passes if it shows a green 200x200 square. +
    +
    +
    +
    +
    + + diff --git a/testing/web-platform/tests/css/css-transforms/transform-origin-014.html b/testing/web-platform/tests/css/css-transforms/transform-origin-014.html new file mode 100644 index 000000000000..c350166430e6 --- /dev/null +++ b/testing/web-platform/tests/css/css-transforms/transform-origin-014.html @@ -0,0 +1,50 @@ + +CSS Transforms: 'transform-origin' resolved values in SVG + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-transforms/transform-percent-009.html b/testing/web-platform/tests/css/css-transforms/transform-percent-009.html new file mode 100644 index 000000000000..c6d64be3c36f --- /dev/null +++ b/testing/web-platform/tests/css/css-transforms/transform-percent-009.html @@ -0,0 +1,50 @@ + +CSS Transforms: 'transform' resolved percentage values in SVG + + + + + + + + + + + + + + + diff --git a/testing/web-platform/tests/css/css-ui/appearance-cssom-001.html b/testing/web-platform/tests/css/css-ui/appearance-cssom-001.html new file mode 100644 index 000000000000..2d439ba615f3 --- /dev/null +++ b/testing/web-platform/tests/css/css-ui/appearance-cssom-001.html @@ -0,0 +1,233 @@ + +CSS Basic User Interface Test: appearance CSSOM + + + + + + diff --git a/testing/web-platform/tests/css/css-ui/inheritance.html b/testing/web-platform/tests/css/css-ui/inheritance.html index 912e9f3228f5..6315316d8224 100644 --- a/testing/web-platform/tests/css/css-ui/inheritance.html +++ b/testing/web-platform/tests/css/css-ui/inheritance.html @@ -19,24 +19,32 @@ #reference { border-style: dotted; /* Avoid border-top-width computed style 0 */ border-top-width: medium; + color: lime; + background: blue; } #container, #target { outline-style: dotted; /* Avoid outline-width computed style 0 */ + color: lime; + background: blue; } + + + +
    + + diff --git a/testing/web-platform/tests/css/css-values/calc-unit-analysis.html b/testing/web-platform/tests/css/css-values/calc-unit-analysis.html index 20eab22bf7cd..7508a3924162 100644 --- a/testing/web-platform/tests/css/css-values/calc-unit-analysis.html +++ b/testing/web-platform/tests/css/css-values/calc-unit-analysis.html @@ -10,7 +10,7 @@ - +
    diff --git a/testing/web-platform/tests/css/css-values/viewport-relative-lengths-scaled-viewport.html b/testing/web-platform/tests/css/css-values/viewport-relative-lengths-scaled-viewport.html index a901000394d3..dba2af8fa07b 100644 --- a/testing/web-platform/tests/css/css-values/viewport-relative-lengths-scaled-viewport.html +++ b/testing/web-platform/tests/css/css-values/viewport-relative-lengths-scaled-viewport.html @@ -3,6 +3,7 @@ CSS Values and Units Test: Viewport units in scaled viewport + diff --git a/testing/web-platform/tests/css/css-values/viewport-unit-011.html b/testing/web-platform/tests/css/css-values/viewport-unit-011.html new file mode 100644 index 000000000000..055f3d1fd2d7 --- /dev/null +++ b/testing/web-platform/tests/css/css-values/viewport-unit-011.html @@ -0,0 +1,29 @@ + + + + + CSS Values and Units Test: vh unit and vw unit (basic) + + + + + + + + +
    +
    \ No newline at end of file diff --git a/testing/web-platform/tests/css/css-values/viewport-units-css2-001.html b/testing/web-platform/tests/css/css-values/viewport-units-css2-001.html index f0feb6d99353..c51237dd8a07 100644 --- a/testing/web-platform/tests/css/css-values/viewport-units-css2-001.html +++ b/testing/web-platform/tests/css/css-values/viewport-units-css2-001.html @@ -2,6 +2,7 @@ CSS Values and Units Test: Checks viewport units against CSS 2.1 properties and the CSSOM + diff --git a/testing/web-platform/tests/css/css-text/astral-bidi/adlam-anti-ref.html b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/adlam-anti-ref.html similarity index 100% rename from testing/web-platform/tests/css/css-text/astral-bidi/adlam-anti-ref.html rename to testing/web-platform/tests/css/css-writing-modes/astral-bidi/adlam-anti-ref.html diff --git a/testing/web-platform/tests/css/css-text/astral-bidi/adlam-ref.html b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/adlam-ref.html similarity index 100% rename from testing/web-platform/tests/css/css-text/astral-bidi/adlam-ref.html rename to testing/web-platform/tests/css/css-writing-modes/astral-bidi/adlam-ref.html diff --git a/testing/web-platform/tests/css/css-text/astral-bidi/adlam.html b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/adlam.html similarity index 84% rename from testing/web-platform/tests/css/css-text/astral-bidi/adlam.html rename to testing/web-platform/tests/css/css-writing-modes/astral-bidi/adlam.html index 613aa3ce7936..8b3ba71c2564 100644 --- a/testing/web-platform/tests/css/css-text/astral-bidi/adlam.html +++ b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/adlam.html @@ -6,6 +6,7 @@ + diff --git a/testing/web-platform/tests/css/css-text/astral-bidi/cypriot-anti-ref.html b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/cypriot-anti-ref.html similarity index 100% rename from testing/web-platform/tests/css/css-text/astral-bidi/cypriot-anti-ref.html rename to testing/web-platform/tests/css/css-writing-modes/astral-bidi/cypriot-anti-ref.html diff --git a/testing/web-platform/tests/css/css-text/astral-bidi/cypriot-ref.html b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/cypriot-ref.html similarity index 100% rename from testing/web-platform/tests/css/css-text/astral-bidi/cypriot-ref.html rename to testing/web-platform/tests/css/css-writing-modes/astral-bidi/cypriot-ref.html diff --git a/testing/web-platform/tests/css/css-text/astral-bidi/cypriot.html b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/cypriot.html similarity index 84% rename from testing/web-platform/tests/css/css-text/astral-bidi/cypriot.html rename to testing/web-platform/tests/css/css-writing-modes/astral-bidi/cypriot.html index e8dcbceea240..0967eec5767b 100644 --- a/testing/web-platform/tests/css/css-text/astral-bidi/cypriot.html +++ b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/cypriot.html @@ -6,6 +6,7 @@ + diff --git a/testing/web-platform/tests/css/css-text/astral-bidi/support/adlam.css b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/support/adlam.css similarity index 100% rename from testing/web-platform/tests/css/css-text/astral-bidi/support/adlam.css rename to testing/web-platform/tests/css/css-writing-modes/astral-bidi/support/adlam.css diff --git a/testing/web-platform/tests/css/css-text/astral-bidi/support/cypriot.css b/testing/web-platform/tests/css/css-writing-modes/astral-bidi/support/cypriot.css similarity index 100% rename from testing/web-platform/tests/css/css-text/astral-bidi/support/cypriot.css rename to testing/web-platform/tests/css/css-writing-modes/astral-bidi/support/cypriot.css diff --git a/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable.html b/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable.html index 7df1820c0437..e3083d283f35 100644 --- a/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable.html +++ b/testing/web-platform/tests/css/cssom/CSSStyleSheet-constructable.html @@ -501,15 +501,18 @@ test(() => { span.shadowRoot.adoptedStyleSheets = [sheet]; assert_equals(getComputedStyle(shadowDiv).color, "rgb(255, 0, 0)"); + document.adoptNode(span); + assert_equals(span.shadowRoot.adoptedStyleSheets.length, 1); + assert_equals(span.shadowRoot.adoptedStyleSheets[0], sheet); + const iframe = document.createElement("iframe"); document.body.appendChild(iframe); iframe.contentDocument.adoptNode(span); iframe.contentDocument.body.appendChild(span); assert_not_equals(span.shadowRoot, null); - assert_equals(span.shadowRoot.adoptedStyleSheets.length, 1); - assert_equals(span.shadowRoot.adoptedStyleSheets[0], sheet); + assert_equals(span.shadowRoot.adoptedStyleSheets.length, 0); assert_equals(getComputedStyle(shadowDiv).color, "rgb(0, 0, 0)"); -}, 'Adopting a shadow host will move adoptedStyleSheets but it is not applied'); +}, 'Adopting a shadow host will empty adoptedStyleSheets if adopting to a different document'); diff --git a/testing/web-platform/tests/css/cssom/cssom-pagerule.html b/testing/web-platform/tests/css/cssom/cssom-pagerule.html new file mode 100644 index 000000000000..c7604eba3380 --- /dev/null +++ b/testing/web-platform/tests/css/cssom/cssom-pagerule.html @@ -0,0 +1,43 @@ + +CSSOM: CSSPageRule tests + + + + + diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-clip-rect-ref.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-clip-rect-ref.html index a51d81f85193..d3c1f800e69b 100644 --- a/testing/web-platform/tests/css/filter-effects/backdrop-filter-clip-rect-ref.html +++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-clip-rect-ref.html @@ -6,13 +6,14 @@
    -

    Expected: A green box, blurred inside the short, wide white box with a
    - blue border, and not blurred anywhere else. In particular, there should be
    - no blurring inside the tall, narrow white box, or anywhere outside that.

    +

    Expected: A green box, color-inverted inside the short, wide box with a
    + blue border, and not color-inverted anywhere else. In particular, there should be
    + no color inversion inside the tall, narrow box, or anywhere outside that.

    + diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-clip-rect.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-clip-rect.html index 075b34d513c2..2e7e486252f5 100644 --- a/testing/web-platform/tests/css/filter-effects/backdrop-filter-clip-rect.html +++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-clip-rect.html @@ -6,13 +6,14 @@
    -

    Expected: A green box, blurred inside the short, wide white box with a
    - blue border, and not blurred anywhere else. In particular, there should be
    - no blurring inside the tall, narrow white box, or anywhere outside that.

    +

    Expected: A green box, color-inverted inside the short, wide box with a
    + blue border, and not color-inverted anywhere else. In particular, there should be
    + no color inversion inside the tall, narrow box, or anywhere outside that.

    diff --git a/testing/web-platform/tests/css/filter-effects/backdrop-filter-reference-filter.html b/testing/web-platform/tests/css/filter-effects/backdrop-filter-reference-filter.html new file mode 100644 index 000000000000..74c813c92a46 --- /dev/null +++ b/testing/web-platform/tests/css/filter-effects/backdrop-filter-reference-filter.html @@ -0,0 +1,63 @@ + + +backdrop-filter: Correctly apply reference filter + + + + +
    +

    Expected: A green box, color-inverted inside the short, wide box with a
    + blue border, and not color-inverted anywhere else. In particular, there should be
    + no color inversion inside the tall, narrow box, or anywhere outside that.

    +
    +
    + + + + + + + + + + + diff --git a/testing/web-platform/tests/css/filter-effects/filter-subregion-01-ref.html b/testing/web-platform/tests/css/filter-effects/filter-subregion-01-ref.html new file mode 100644 index 000000000000..a91e1fa0d24f --- /dev/null +++ b/testing/web-platform/tests/css/filter-effects/filter-subregion-01-ref.html @@ -0,0 +1,9 @@ + + +filter primitive subregion: Clip to filter primitive subregion + +

    Test passes if two semi-transparent green rectangles are on top of the +blue boxes to the left, and one opaque green rectangle on the blue box +to the right.

    + + diff --git a/testing/web-platform/tests/css/filter-effects/filter-subregion-01.html b/testing/web-platform/tests/css/filter-effects/filter-subregion-01.html new file mode 100644 index 000000000000..08c8367f240d --- /dev/null +++ b/testing/web-platform/tests/css/filter-effects/filter-subregion-01.html @@ -0,0 +1,53 @@ + + +filter primitive subregion: Clip to filter primitive subregion + + + +

    Test passes if two semi-transparent green rectangles are on top of the +blue boxes to the left, and one opaque green rectangle on the blue box +to the right.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testing/web-platform/tests/css/filter-effects/filtered-inline-applies-to-float-ref.html b/testing/web-platform/tests/css/filter-effects/filtered-inline-applies-to-float-ref.html new file mode 100644 index 000000000000..439d7c443cbc --- /dev/null +++ b/testing/web-platform/tests/css/filter-effects/filtered-inline-applies-to-float-ref.html @@ -0,0 +1,12 @@ + + +

    There should be a blurred green square.

    +
    diff --git a/testing/web-platform/tests/css/filter-effects/filtered-inline-applies-to-float.html b/testing/web-platform/tests/css/filter-effects/filtered-inline-applies-to-float.html new file mode 100644 index 000000000000..2d368dec46a4 --- /dev/null +++ b/testing/web-platform/tests/css/filter-effects/filtered-inline-applies-to-float.html @@ -0,0 +1,17 @@ + + + + + +

    There should be a blurred green square.

    +
    +
    +
    diff --git a/testing/web-platform/tests/css/filter-effects/support/filtersubregion00.png b/testing/web-platform/tests/css/filter-effects/support/filtersubregion00.png new file mode 100644 index 000000000000..b6c4bccb63cd Binary files /dev/null and b/testing/web-platform/tests/css/filter-effects/support/filtersubregion00.png differ diff --git a/testing/web-platform/tests/css/mediaqueries/prefers-color-scheme.html b/testing/web-platform/tests/css/mediaqueries/prefers-color-scheme.html new file mode 100644 index 000000000000..c6ca45ab1720 --- /dev/null +++ b/testing/web-platform/tests/css/mediaqueries/prefers-color-scheme.html @@ -0,0 +1,37 @@ + + + + + + + diff --git a/testing/web-platform/tests/css/mediaqueries/prefers-reduced-motion.html b/testing/web-platform/tests/css/mediaqueries/prefers-reduced-motion.html new file mode 100644 index 000000000000..2d9f88474598 --- /dev/null +++ b/testing/web-platform/tests/css/mediaqueries/prefers-reduced-motion.html @@ -0,0 +1,38 @@ + + + + + + + diff --git a/testing/web-platform/tests/css/mediaqueries/resources/matchmedia-utils.js b/testing/web-platform/tests/css/mediaqueries/resources/matchmedia-utils.js new file mode 100644 index 000000000000..544f68c0400e --- /dev/null +++ b/testing/web-platform/tests/css/mediaqueries/resources/matchmedia-utils.js @@ -0,0 +1,49 @@ +'use strict'; + +function query_is_css_parseable(query) { + const style = document.createElement('style'); + style.type = 'text/css'; + document.head.appendChild(style); + + const sheet = style.sheet; + try { + sheet.insertRule("@media " + query + "{}", 0); + return sheet.cssRules.length == 1 && + sheet.cssRules[0].media.mediaText != "not all"; + } finally { + while (sheet.cssRules.length) + sheet.deleteRule(0); + style.remove(); + } +} + +function query_should_be_css_parseable(query) { + test(() => { + assert_true(query_is_css_parseable(query)); + }, "Should be parseable in a CSS stylesheet: '" + query + "'"); +} + +function query_should_not_be_css_parseable(query) { + test(() => { + assert_false(query_is_css_parseable(query)); + }, "Should not be parseable in a CSS stylesheet: '" + query + "'"); +} + +function query_is_js_parseable(query) { + // We cannot rely on whether a given feature is on or off, so only check the + // 'media' member of the result. + const match = window.matchMedia(query); + return match.media == query; +} + +function query_should_be_js_parseable(query) { + test(() => { + assert_true(query_is_js_parseable(query)); + }, "Should be parseable in JS: '" + query + "'"); +} + +function query_should_not_be_js_parseable(query) { + test(() => { + assert_false(query_is_js_parseable(query)); + }, "Should not be parseable in JS: '" + query + "'"); +} diff --git a/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-001.html b/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-001.html new file mode 100644 index 000000000000..fa966d3f25a1 --- /dev/null +++ b/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-001.html @@ -0,0 +1,39 @@ + + + + CSS Selectors Invalidation: insert sibling + + + + + + + +
    +
    +
    +
    +
    + + + diff --git a/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-002.html b/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-002.html new file mode 100644 index 000000000000..7e1eac37ea92 --- /dev/null +++ b/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-002.html @@ -0,0 +1,41 @@ + + + + CSS Selectors Invalidation: insert adjacent sibling of parent + + + + + + + +
    +
    +
    +
    +
    +
    + + + diff --git a/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-003.html b/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-003.html new file mode 100644 index 000000000000..c7c51eaf6a84 --- /dev/null +++ b/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-003.html @@ -0,0 +1,44 @@ + + + + CSS Selectors Invalidation: insert sibling of ancestor + + + + + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + diff --git a/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-004.html b/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-004.html new file mode 100644 index 000000000000..aa3fb1c9fc68 --- /dev/null +++ b/testing/web-platform/tests/css/selectors/invalidation/insert-sibling-004.html @@ -0,0 +1,43 @@ + + + + CSS Selectors Invalidation: insert sibling of parent + + + + + + + +
    +
    +
    +
    +
    + +
    +
    + + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001-ref.xhtml b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001-ref.xhtml index f09e2a448da8..ef2a0685f25d 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001-ref.xhtml +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001-ref.xhtml @@ -12,24 +12,24 @@ width: 200px; margin-bottom: 2px; background: lightgray; - height: 20px; + height: 10px; clear: all; } div.a { width: 10px; - height: 20px; + height: 10px; background: lightgreen; float: left; } div.b { width: 30px; - height: 20px; + height: 10px; background: pink; float: left; } div.c { width: 40px; - height: 20px; + height: 10px; background: orange; float: left; } @@ -37,7 +37,7 @@ /* Inside of 'b': */ div.fixedSizeChild { width: 30px; - height: 10px; + height: 5px; background: purple; } diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001a.xhtml b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001a.xhtml index 56bdd5fe4020..678b7f5096e9 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001a.xhtml +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001a.xhtml @@ -14,7 +14,7 @@ diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001b.xhtml b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001b.xhtml index 002f20fb3335..faed08350aae 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001b.xhtml +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-align-content-vert-001b.xhtml @@ -15,7 +15,7 @@ diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001-ref.xhtml b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001-ref.xhtml index 4619337e75bf..e3f0276fda17 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001-ref.xhtml +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001-ref.xhtml @@ -16,17 +16,17 @@ display: inline-block; } div.a { - height: 20px; + height: 10px; width: 10px; background: lightgreen; } div.b { - height: 20px; + height: 10px; width: 50px; background: pink; } div.c { - height: 20px; + height: 10px; width: 100px; background: orange; } diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001a.xhtml b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001a.xhtml index 37c9db7a3165..494c35bb6870 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001a.xhtml +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001a.xhtml @@ -18,17 +18,17 @@ margin-bottom: 2px; } div.a { - height: 20px; + height: 10px; flex: 0 10px; background: lightgreen; } div.b { - height: 20px; + height: 10px; flex: 0 50px; background: pink; } div.c { - height: 20px; + height: 10px; flex: 0 100px; background: orange; } diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001b.xhtml b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001b.xhtml index 43c5405647d7..468d5150fb33 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001b.xhtml +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-horiz-001b.xhtml @@ -24,17 +24,17 @@ clear: both; } div.a { - height: 20px; + height: 10px; flex: 0 10px; background: lightgreen; } div.b { - height: 20px; + height: 10px; flex: 0 50px; background: pink; } div.c { - height: 20px; + height: 10px; flex: 0 100px; background: orange; } diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003-ref.xhtml b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003-ref.xhtml index a205a6bad6bb..12064db1a5df 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003-ref.xhtml +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003-ref.xhtml @@ -15,17 +15,17 @@ float: left; } div.a { - width: 20px; + width: 10px; height: 35px; background: lightgreen; } div.b { - width: 20px; + width: 10px; height: 40px; background: pink; } div.c { - width: 20px; + width: 10px; height: 45px; background: orange; } diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003.xhtml b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003.xhtml index dd32333e4fb1..8b99455e7159 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003.xhtml +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-justify-content-vert-003.xhtml @@ -29,17 +29,17 @@ float: left; } div.a { - width: 20px; + width: 10px; flex: 0 0 35px; background: lightgreen; } div.b { - width: 20px; + width: 10px; flex: 0 0 40px; background: pink; } div.c { - width: 20px; + width: 10px; flex: 0 0 45px; background: orange; } diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/reftest.list b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/reftest.list index 663018700a7c..2d9b459fa8e6 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/reftest.list +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/reftest.list @@ -64,6 +64,9 @@ include selectors4/reftest.list # Shapes Level 1 include shapes1/reftest.list +# CSS Intrinsic & Extrinsic Sizing Module Level 3 +include sizing/reftest.list + # Text Level 3 include text3/reftest.list diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-1-ref.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-1-ref.html new file mode 100644 index 000000000000..0c0b7878e157 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-1-ref.html @@ -0,0 +1,51 @@ + + + CSS Reference Case: Basic cases with max-content and min-content + + + + + + + +
    +
    min
    in the box
    +
    max
    in the box
    +
    + +
    +
    min
    in the box
    +
    max
    in the box
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-1a.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-1a.html new file mode 100644 index 000000000000..6c2db625b301 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-1a.html @@ -0,0 +1,54 @@ + + + + CSS Test: Basic cases of width/height on block axis with max-content and min-content + + + + + + + + + + +
    +
    min
    in the box
    +
    max
    in the box
    +
    + +
    +
    min
    in the box
    +
    max
    in the box
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-1b.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-1b.html new file mode 100644 index 000000000000..812133f79432 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-1b.html @@ -0,0 +1,54 @@ + + + + CSS Test: Basic cases of block-size with max-content and min-content + + + + + + + + + + +
    +
    min
    in the box
    +
    max
    in the box
    +
    + +
    +
    min
    in the box
    +
    max
    in the box
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-table-1-ref.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-table-1-ref.html new file mode 100644 index 000000000000..0810c428b56a --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-table-1-ref.html @@ -0,0 +1,48 @@ + + + + CSS Reference Case: Block size with max-content and min-content in a table + + + + + +
    +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-table-1a.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-table-1a.html new file mode 100644 index 000000000000..f5abc672a853 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-table-1a.html @@ -0,0 +1,70 @@ + + + + CSS Test: Basic cases of width/height (block axis) with max-content and min-content in a table + + + + + + + + +
    + + +
    + + +
    + + + +
    + + +
    +
    + + + +
    + + +
    + + + +
    + + +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-table-1b.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-table-1b.html new file mode 100644 index 000000000000..0395c07af349 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/block-size-with-min-or-max-content-table-1b.html @@ -0,0 +1,68 @@ + + + + CSS Test: Basic cases of block-size with max-content and min-content in a table + + + + + + + + +
    + + +
    + + +
    + + + +
    + + +
    +
    + + + +
    + + +
    + + + +
    + + +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-1-ref.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-1-ref.html new file mode 100644 index 000000000000..13cd19ba4a4f --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-1-ref.html @@ -0,0 +1,78 @@ + + + + + CSS Referece Case: Different values of block sizing properties in horizontal wm + + + + + + + + +
    +
    +
    height: min-content
    on this box.
    +
    height: max-content
    on this box.
    +
    + +
    +
    min-height: min-content
    on this box.
    +
    min-height: max-content
    on this box.
    +
    + +
    +
    max-height: min-content
    on this box.
    +
    max-height: max-content
    on this box.
    +
    +
    + +
    +
    +
    block: min-content
    on this box.
    +
    block: max-content
    on this box.
    +
    + +
    +
    min-block: min-content
    on this box.
    +
    min-block: max-content
    on this box.
    +
    + +
    +
    max-block: min-content
    on this box.
    +
    max-block: max-content
    on this box.
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-1.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-1.html new file mode 100644 index 000000000000..ac7e9b397aee --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-1.html @@ -0,0 +1,96 @@ + + + + + CSS Test: Different values of block sizing properties with max-content and min-content in horizontal wm + + + + + + + + + + + +
    +
    +
    height: min-content
    on this box.
    +
    height: max-content
    on this box.
    +
    + +
    +
    + min-height: min-content
    on this box. +
    +
    + min-height: max-content
    on this box. +
    +
    + +
    +
    + max-height: min-content
    on this box. +
    +
    + max-height: max-content
    on this box. +
    +
    +
    + +
    +
    +
    block: min-content
    on this box.
    +
    block: max-content
    on this box.
    +
    + +
    +
    + min-block: min-content
    on this box. +
    +
    + min-block: max-content
    on this box. +
    +
    + +
    +
    + max-block: min-content
    on this box. +
    +
    + max-block: max-content
    on this box. +
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html new file mode 100644 index 000000000000..fe914059b1d5 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html @@ -0,0 +1,94 @@ + + + + + CSS Reference Case: Different values of height:auto container in horizontal wm + + + + + + + + +
    +
    +
    auto
    container: min-content.
    +
    auto
    container: min-content.
    +
    +
    +
    10px
    container: min-content.
    +
    10px
    container: min-content.
    +
    +
    +
    100px
    container: min-content.
    +
    100px
    container: min-content.
    +
    + +
    +
    auto
    container: max-content.
    +
    auto
    container: max-content.
    +
    +
    +
    10px
    container: max-content.
    +
    10px
    container: max-content.
    +
    +
    +
    100px
    container: max-content.
    +
    100px
    container: max-content.
    +
    +
    + +
    +
    +
    auto
    container: auto.
    +
    auto
    container: auto.
    +
    + +
    +
    10px
    container min-size: min-content.
    +
    10px
    container min-size: min-content.
    +
    +
    +
    10px
    container min-size: max-content.
    +
    10px
    container min-size: max-content.
    +
    + +
    +
    100px
    container max-size: min-content.
    +
    100px
    container max-size: min-content.
    +
    +
    +
    100px
    container max-size: max-content.
    +
    100px
    container max-size: max-content.
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html new file mode 100644 index 000000000000..d28d918dd429 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html @@ -0,0 +1,97 @@ + + + + + CSS Test: min-content and max-content for 'height' on a container, with various heights on children + + + + + + + + + + + +
    +
    +
    auto
    container: min-content.
    +
    auto
    container: min-content.
    +
    +
    +
    10px
    container: min-content.
    +
    10px
    container: min-content.
    +
    +
    +
    100px
    container: min-content.
    +
    100px
    container: min-content.
    +
    + +
    +
    auto
    container: max-content.
    +
    auto
    container: max-content.
    +
    +
    +
    10px
    container: max-content.
    +
    10px
    container: max-content.
    +
    +
    +
    100px
    container: max-content.
    +
    100px
    container: max-content.
    +
    +
    + +
    +
    +
    auto
    container: auto.
    +
    auto
    container: auto.
    +
    + +
    +
    10px
    container min-size: min-content.
    +
    10px
    container min-size: min-content.
    +
    +
    +
    10px
    container min-size: max-content.
    +
    10px
    container min-size: max-content.
    +
    + +
    +
    100px
    container max-size: min-content.
    +
    100px
    container max-size: min-content.
    +
    +
    +
    100px
    container max-size: max-content.
    +
    100px
    container max-size: max-content.
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html new file mode 100644 index 000000000000..47ff4137861e --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/hori-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html @@ -0,0 +1,97 @@ + + + + + CSS Test: min-content and max-content for 'block-size' on a container, with various block-sizes on children + + + + + + + + + + + +
    +
    +
    auto
    container: min-content.
    +
    auto
    container: min-content.
    +
    +
    +
    10px
    container: min-content.
    +
    10px
    container: min-content.
    +
    +
    +
    100px
    container: min-content.
    +
    100px
    container: min-content.
    +
    + +
    +
    auto
    container: max-content.
    +
    auto
    container: max-content.
    +
    +
    +
    10px
    container: max-content.
    +
    10px
    container: max-content.
    +
    +
    +
    100px
    container: max-content.
    +
    100px
    container: max-content.
    +
    +
    + +
    +
    +
    auto
    container: auto.
    +
    auto
    container: auto.
    +
    + +
    +
    10px
    container min-size: min-content.
    +
    10px
    container min-size: min-content.
    +
    +
    +
    10px
    container min-size: max-content.
    +
    10px
    container min-size: max-content.
    +
    + +
    +
    100px
    container max-size: min-content.
    +
    100px
    container max-size: min-content.
    +
    +
    +
    100px
    container max-size: max-content.
    +
    100px
    container max-size: max-content.
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/reftest.list b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/reftest.list new file mode 100644 index 000000000000..1952f3253b6b --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/reftest.list @@ -0,0 +1,10 @@ +== block-size-with-min-or-max-content-1a.html block-size-with-min-or-max-content-1-ref.html +== block-size-with-min-or-max-content-1b.html block-size-with-min-or-max-content-1-ref.html +== block-size-with-min-or-max-content-table-1a.html block-size-with-min-or-max-content-table-1-ref.html +== block-size-with-min-or-max-content-table-1b.html block-size-with-min-or-max-content-table-1-ref.html +== hori-block-size-small-or-larger-than-container-with-min-or-max-content-1.html hori-block-size-small-or-larger-than-container-with-min-or-max-content-1-ref.html +== hori-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html hori-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html +== hori-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html hori-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html +== vert-block-size-small-or-larger-than-container-with-min-or-max-content-1.html vert-block-size-small-or-larger-than-container-with-min-or-max-content-1-ref.html +== vert-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html vert-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html +== vert-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html vert-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/support/Ahem.ttf b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/support/Ahem.ttf new file mode 100644 index 000000000000..ac81cb03165a Binary files /dev/null and b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/support/Ahem.ttf differ diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/support/ahem.css b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/support/ahem.css new file mode 100644 index 000000000000..82ee466791e8 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/support/ahem.css @@ -0,0 +1,4 @@ +@font-face { + font-family: "Ahem"; + src: url(./Ahem.ttf); +} diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/support/min-content-max-content.css b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/support/min-content-max-content.css new file mode 100644 index 000000000000..60947153b358 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/support/min-content-max-content.css @@ -0,0 +1,107 @@ +/* + * All classes here intentionally declare height/width/block-size + * twice. Just reveals if keyword is supported. + * + * According to the spec, for the sizing properties, + * height/min-height/max-height, and width/min-width/max-width, + * if specified for the inline axis, use the min-content/max-content inline + * size; otherwise behaves as the property’s initial value. + * + * The 'block-size' property (and its max-/min- properties) is just an alias + * for height (or width) and accepts the same values. Since it's not + * inline-axis, by definition, it always treats the 'min-content' and + * 'max-content' values as the initial value. + * + * https://drafts.csswg.org/css-sizing/#sizing-values + * + */ + +.height-min-content { + height: 0px; + height: min-content; +} + +.height-max-content { + height: 0px; + height: max-content; +} + +.min-height-min-content { + min-height: 600px; + min-height: min-content; +} + +.min-height-max-content { + min-height: 600px; + min-height: max-content; +} + +.max-height-min-content { + max-height: 0px; + max-height: min-content; +} + +.max-height-max-content { + max-height: 0px; + max-height: max-content; +} + +.width-min-content { + width: 0px; + width: min-content; +} + +.width-max-content { + width: 0px; + width: max-content; +} + +.min-width-min-content { + min-width: 600px; + min-width: min-content; +} + +.min-width-max-content { + min-width: 600px; + min-width: max-content; +} + +.max-width-min-content { + max-width: 0px; + max-width: min-content; +} + +.max-width-max-content { + max-width: 0px; + max-width: max-content; +} + +.block-min-content { + block-size: 0px; + block-size: min-content; +} + +.block-max-content { + block-size: 0px; + block-size: max-content; +} + +.min-block-min-content { + min-block-size: 600px; + min-block-size: min-content; +} + +.min-block-max-content { + min-block-size: 600px; + min-block-size: max-content; +} + +.max-block-min-content { + max-block-size: 0px; + max-block-size: min-content; +} + +.max-block-max-content { + max-block-size: 0px; + max-block-size: max-content; +} diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-1-ref.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-1-ref.html new file mode 100644 index 000000000000..b61f5ae9fcfe --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-1-ref.html @@ -0,0 +1,77 @@ + + + + + CSS Reference Case: Different values of block sizing properties in vertical wm + + + + + + + + +
    +
    +
    width: min-content
    on this box.
    +
    width: max-content
    on this box.
    +
    + +
    +
    min-width: min-content
    on this box.
    +
    min-width: max-content
    on this box.
    +
    + +
    +
    max-width: min-content
    on this box.
    +
    max-width: max-content
    on this box.
    +
    +
    + +
    +
    +
    block: min-content
    on this box.
    +
    block: max-content
    on this box.
    +
    + +
    +
    min-block: min-content
    on this box.
    +
    min-block: max-content
    on this box.
    +
    + +
    +
    max-block: min-content
    on this box.
    +
    max-block: max-content
    on this box.
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-1.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-1.html new file mode 100644 index 000000000000..6b955a6371b9 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-1.html @@ -0,0 +1,97 @@ + + + + + CSS Test: Different values of block sizing properties with max-content and min-content in vertical wm + + + + + + + + + + + +
    +
    +
    width: min-content
    on this box.
    +
    width: max-content
    on this box.
    +
    + +
    +
    + min-width: min-content
    on this box. +
    +
    + min-width: max-content
    on this box. +
    +
    + +
    +
    + max-width: min-content
    on this box. +
    + +
    + max-width: max-content
    on this box. +
    +
    +
    + +
    +
    +
    block: min-content
    on this box.
    +
    block: max-content
    on this box.
    +
    + +
    +
    + min-block: min-content
    on this box. +
    +
    + min-block: max-content
    on this box. +
    +
    + +
    +
    + max-block: min-content
    on this box. +
    + +
    + max-block: max-content
    on this box. +
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html new file mode 100644 index 000000000000..decf143e7518 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2-ref.html @@ -0,0 +1,101 @@ + + + + + CSS Reference Case: Different values of width:auto container in vertical wm + + + + + + + + +
    +
    +
    auto
    container: min-content.
    +
    auto
    container: min-content.
    +
    +
    +
    10px
    container: min-content.
    +
    10px
    container: min-content.
    +
    +
    +
    150px
    container: min-content.
    +
    150px
    container: min-content.
    +
    + +
    +
    auto
    container: max-content.
    +
    auto
    container: max-content.
    +
    +
    +
    10px
    container: max-content.
    +
    10px
    container: max-content.
    +
    +
    +
    100px
    container: max-content.
    +
    100px
    container: max-content.
    +
    +
    + +
    +
    +
    auto
    container: auto.
    +
    auto
    container: auto.
    +
    + +
    +
    10px
    container min-size: min-content.
    +
    10px
    container min-size: min-content.
    +
    + +
    +
    10px
    container min-size: max-content.
    +
    10px
    container min-size: max-content.
    +
    + +
    +
    100px
    container max-size: min-content.
    +
    100px
    container max-size: min-content.
    +
    + +
    +
    100px
    container max-size: max-content.
    +
    100px
    container max-size: max-content.
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html new file mode 100644 index 000000000000..5c4097fa95e2 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2a.html @@ -0,0 +1,104 @@ + + + + + CSS Test: min-content and max-content for 'width' on a container, with various widths on children + + + + + + + + + + + +
    +
    +
    auto
    container: min-content.
    +
    auto
    container: min-content.
    +
    +
    +
    10px
    container: min-content.
    +
    10px
    container: min-content.
    +
    +
    +
    100px
    container: min-content.
    +
    100px
    container: min-content.
    +
    + +
    +
    auto
    container: max-content.
    +
    auto
    container: max-content.
    +
    +
    +
    10px
    container: max-content.
    +
    10px
    container: max-content.
    +
    +
    +
    100px
    container: max-content.
    +
    100px
    container: max-content.
    +
    +
    + +
    +
    +
    auto
    container: auto.
    +
    auto
    container: auto.
    +
    + +
    +
    10px
    container min-size: min-content.
    +
    10px
    container min-size: min-content.
    +
    + +
    +
    10px
    container min-size: max-content.
    +
    10px
    container min-size: max-content.
    +
    + +
    +
    100px
    container max-size: min-content.
    +
    100px
    container max-size: min-content.
    +
    + +
    +
    100px
    container max-size: max-content.
    +
    100px
    container max-size: max-content.
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html new file mode 100644 index 000000000000..3619cf236407 --- /dev/null +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/sizing/vert-block-size-small-or-larger-than-container-with-min-or-max-content-2b.html @@ -0,0 +1,104 @@ + + + + + CSS Test: min-content and max-content for 'block-size' on a container, with various block-sizes on children + + + + + + + + + + + +
    +
    +
    auto
    container: min-content.
    +
    auto
    container: min-content.
    +
    +
    +
    10px
    container: min-content.
    +
    10px
    container: min-content.
    +
    +
    +
    100px
    container: min-content.
    +
    100px
    container: min-content.
    +
    + +
    +
    auto
    container: max-content.
    +
    auto
    container: max-content.
    +
    +
    +
    10px
    container: max-content.
    +
    10px
    container: max-content.
    +
    +
    +
    100px
    container: max-content.
    +
    100px
    container: max-content.
    +
    +
    + +
    +
    +
    auto
    container: auto.
    +
    auto
    container: auto.
    +
    + +
    +
    10px
    container min-size: min-content.
    +
    10px
    container min-size: min-content.
    +
    + +
    +
    10px
    container min-size: max-content.
    +
    10px
    container min-size: max-content.
    +
    + +
    +
    100px
    container max-size: min-content.
    +
    100px
    container max-size: min-content.
    +
    + +
    +
    100px
    container max-size: max-content.
    +
    100px
    container max-size: max-content.
    +
    +
    + + diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1-ref.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1-ref.html index 62ebd566591a..d161ecc6f310 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1-ref.html +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1-ref.html @@ -14,6 +14,11 @@ x y + + + + +
    xy
    diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1.html index b37c94ec5a34..c3d147c0b1ce 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1.html +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-auto-1.html @@ -11,6 +11,11 @@
    xx y
    + + + + +
    xy
    diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1-ref.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1-ref.html index 1aad9eb16bdb..9ae2d347c6b7 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1-ref.html +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1-ref.html @@ -19,6 +19,11 @@ table { table-layout: fixed; width: 500px; border-spacing: 0 }
    xx y
    + + + + +
    xy
    diff --git a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1.html b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1.html index 05a902217f0b..808a61274d32 100644 --- a/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1.html +++ b/testing/web-platform/tests/css/vendor-imports/mozilla/mozilla-central-reftests/values3/calc-width-table-fixed-1.html @@ -16,6 +16,11 @@ table { table-layout: fixed; width: 500px; border-spacing: 0 }
    xx y
    + + + + +
    xy
    diff --git a/testing/web-platform/tests/custom-elements/enqueue-custom-element-callback-reactions-inside-another-callback.html b/testing/web-platform/tests/custom-elements/enqueue-custom-element-callback-reactions-inside-another-callback.html new file mode 100644 index 000000000000..2fd932f29a3b --- /dev/null +++ b/testing/web-platform/tests/custom-elements/enqueue-custom-element-callback-reactions-inside-another-callback.html @@ -0,0 +1,223 @@ + + + +Custom Elements: must enqueue an element on the appropriate element queue after checking callback is null and the attribute name + + + + + + + + + + + + diff --git a/testing/web-platform/tests/docs/_running-tests/chrome_android.md b/testing/web-platform/tests/docs/_running-tests/chrome_android.md index adb662d5710d..d6cad0acd4a9 100644 --- a/testing/web-platform/tests/docs/_running-tests/chrome_android.md +++ b/testing/web-platform/tests/docs/_running-tests/chrome_android.md @@ -10,16 +10,7 @@ connect to the device. ## Hosts Until we find a better way, we need to root the Android device and update the -/etc/hosts file to include - -``` -127.0.0.1 web-platform.test -127.0.0.1 www.web-platform.test -127.0.0.1 www1.web-platform.test -127.0.0.1 www2.web-platform.test -127.0.0.1 xn--n8j6ds53lwwkrqhv28a.web-platform.test -127.0.0.1 xn--lve-6lad.web-platform.test -``` +/etc/hosts file to include the entries printed by `./wpt make-hosts-file`. ## CA certificate diff --git a/testing/web-platform/tests/docs/_writing-tests/assumptions.md b/testing/web-platform/tests/docs/_writing-tests/assumptions.md index d1ab75b0f1d3..28a990a3f719 100644 --- a/testing/web-platform/tests/docs/_writing-tests/assumptions.md +++ b/testing/web-platform/tests/docs/_writing-tests/assumptions.md @@ -8,7 +8,7 @@ The tests make a number of assumptions of the user agent, and new tests can freely rely on these assumptions being true: * The device is a full-color device. - * The device has a viewport width of at least 800px. + * The device has a viewport width of at least 600px. * The UA imposes no minimum font size. * The `medium` `font-size` computes to 16px. * The canvas background is `white`. diff --git a/testing/web-platform/tests/docs/_writing-tests/general-guidelines.md b/testing/web-platform/tests/docs/_writing-tests/general-guidelines.md index a07d55b9e1ba..ff099ddf0a53 100644 --- a/testing/web-platform/tests/docs/_writing-tests/general-guidelines.md +++ b/testing/web-platform/tests/docs/_writing-tests/general-guidelines.md @@ -90,7 +90,7 @@ headers. ### Be Short Tests should be as short as possible. For reftests in particular -scrollbars at 800×600px window size must be avoided unless scrolling +scrollbars at 600×600px window size must be avoided unless scrolling behavior is specifically being tested. For all tests extraneous elements on the page should be avoided so it is clear what is part of the test (for a typical testharness test, the only content on the page diff --git a/testing/web-platform/tests/docs/_writing-tests/testharness-api.md b/testing/web-platform/tests/docs/_writing-tests/testharness-api.md index 5d23e253946d..657d3962c989 100644 --- a/testing/web-platform/tests/docs/_writing-tests/testharness-api.md +++ b/testing/web-platform/tests/docs/_writing-tests/testharness-api.md @@ -776,11 +776,14 @@ assert that property `property_name` on object is readonly ### `assert_throws(code, func, description)` `code` - the expected exception. This can take several forms: - * string - the thrown exception must be a DOMException with the given - name, e.g., "TimeoutError" (for compatibility with existing - tests, a constant is also supported, e.g., "TIMEOUT_ERR") - * object - the thrown exception must have a property called "name" that - matches code.name + * string - asserts that the thrown exception must be a DOMException + with the given name, e.g., "TimeoutError". (For + compatibility with existing tests, the name of a + DOMException constant can also be given, e.g., + "TIMEOUT_ERR") + * object - asserts that the thrown exception must be any other kind + of exception, with a property called "name" that matches + `code.name`. `func` - a function that should throw diff --git a/testing/web-platform/tests/dom/collections/HTMLCollection-as-proto-length-get-throws.html b/testing/web-platform/tests/dom/collections/HTMLCollection-as-proto-length-get-throws.html deleted file mode 100644 index 225c9e61a388..000000000000 --- a/testing/web-platform/tests/dom/collections/HTMLCollection-as-proto-length-get-throws.html +++ /dev/null @@ -1,13 +0,0 @@ - - -Make sure browsers throw when getting .length on some random object whose proto is an HTMLCollection - - - diff --git a/testing/web-platform/tests/dom/collections/HTMLCollection-as-prototype.html b/testing/web-platform/tests/dom/collections/HTMLCollection-as-prototype.html new file mode 100644 index 000000000000..75546a77c5e5 --- /dev/null +++ b/testing/web-platform/tests/dom/collections/HTMLCollection-as-prototype.html @@ -0,0 +1,29 @@ + + +Objects whose prototype is an HTMLCollection + + +
    + diff --git a/testing/web-platform/tests/dom/collections/HTMLCollection-delete.html b/testing/web-platform/tests/dom/collections/HTMLCollection-delete.html new file mode 100644 index 000000000000..6f5b9326bb94 --- /dev/null +++ b/testing/web-platform/tests/dom/collections/HTMLCollection-delete.html @@ -0,0 +1,45 @@ + + +Deleting properties from HTMLCollection + + +
    + + diff --git a/testing/web-platform/tests/dom/events/Event-dispatch-click.html b/testing/web-platform/tests/dom/events/Event-dispatch-click.html index 4aa4bbe4877b..2241d57e5118 100644 --- a/testing/web-platform/tests/dom/events/Event-dispatch-click.html +++ b/testing/web-platform/tests/dom/events/Event-dispatch-click.html @@ -74,17 +74,17 @@ async_test(function(t) { t.done() }, "pick the first with activation behavior ") -var globalCounter = 0 // sorry async_test(function(t) { // as above with - var i = 0 + window.hrefComplete = t.step_func(function(a) { + assert_equals(a, 'child'); + t.done(); + }); var link = document.createElement("a") - link.href = "javascript:(function(){globalCounter--})()" // must not be triggered + link.href = "javascript:hrefComplete('link')" // must not be triggered dump.appendChild(link) var child = link.appendChild(document.createElement("a")) - child.href = "javascript:(function(){globalCounter++})()" + child.href = "javascript:hrefComplete('child')" child.dispatchEvent(new MouseEvent("click", {bubbles:true})) - assert_equals(globalCounter, 1) - t.done() }, "pick the first with activation behavior ") async_test(function(t) { diff --git a/testing/web-platform/tests/dom/events/EventListener-handleEvent.html b/testing/web-platform/tests/dom/events/EventListener-handleEvent.html index b33b030a641d..6630f273fff4 100644 --- a/testing/web-platform/tests/dom/events/EventListener-handleEvent.html +++ b/testing/web-platform/tests/dom/events/EventListener-handleEvent.html @@ -3,40 +3,83 @@ EventListener::handleEvent() +
    -
    x
    - - - - - - - - - - - +
    diff --git a/testing/web-platform/tests/dom/events/document-level-wheel-event-listener-passive-by-default-manual.html b/testing/web-platform/tests/dom/events/document-level-wheel-event-listener-passive-by-default-manual.html new file mode 100644 index 000000000000..c94d5b006c8e --- /dev/null +++ b/testing/web-platform/tests/dom/events/document-level-wheel-event-listener-passive-by-default-manual.html @@ -0,0 +1,17 @@ + +Default passive document level wheel event listener manual test + + + +
    This is a manual test since there is no way to synthesize wheel events. +Scroll by wheel in the middle of the page to run the test.
    + diff --git a/testing/web-platform/tests/encoding/resources/single-byte-raw.py b/testing/web-platform/tests/encoding/resources/single-byte-raw.py index b4a6c90405ec..494f37a185d3 100644 --- a/testing/web-platform/tests/encoding/resources/single-byte-raw.py +++ b/testing/web-platform/tests/encoding/resources/single-byte-raw.py @@ -1,3 +1,3 @@ def main(request, response): response.headers.set("Content-Type", "text/plain;charset=" + request.GET.first("label")) - response.content = "".join(chr(byte) for byte in xrange(255)) + response.content = "".join(chr(byte) for byte in range(255)) diff --git a/testing/web-platform/tests/encoding/streams/decode-bad-chunks.any.js b/testing/web-platform/tests/encoding/streams/decode-bad-chunks.any.js index 101fb3aeb614..de2ba74c1016 100644 --- a/testing/web-platform/tests/encoding/streams/decode-bad-chunks.any.js +++ b/testing/web-platform/tests/encoding/streams/decode-bad-chunks.any.js @@ -23,26 +23,6 @@ const badChunks = [ name: 'array', value: [65] }, - { - name: 'detached ArrayBufferView', - value: (() => { - const u8 = new Uint8Array([65]); - const ab = u8.buffer; - const mc = new MessageChannel(); - mc.port1.postMessage(ab, [ab]); - return u8; - })() - }, - { - name: 'detached ArrayBuffer', - value: (() => { - const u8 = new Uint8Array([65]); - const ab = u8.buffer; - const mc = new MessageChannel(); - mc.port1.postMessage(ab, [ab]); - return ab; - })() - }, { name: 'SharedArrayBuffer', // Use a getter to postpone construction so that all tests don't fail where diff --git a/testing/web-platform/tests/encoding/streams/decode-utf8.any.js b/testing/web-platform/tests/encoding/streams/decode-utf8.any.js index 34fa764bf0a6..266899c6c965 100644 --- a/testing/web-platform/tests/encoding/streams/decode-utf8.any.js +++ b/testing/web-platform/tests/encoding/streams/decode-utf8.any.js @@ -39,3 +39,23 @@ promise_test(async () => { assert_array_equals(array, [expectedOutputString], 'the output should be in one chunk'); }, 'a trailing empty chunk should be ignored'); + +promise_test(async () => { + const buffer = new ArrayBuffer(3); + const view = new Uint8Array(buffer, 1, 1); + view[0] = 65; + new MessageChannel().port1.postMessage(buffer, [buffer]); + const input = readableStreamFromArray([view]); + const output = input.pipeThrough(new TextDecoderStream()); + const array = await readableStreamToArray(output); + assert_array_equals(array, [], 'no chunks should be output'); +}, 'decoding a transferred Uint8Array chunk should give no output'); + +promise_test(async () => { + const buffer = new ArrayBuffer(1); + new MessageChannel().port1.postMessage(buffer, [buffer]); + const input = readableStreamFromArray([buffer]); + const output = input.pipeThrough(new TextDecoderStream()); + const array = await readableStreamToArray(output); + assert_array_equals(array, [], 'no chunks should be output'); +}, 'decoding a transferred ArrayBuffer chunk should give no output'); diff --git a/testing/web-platform/tests/encrypted-media/clearkey-check-encryption-scheme.https.html b/testing/web-platform/tests/encrypted-media/clearkey-check-encryption-scheme.https.html new file mode 100644 index 000000000000..eb580ea5f87f --- /dev/null +++ b/testing/web-platform/tests/encrypted-media/clearkey-check-encryption-scheme.https.html @@ -0,0 +1,32 @@ + + + + + Encrypted Media Extensions: Check encryptionScheme with Clear Key + + + + + + + + + + + + + + + + + + +
    + + + + diff --git a/testing/web-platform/tests/encrypted-media/clearkey-check-status-for-hdcp.https.html b/testing/web-platform/tests/encrypted-media/clearkey-check-status-for-hdcp.https.html new file mode 100644 index 000000000000..5ec3b262852e --- /dev/null +++ b/testing/web-platform/tests/encrypted-media/clearkey-check-status-for-hdcp.https.html @@ -0,0 +1,32 @@ + + + + + Encrypted Media Extensions: Check HDCP status with Clear Key + + + + + + + + + + + + + + + + + + +
    + + + + diff --git a/testing/web-platform/tests/encrypted-media/drm-check-encryption-scheme.https.html b/testing/web-platform/tests/encrypted-media/drm-check-encryption-scheme.https.html new file mode 100644 index 000000000000..862591b1b897 --- /dev/null +++ b/testing/web-platform/tests/encrypted-media/drm-check-encryption-scheme.https.html @@ -0,0 +1,32 @@ + + + + + Encrypted Media Extensions: Check encryptionScheme with DRM + + + + + + + + + + + + + + + + + + +
    + + + + diff --git a/testing/web-platform/tests/encrypted-media/drm-check-status-for-hdcp.https.html b/testing/web-platform/tests/encrypted-media/drm-check-status-for-hdcp.https.html new file mode 100644 index 000000000000..68c45be69b7b --- /dev/null +++ b/testing/web-platform/tests/encrypted-media/drm-check-status-for-hdcp.https.html @@ -0,0 +1,32 @@ + + + + + Encrypted Media Extensions: Check HDCP status with DRM + + + + + + + + + + + + + + + + + + +
    + + + + diff --git a/testing/web-platform/tests/encrypted-media/encrypted-media-supported-by-feature-policy.tentative.html b/testing/web-platform/tests/encrypted-media/encrypted-media-supported-by-feature-policy.tentative.html new file mode 100644 index 000000000000..5b2d2240c6ad --- /dev/null +++ b/testing/web-platform/tests/encrypted-media/encrypted-media-supported-by-feature-policy.tentative.html @@ -0,0 +1,11 @@ + +Test that encrypted-media is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/encrypted-media/scripts/check-encryption-scheme.js b/testing/web-platform/tests/encrypted-media/scripts/check-encryption-scheme.js new file mode 100644 index 000000000000..5d629271b42f --- /dev/null +++ b/testing/web-platform/tests/encrypted-media/scripts/check-encryption-scheme.js @@ -0,0 +1,41 @@ +function runTest(config, qualifier) +{ + function checkEncryptionScheme(encryptionScheme) + { + var simpleConfig = getSimpleConfiguration(); + assert_greater_than(simpleConfig[0].audioCapabilities.length, 0); + simpleConfig[0].audioCapabilities.forEach(function(capability) { + capability.encryptionScheme = encryptionScheme; + }); + + return navigator.requestMediaKeySystemAccess(config.keysystem, simpleConfig) + .then( + function(access) { + var actualConfiguration = access.getConfiguration(); + for (let i = 0; i < actualConfiguration.audioCapabilities.length; i++) { + const capability = actualConfiguration.audioCapabilities[i]; + + // If "encryptionScheme" is not supported, fail. + if (!('encryptionScheme' in capability)) { + return Promise.reject('Not implemented'); + } + + // If "encryptionScheme" is supported, it should be returned. + assert_equals(capability.encryptionScheme, encryptionScheme); + } + return Promise.resolve('Supported'); + }, + function error() { + // CDM does not support "encryptionScheme". Test should still pass. + return Promise.resolve('Not supported'); + }); + } + + promise_test( + () => checkEncryptionScheme('cenc'), + testnamePrefix(qualifier, config.keysystem) + ' support for "cenc" encryption scheme.'); + + promise_test( + () => checkEncryptionScheme('cbcs'), + testnamePrefix(qualifier, config.keysystem) + ' support for "cbcs" encryption scheme.'); +} diff --git a/testing/web-platform/tests/encrypted-media/scripts/check-status-for-hdcp.js b/testing/web-platform/tests/encrypted-media/scripts/check-status-for-hdcp.js new file mode 100644 index 000000000000..ac3081969523 --- /dev/null +++ b/testing/web-platform/tests/encrypted-media/scripts/check-status-for-hdcp.js @@ -0,0 +1,26 @@ +function runTest(config, qualifier) +{ + function checkStatusForMinHdcpVersionPolicy(hdcpVersion) + { + return navigator.requestMediaKeySystemAccess(config.keysystem, getSimpleConfiguration()) + .then(function(access) { + return access.createMediaKeys(); + }) + .then(function(mediaKeys) { + // As HDCP policy depends on the hardware running this test, + // don't bother checking the result returned as it may or + // may not be supported. This simply verifies that + // getStatusForPolicy() exists and doesn't blow up. + return mediaKeys.getStatusForPolicy({minHdcpVersion: hdcpVersion}); + }); + } + + promise_test( + () => checkStatusForMinHdcpVersionPolicy(''), + testnamePrefix(qualifier, config.keysystem) + + ' support for empty HDCP version.'); + + promise_test( + () => checkStatusForMinHdcpVersionPolicy('1.0'), + testnamePrefix(qualifier, config.keysystem) + ' support for HDCP 1.0.'); +} diff --git a/testing/web-platform/tests/event-timing/supported-types.window.js b/testing/web-platform/tests/event-timing/supported-types.window.js new file mode 100644 index 000000000000..c81d501f49fc --- /dev/null +++ b/testing/web-platform/tests/event-timing/supported-types.window.js @@ -0,0 +1,11 @@ +test(() => { + if (typeof PerformanceObserver.supportedEntryTypes === "undefined") + assert_unreached("supportedEntryTypes is not supported."); + const types = PerformanceObserver.supportedEntryTypes; + assert_true(types.includes("firstInput"), + "There should be 'firstInput' in PerformanceObserver.supportedEntryTypes"); + assert_true(types.includes("event"), + "There should be 'event' in PerformanceObserver.supportedEntryTypes"); + assert_greater_than(types.indexOf("firstInput"), types.indexOf('event'), + "The 'firstInput' entry should appear after the 'event' entry"); +}, "supportedEntryTypes contains 'event' and 'firstInput'."); diff --git a/testing/web-platform/tests/feature-policy/experimental-features/layout-animations-disabled-violation-report-js-tentative.html b/testing/web-platform/tests/feature-policy/experimental-features/layout-animations-disabled-violation-report-js-tentative.html index b45d8c3d4483..e7150a91e874 100644 --- a/testing/web-platform/tests/feature-policy/experimental-features/layout-animations-disabled-violation-report-js-tentative.html +++ b/testing/web-platform/tests/feature-policy/experimental-features/layout-animations-disabled-violation-report-js-tentative.html @@ -7,7 +7,7 @@ + + + + +

    Making sure there is room for vertical scroll

    +
    +
    +

    EOP

    + diff --git a/testing/web-platform/tests/feature-policy/experimental-features/vertical-scroll-main-frame-manual.tentative.html.headers b/testing/web-platform/tests/feature-policy/experimental-features/vertical-scroll-main-frame-manual.tentative.html.headers new file mode 100644 index 000000000000..44072fce5640 --- /dev/null +++ b/testing/web-platform/tests/feature-policy/experimental-features/vertical-scroll-main-frame-manual.tentative.html.headers @@ -0,0 +1 @@ +Feature-Policy: vertical-scroll 'none' diff --git a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html index 3334b97247e5..6bf7ca65326a 100644 --- a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html +++ b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html @@ -15,7 +15,7 @@ // Test that fullscreen's allowlist is ['*'] test(function() { assert_array_equals( - document.policy.getAllowlistForFeature('fullscreen'), + document.featurePolicy.getAllowlistForFeature('fullscreen'), ['*']); }, header_policy + ' -- test allowlist is ['*']'); diff --git a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-self.https.sub.html b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-self.https.sub.html index 60e22f4aec86..8641746ec8fb 100644 --- a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-self.https.sub.html +++ b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-self.https.sub.html @@ -15,7 +15,7 @@ // Test that fullscreen's allowlist is ['same_origin'] test(function() { assert_array_equals( - document.policy.getAllowlistForFeature('fullscreen'), + document.featurePolicy.getAllowlistForFeature('fullscreen'), [same_origin]); }, header_policy + ' -- test allowlist is [same_origin]'); diff --git a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html index ade5dda4d9dd..e07c51fefd9c 100644 --- a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html +++ b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html @@ -16,7 +16,7 @@ // Test that fullscreen's allowlist is [same_origin, cross_origin, 'https://www.example.com'] test(function() { assert_array_equals( - document.policy.getAllowlistForFeature('fullscreen').sort(), + document.featurePolicy.getAllowlistForFeature('fullscreen').sort(), [same_origin, cross_origin, 'https://www.example.com'].sort()); }, header_policy + ' -- test allowlist is [same_origin, cross_origin, https://www.example.com]'); diff --git a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-declined.https.sub.html b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-declined.https.sub.html index 531c919aa035..d00d592d9ac4 100644 --- a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-declined.https.sub.html +++ b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-declined.https.sub.html @@ -16,7 +16,7 @@ // Test that fullscreen's allowlist is [same_origin, cross_origin, 'https://www.example.com'] test(function() { assert_array_equals( - document.policy.getAllowlistForFeature('fullscreen'), + document.featurePolicy.getAllowlistForFeature('fullscreen'), [cross_origin, 'https://www.example.com'].sort()); }, header_policy + ' -- test allowlist is [cross_origin, https://www.example.com]'); diff --git a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-disallowed-for-all.https.sub.html b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-disallowed-for-all.https.sub.html index c025705a36b1..9a0f483ce44b 100644 --- a/testing/web-platform/tests/feature-policy/feature-policy-header-policy-disallowed-for-all.https.sub.html +++ b/testing/web-platform/tests/feature-policy/feature-policy-header-policy-disallowed-for-all.https.sub.html @@ -15,7 +15,7 @@ // Test that fullscreen's allowlist is [] test(function() { assert_array_equals( - document.policy.getAllowlistForFeature('fullscreen'), + document.featurePolicy.getAllowlistForFeature('fullscreen'), []); }, header_policy + ' -- test allowlist is []'); diff --git a/testing/web-platform/tests/feature-policy/idlharness.window.js b/testing/web-platform/tests/feature-policy/idlharness.window.js index fb17cab982ac..33bbe3c14ffe 100644 --- a/testing/web-platform/tests/feature-policy/idlharness.window.js +++ b/testing/web-platform/tests/feature-policy/idlharness.window.js @@ -12,7 +12,7 @@ idl_test( idl_array.add_objects({ Document: ['document'], HTMLIframeElement: ['document.createElement("iframe")'], - Policy: ['document.policy'], + FeaturePolicy: ['document.featurePolicy'], }) } ); diff --git a/testing/web-platform/tests/feature-policy/payment-supported-by-feature-policy.tentative.html b/testing/web-platform/tests/feature-policy/payment-supported-by-feature-policy.tentative.html new file mode 100644 index 000000000000..07dec701769d --- /dev/null +++ b/testing/web-platform/tests/feature-policy/payment-supported-by-feature-policy.tentative.html @@ -0,0 +1,11 @@ + +Test that payment is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/feature-policy/picture-in-picture-supported-by-feature-policy.html b/testing/web-platform/tests/feature-policy/picture-in-picture-supported-by-feature-policy.html new file mode 100644 index 000000000000..a65c682a6add --- /dev/null +++ b/testing/web-platform/tests/feature-policy/picture-in-picture-supported-by-feature-policy.html @@ -0,0 +1,11 @@ + +Test that picture-in-picture is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/feature-policy/reporting/camera-report-only.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/camera-report-only.https.html.headers index 46b84811f555..d7e19c072f78 100644 --- a/testing/web-platform/tests/feature-policy/reporting/camera-report-only.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/camera-report-only.https.html.headers @@ -1 +1 @@ -Feature-Policy: camera-report-only 'none' +Feature-Policy-Report-Only: camera 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/document-write-report-only.html.headers b/testing/web-platform/tests/feature-policy/reporting/document-write-report-only.html.headers index 63e43f1d7193..bd1418700c23 100644 --- a/testing/web-platform/tests/feature-policy/reporting/document-write-report-only.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/document-write-report-only.html.headers @@ -1 +1 @@ -Feature-Policy: document-write-report-only 'none' +Feature-Policy-Report-Only: document-write 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/encrypted-media-report-only.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/encrypted-media-report-only.https.html.headers index a2c8fbb44259..37e625f31d13 100644 --- a/testing/web-platform/tests/feature-policy/reporting/encrypted-media-report-only.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/encrypted-media-report-only.https.html.headers @@ -1 +1 @@ -Feature-Policy: encrypted-media-report-only 'none' +Feature-Policy-Report-Only: encrypted-media 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/fullscreen-report-only.html.headers b/testing/web-platform/tests/feature-policy/reporting/fullscreen-report-only.html.headers index 33defa88f6ef..1137afb1a688 100644 --- a/testing/web-platform/tests/feature-policy/reporting/fullscreen-report-only.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/fullscreen-report-only.html.headers @@ -1 +1 @@ -Feature-Policy: fullscreen-report-only 'none' +Feature-Policy-Report-Only: fullscreen 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/generic-sensor-report-only.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/generic-sensor-report-only.https.html.headers index 26605eb0fa6c..9d49d997f626 100644 --- a/testing/web-platform/tests/feature-policy/reporting/generic-sensor-report-only.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/generic-sensor-report-only.https.html.headers @@ -1 +1 @@ -Feature-Policy: ambient-light-sensor-report-only 'none'; accelerometer-report-only 'none'; gyroscope-report-only 'none'; magnetometer-report-only 'none' +Feature-Policy-Report-Only: ambient-light-sensor 'none'; accelerometer 'none'; gyroscope 'none'; magnetometer 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/geolocation-report-only.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/geolocation-report-only.https.html.headers index fc9859000f56..ba0662f577b0 100644 --- a/testing/web-platform/tests/feature-policy/reporting/geolocation-report-only.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/geolocation-report-only.https.html.headers @@ -1 +1 @@ -Feature-Policy: geolocation-report-only 'none' +Feature-Policy-Report-Only: geolocation 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/image.bmp b/testing/web-platform/tests/feature-policy/reporting/image.bmp new file mode 100644 index 000000000000..f2b88690fcf1 Binary files /dev/null and b/testing/web-platform/tests/feature-policy/reporting/image.bmp differ diff --git a/testing/web-platform/tests/feature-policy/reporting/legacy-image-formats-reporting.html b/testing/web-platform/tests/feature-policy/reporting/legacy-image-formats-reporting.html new file mode 100644 index 000000000000..6cd2e752eb91 --- /dev/null +++ b/testing/web-platform/tests/feature-policy/reporting/legacy-image-formats-reporting.html @@ -0,0 +1,24 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/feature-policy/reporting/legacy-image-formats-reporting.html.headers b/testing/web-platform/tests/feature-policy/reporting/legacy-image-formats-reporting.html.headers new file mode 100644 index 000000000000..1003c32a445d --- /dev/null +++ b/testing/web-platform/tests/feature-policy/reporting/legacy-image-formats-reporting.html.headers @@ -0,0 +1 @@ +Feature-Policy: legacy-image-formats 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/microphone-report-only.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/microphone-report-only.https.html.headers index 7673d05b9485..5342e71dec8c 100644 --- a/testing/web-platform/tests/feature-policy/reporting/microphone-report-only.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/microphone-report-only.https.html.headers @@ -1 +1 @@ -Feature-Policy: microphone-report-only 'none' +Feature-Policy-Report-Only: microphone 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/midi-report-only.html.headers b/testing/web-platform/tests/feature-policy/reporting/midi-report-only.html.headers index 3c6a2d4fbb32..d307ccc9b09c 100644 --- a/testing/web-platform/tests/feature-policy/reporting/midi-report-only.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/midi-report-only.html.headers @@ -1 +1 @@ -Feature-Policy: midi-report-only 'none' +Feature-Policy-Report-Only: midi 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/payment-report-only.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/payment-report-only.https.html.headers index 6411478e4ca3..dc41987d022b 100644 --- a/testing/web-platform/tests/feature-policy/reporting/payment-report-only.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/payment-report-only.https.html.headers @@ -1 +1 @@ -Feature-Policy: payment-report-only 'none' +Feature-Policy-Report-Only: payment 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/picture-in-picture-report-only.html.headers b/testing/web-platform/tests/feature-policy/reporting/picture-in-picture-report-only.html.headers index 0df90a3e94a3..b3ec5aaccf07 100644 --- a/testing/web-platform/tests/feature-policy/reporting/picture-in-picture-report-only.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/picture-in-picture-report-only.html.headers @@ -1 +1 @@ -Feature-Policy: picture-in-picture-report-only 'none' +Feature-Policy-Report-Only: picture-in-picture 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/sync-xhr-report-only.html.headers b/testing/web-platform/tests/feature-policy/reporting/sync-xhr-report-only.html.headers index 79a82cfb6351..819dc7addcf1 100644 --- a/testing/web-platform/tests/feature-policy/reporting/sync-xhr-report-only.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/sync-xhr-report-only.html.headers @@ -1 +1 @@ -Feature-Policy: sync-xhr-report-only 'none' +Feature-Policy-Report-Only: sync-xhr 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/unoptimized-image.jpg b/testing/web-platform/tests/feature-policy/reporting/unoptimized-image.jpg new file mode 100644 index 000000000000..599137a55d71 Binary files /dev/null and b/testing/web-platform/tests/feature-policy/reporting/unoptimized-image.jpg differ diff --git a/testing/web-platform/tests/feature-policy/reporting/unoptimized-images-reporting.html b/testing/web-platform/tests/feature-policy/reporting/unoptimized-images-reporting.html new file mode 100644 index 000000000000..fb27a13996a4 --- /dev/null +++ b/testing/web-platform/tests/feature-policy/reporting/unoptimized-images-reporting.html @@ -0,0 +1,24 @@ + + + + + + + + + + + diff --git a/testing/web-platform/tests/feature-policy/reporting/unoptimized-images-reporting.html.headers b/testing/web-platform/tests/feature-policy/reporting/unoptimized-images-reporting.html.headers new file mode 100644 index 000000000000..10b41235409e --- /dev/null +++ b/testing/web-platform/tests/feature-policy/reporting/unoptimized-images-reporting.html.headers @@ -0,0 +1 @@ +Feature-Policy: unoptimized-images 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/usb-report-only.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/usb-report-only.https.html.headers index bd2e3c6fe508..2705af70cee8 100644 --- a/testing/web-platform/tests/feature-policy/reporting/usb-report-only.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/usb-report-only.https.html.headers @@ -1 +1 @@ -Feature-Policy: usb-report-only 'none' +Feature-Policy-Report-Only: usb 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/vr-report-only.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/vr-report-only.https.html.headers index b54cad2af941..0761021f45e1 100644 --- a/testing/web-platform/tests/feature-policy/reporting/vr-report-only.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/vr-report-only.https.html.headers @@ -1 +1 @@ -Feature-Policy: vr-report-only 'none' +Feature-Policy-Report-Only: vr 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/xr-report-only.https.html b/testing/web-platform/tests/feature-policy/reporting/xr-report-only.https.html index b52bdbfaa470..6844226f2bd2 100644 --- a/testing/web-platform/tests/feature-policy/reporting/xr-report-only.https.html +++ b/testing/web-platform/tests/feature-policy/reporting/xr-report-only.https.html @@ -23,11 +23,11 @@ promise_test(async t => { {types: ['feature-policy-violation']}).observe(); }); try { - await navigator.xr.requestDevice(); + await navigator.xr.supportsSessionMode('inline'); } catch (err) { - // If no XR devices are available, requestDevice() will throw NotFoundError, - // but the report should be generated anyway. - assert_equals(err.name, 'NotFoundError'); + // If no XR devices are available, supportsSessionMode() will reject with a + // NotSupportedError, but the report should be generated anyway. + assert_equals(err.name, 'NotSupportedError'); } check_report_format(await report); }, "XR report only mode"); diff --git a/testing/web-platform/tests/feature-policy/reporting/xr-report-only.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/xr-report-only.https.html.headers index b54cad2af941..0761021f45e1 100644 --- a/testing/web-platform/tests/feature-policy/reporting/xr-report-only.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/xr-report-only.https.html.headers @@ -1 +1 @@ -Feature-Policy: vr-report-only 'none' +Feature-Policy-Report-Only: vr 'none' diff --git a/testing/web-platform/tests/feature-policy/reporting/xr-reporting.https.html b/testing/web-platform/tests/feature-policy/reporting/xr-reporting.https.html index b737bb9a6047..1982ea544c53 100644 --- a/testing/web-platform/tests/feature-policy/reporting/xr-reporting.https.html +++ b/testing/web-platform/tests/feature-policy/reporting/xr-reporting.https.html @@ -22,7 +22,7 @@ promise_test(async (t) => { new ReportingObserver((reports, observer) => resolve([reports, observer]), {types: ['feature-policy-violation']}).observe(); }); - await promise_rejects(t, 'SecurityError', navigator.xr.requestDevice(), + await promise_rejects(t, 'SecurityError', navigator.xr.supportsSessionMode('inline'), "XR device access should not be allowed in this document."); const [reports, observer] = await report; check_report_format(reports, observer); diff --git a/testing/web-platform/tests/feature-policy/reporting/xr-reporting.https.html.headers b/testing/web-platform/tests/feature-policy/reporting/xr-reporting.https.html.headers index ea8722131ce0..d021af75636d 100644 --- a/testing/web-platform/tests/feature-policy/reporting/xr-reporting.https.html.headers +++ b/testing/web-platform/tests/feature-policy/reporting/xr-reporting.https.html.headers @@ -1 +1 @@ -Feature-Policy: xr 'none' +Feature-Policy: vr 'none' diff --git a/testing/web-platform/tests/feature-policy/resources/feature-policy-allowedfeatures.html b/testing/web-platform/tests/feature-policy/resources/feature-policy-allowedfeatures.html index 9cc8e1e33a32..f4b020273fd3 100644 --- a/testing/web-platform/tests/feature-policy/resources/feature-policy-allowedfeatures.html +++ b/testing/web-platform/tests/feature-policy/resources/feature-policy-allowedfeatures.html @@ -2,6 +2,6 @@ 'use strict'; window.onload = function() { - parent.postMessage(document.policy.allowedFeatures(), '*'); + parent.postMessage(document.featurePolicy.allowedFeatures(), '*'); } diff --git a/testing/web-platform/tests/feature-policy/resources/featurepolicy.js b/testing/web-platform/tests/feature-policy/resources/featurepolicy.js index e0f0faf6ca2c..e2577f35c3fb 100644 --- a/testing/web-platform/tests/feature-policy/resources/featurepolicy.js +++ b/testing/web-platform/tests/feature-policy/resources/featurepolicy.js @@ -1,6 +1,7 @@ // Feature test to avoid timeouts function assert_feature_policy_supported() { - assert_not_equals(document.policy, undefined, 'Feature Policy is supported'); + assert_not_equals(document.featurePolicy, undefined, + 'Feature Policy is supported'); } // Tests whether a feature that is enabled/disabled by feature policy works // as expected. @@ -257,7 +258,8 @@ function run_all_fp_tests_allow_all( // Arguments: // expected_policy: A list of {feature, allowlist} pairs where the feature is // enabled for every origin in the allowlist, in the |policy|. -// policy: Either a document.policy or a iframe.policy to be tested. +// policy: Either a document.featurePolicy or an iframe.featurePolicy to be +// tested. // message: A short description of what policy is being tested. function test_allowlists(expected_policy, policy, message) { for (var allowlist of allowlists) { @@ -409,7 +411,7 @@ function test_frame_policy( document.body.appendChild(frame); // frame_policy should be dynamically updated as allow and allowfullscreen is // updated. - var frame_policy = frame.policy; + var frame_policy = frame.featurePolicy; if (typeof allow !== 'undefined') { frame.setAttribute('allow', allow); } diff --git a/testing/web-platform/tests/fetch/api/abort/general.any.js b/testing/web-platform/tests/fetch/api/abort/general.any.js index 4bc404d9e8a2..d6159c7e1b02 100644 --- a/testing/web-platform/tests/fetch/api/abort/general.any.js +++ b/testing/web-platform/tests/fetch/api/abort/general.any.js @@ -1,5 +1,6 @@ // META: global=window,worker // META: script=/common/utils.js +// META: script=/common/get-host-info.sub.js // META: script=../request/request-error.js const BODY_METHODS = ['arrayBuffer', 'blob', 'formData', 'json', 'text']; @@ -16,6 +17,9 @@ function abortRequests() { ); } +const hostInfo = get_host_info(); +const urlHostname = hostInfo.REMOTE_HOST; + promise_test(async t => { const controller = new AbortController(); const signal = controller.signal; @@ -32,7 +36,7 @@ promise_test(async t => { controller.abort(); const url = new URL('../resources/data.json', location); - url.hostname = 'www1.' + url.hostname; + url.hostname = urlHostname; const fetchPromise = fetch(url, { signal, @@ -315,7 +319,7 @@ promise_test(async t => { requestAbortKeys.push(abortKey); const url = new URL(`../resources/infinite-slow-response.py?stateKey=${stateKey}&abortKey=${abortKey}`, location); - url.hostname = 'www1.' + url.hostname; + url.hostname = urlHostname; await fetch(url, { signal, @@ -323,7 +327,7 @@ promise_test(async t => { }); const stashTakeURL = new URL(`../resources/stash-take.py?key=${stateKey}`, location); - stashTakeURL.hostname = 'www1.' + stashTakeURL.hostname; + stashTakeURL.hostname = urlHostname; const beforeAbortResult = await fetch(stashTakeURL).then(r => r.json()); assert_equals(beforeAbortResult, "open", "Connection is open"); diff --git a/testing/web-platform/tests/fetch/api/basic/mode-no-cors.sub.any.js b/testing/web-platform/tests/fetch/api/basic/mode-no-cors.sub.any.js index 709eef5bf1db..a4abcac55f39 100644 --- a/testing/web-platform/tests/fetch/api/basic/mode-no-cors.sub.any.js +++ b/testing/web-platform/tests/fetch/api/basic/mode-no-cors.sub.any.js @@ -7,6 +7,7 @@ function fetchNoCors(url, isOpaqueFiltered) { return fetch(url + urlQuery, {"mode": "no-cors"}).then(function(resp) { assert_equals(resp.status, 0, "Opaque filter: status is 0"); assert_equals(resp.statusText, "", "Opaque filter: statusText is \"\""); + assert_equals(resp.url, "", "Opaque filter: url is \"\""); assert_equals(resp.type , "opaque", "Opaque filter: response's type is opaque"); assert_equals(resp.headers.get("x-is-filtered"), null, "Header x-is-filtered is filtered"); }); diff --git a/testing/web-platform/tests/fetch/corb/img-mime-types-coverage.tentative.sub.html b/testing/web-platform/tests/fetch/corb/img-mime-types-coverage.tentative.sub.html index 65c5b846d534..223a0a375c33 100644 --- a/testing/web-platform/tests/fetch/corb/img-mime-types-coverage.tentative.sub.html +++ b/testing/web-platform/tests/fetch/corb/img-mime-types-coverage.tentative.sub.html @@ -45,7 +45,12 @@ const get_url = (mime) => { // www1 is cross-origin, so the HTTP response is CORB-eligible --> - url = "http://{{domains[www1]}}:{{ports[http][0]}}" + // + // TODO(lukasza@chromium.org): Once https://crbug.com/888079 and + // https://crbug.com/891872 are fixed, we should use a cross-*origin* + // rather than cross-*site* URL below (e.g. s/hosts[alt]/domains/g). + // See also https://crbug.com/918660 for more context. + url = "http://{{hosts[alt][www1]}}:{{ports[http][0]}}" url = url + "/fetch/nosniff/resources/image.py" if (mime != null) { url += "?type=" + encodeURIComponent(mime) diff --git a/testing/web-platform/tests/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html b/testing/web-platform/tests/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html index 82adc47b0cf3..46403b0b1810 100644 --- a/testing/web-platform/tests/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html +++ b/testing/web-platform/tests/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html @@ -7,5 +7,11 @@ - - + + diff --git a/testing/web-platform/tests/fetch/corb/preload-image-png-mislabeled-as-html-nosniff.tentative.sub.html b/testing/web-platform/tests/fetch/corb/preload-image-png-mislabeled-as-html-nosniff.tentative.sub.html index cea80f2f89fa..2fc93f8317e6 100644 --- a/testing/web-platform/tests/fetch/corb/preload-image-png-mislabeled-as-html-nosniff.tentative.sub.html +++ b/testing/web-platform/tests/fetch/corb/preload-image-png-mislabeled-as-html-nosniff.tentative.sub.html @@ -17,8 +17,14 @@ async_test(function(t) { }); - + + href="http://{{hosts[alt][www1]}}:{{ports[http][0]}}/fetch/corb/resources/png-mislabeled-as-html-nosniff.png"> diff --git a/testing/web-platform/tests/fetch/corb/script-html-correctly-labeled.tentative.sub.html b/testing/web-platform/tests/fetch/corb/script-html-correctly-labeled.tentative.sub.html index 8f4d7679e3d7..407cef915844 100644 --- a/testing/web-platform/tests/fetch/corb/script-html-correctly-labeled.tentative.sub.html +++ b/testing/web-platform/tests/fetch/corb/script-html-correctly-labeled.tentative.sub.html @@ -24,7 +24,12 @@ async_test(function(t) { }); // www1 is cross-origin, so the HTTP response is CORB-eligible. - script.src = 'http://{{domains[www1]}}:{{ports[http][0]}}/fetch/corb/resources/html-correctly-labeled.html'; + // + // TODO(lukasza@chromium.org): Once https://crbug.com/888079 and + // https://crbug.com/891872 are fixed, we should use a cross-*origin* + // rather than cross-*site* URL below (e.g. s/hosts[alt]/domains/g). + // See also https://crbug.com/918660 for more context. + script.src = 'http://{{hosts[alt][www1]}}:{{ports[http][0]}}/fetch/corb/resources/html-correctly-labeled.html'; document.body.appendChild(script) }, "CORB-blocked script has no syntax errors"); diff --git a/testing/web-platform/tests/fetch/corb/script-resource-with-json-parser-breaker.tentative.sub.html b/testing/web-platform/tests/fetch/corb/script-resource-with-json-parser-breaker.tentative.sub.html index cabc7b09c458..03924cdad0db 100644 --- a/testing/web-platform/tests/fetch/corb/script-resource-with-json-parser-breaker.tentative.sub.html +++ b/testing/web-platform/tests/fetch/corb/script-resource-with-json-parser-breaker.tentative.sub.html @@ -68,7 +68,12 @@ function test(mime_type, body) { }); // www1 is cross-origin, so the HTTP response is CORB-eligible. - var src_prefix = "http://{{domains[www1]}}:{{ports[http][0]}}/fetch/corb/resources/sniffable-resource.py"; + // + // TODO(lukasza@chromium.org): Once https://crbug.com/888079 and + // https://crbug.com/891872 are fixed, we should use a cross-*origin* + // rather than cross-*site* URL below (e.g. s/hosts[alt]/domains/g). + // See also https://crbug.com/918660 for more context. + var src_prefix = "http://{{hosts[alt][www1]}}:{{ports[http][0]}}/fetch/corb/resources/sniffable-resource.py"; script.src = src_prefix + "?type=" + mime_type + "&body=" + encodeURIComponent(body); document.body.appendChild(script) }, "CORB-blocks '" + mime_type + "' that starts with the following JSON parser breaker: " + body); diff --git a/testing/web-platform/tests/fetch/cross-origin-resource-policy/fetch.any.js b/testing/web-platform/tests/fetch/cross-origin-resource-policy/fetch.any.js index ded3bdc5daee..6f40c8465635 100644 --- a/testing/web-platform/tests/fetch/cross-origin-resource-policy/fetch.any.js +++ b/testing/web-platform/tests/fetch/cross-origin-resource-policy/fetch.any.js @@ -1,4 +1,4 @@ -// META: global=window,worker +// META: global=window,dedicatedworker,sharedworker // META: script=/common/get-host-info.sub.js const host = get_host_info(); @@ -40,8 +40,8 @@ promise_test((test) => { promise_test((test) => { const remoteURL = httpsBaseURL + "resources/hello.py?corp=same-site"; - return fetch(remoteURL, { mode: "no-cors" }); -}, "Cross-origin no-cors fetch to a same-site URL with a 'Cross-Origin-Resource-Policy: same-site' response header."); + return promise_rejects(test, new TypeError, fetch(remoteURL, { mode: "no-cors" })); +}, "Cross-scheme (HTTP to HTTPS) no-cors fetch to a same-site URL with a 'Cross-Origin-Resource-Policy: same-site' response header."); promise_test((test) => { const remoteURL = httpsBaseURL + "resources/hello.py?corp=same-origin"; diff --git a/testing/web-platform/tests/fetch/cross-origin-resource-policy/fetch.https.any.js b/testing/web-platform/tests/fetch/cross-origin-resource-policy/fetch.https.any.js new file mode 100644 index 000000000000..98b9ba478531 --- /dev/null +++ b/testing/web-platform/tests/fetch/cross-origin-resource-policy/fetch.https.any.js @@ -0,0 +1,55 @@ +// META: global=window,worker +// META: script=/common/get-host-info.sub.js + +const host = get_host_info(); +const path = "/fetch/cross-origin-resource-policy/"; +const localBaseURL = host.HTTPS_ORIGIN + path; +const notSameSiteBaseURL = host.HTTPS_NOTSAMESITE_ORIGIN + path; + +promise_test(async () => { + const response = await fetch("./resources/hello.py?corp=same-origin"); + assert_equals(await response.text(), "hello"); +}, "Same-origin fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header."); + +promise_test(async () => { + const response = await fetch("./resources/hello.py?corp=same-site"); + assert_equals(await response.text(), "hello"); +}, "Same-origin fetch with a 'Cross-Origin-Resource-Policy: same-site' response header."); + +promise_test(async (test) => { + const response = await fetch(notSameSiteBaseURL + "resources/hello.py?corp=same-origin"); + assert_equals(await response.text(), "hello"); +}, "Cross-origin cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header."); + +promise_test(async (test) => { + const response = await fetch(notSameSiteBaseURL + "resources/hello.py?corp=same-site"); + assert_equals(await response.text(), "hello"); +}, "Cross-origin cors fetch with a 'Cross-Origin-Resource-Policy: same-site' response header."); + +promise_test((test) => { + const remoteURL = notSameSiteBaseURL + "resources/hello.py?corp=same-origin"; + return promise_rejects(test, new TypeError, fetch(remoteURL, { mode : "no-cors" })); +}, "Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header."); + +promise_test((test) => { + const remoteURL = notSameSiteBaseURL + "resources/hello.py?corp=same-site"; + return promise_rejects(test, new TypeError, fetch(remoteURL, { mode: "no-cors" })); +}, "Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-site' response header."); + +promise_test((test) => { + const finalURL = notSameSiteBaseURL + "resources/hello.py?corp=same-origin"; + return promise_rejects(test, new TypeError, fetch("resources/redirect.py?redirectTo=" + encodeURIComponent(finalURL), { mode: "no-cors" })); +}, "Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header after a redirection."); + +promise_test((test) => { + const finalURL = localBaseURL + "resources/hello.py?corp=same-origin"; + return fetch(notSameSiteBaseURL + "resources/redirect.py?redirectTo=" + encodeURIComponent(finalURL), { mode: "no-cors" }); +}, "Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' response header after a cross-origin redirection."); + +promise_test(async (test) => { + const finalURL = localBaseURL + "resources/hello.py?corp=same-origin"; + + await fetch(finalURL, { mode: "no-cors" }); + + return promise_rejects(test, new TypeError, fetch(notSameSiteBaseURL + "resources/redirect.py?corp=same-origin&redirectTo=" + encodeURIComponent(finalURL), { mode: "no-cors" })); +}, "Cross-origin no-cors fetch with a 'Cross-Origin-Resource-Policy: same-origin' redirect response header."); diff --git a/testing/web-platform/tests/fetch/cross-origin-resource-policy/syntax.any.js b/testing/web-platform/tests/fetch/cross-origin-resource-policy/syntax.any.js index cf5b06d5c4f4..dc874977a63e 100644 --- a/testing/web-platform/tests/fetch/cross-origin-resource-policy/syntax.any.js +++ b/testing/web-platform/tests/fetch/cross-origin-resource-policy/syntax.any.js @@ -8,7 +8,8 @@ const crossOriginURL = get_host_info().HTTP_REMOTE_ORIGIN + "/fetch/cross-origin "SAME-ORIGIN", "Same-Origin", "same-origin, <>", - "same-origin, same-origin" + "same-origin, same-origin", + "https://www.example.com", // See https://github.com/whatwg/fetch/issues/760 ].forEach(incorrectHeaderValue => { // Note: an incorrect value results in a successful load, so this test is only meaningful in // implementations with support for the header. diff --git a/testing/web-platform/tests/fetch/http-cache/post-patch.html b/testing/web-platform/tests/fetch/http-cache/post-patch.html new file mode 100644 index 000000000000..9025a96e4e35 --- /dev/null +++ b/testing/web-platform/tests/fetch/http-cache/post-patch.html @@ -0,0 +1,57 @@ + + + + + HTTP Cache - Caching POST and PATCH responses + + + + + + + + + + + + diff --git a/testing/web-platform/tests/fetch/http-cache/resources/http-cache.py b/testing/web-platform/tests/fetch/http-cache/resources/http-cache.py index b22dadada3be..e64fe6dfea0e 100755 --- a/testing/web-platform/tests/fetch/http-cache/resources/http-cache.py +++ b/testing/web-platform/tests/fetch/http-cache/resources/http-cache.py @@ -46,7 +46,10 @@ def handle_test(uuid, request, response): now = time.time() for header in config.get('response_headers', []): if header[0].lower() in LOCATIONHDRS: # magic locations - header[1] = "%s&target=%s" % (request.url, header[1]) + if (len(header[1]) > 0): + header[1] = "%s&target=%s" % (request.url, header[1]) + else: + header[1] = request.url if header[0].lower() in DATEHDRS and isinstance(header[1], int): # magic dates header[1] = http_date(now, header[1]) response.headers.set(header[0], header[1]) diff --git a/testing/web-platform/tests/fetch/sec-metadata/embed.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/embed.tentative.https.sub.html index 745ef42d484f..1c69c021accb 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/embed.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/embed.tentative.https.sub.html @@ -13,7 +13,7 @@ let e = document.createElement('embed'); e.src = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; e.onload = e => { - let expected = {"destination":"embed", "site":"same-origin"}; + let expected = {"dest":"embed", "site":"same-origin", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -32,7 +32,7 @@ let e = document.createElement('embed'); e.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; e.onload = e => { - let expected = {"destination":"embed", "site":"same-site"}; + let expected = {"dest":"embed", "site":"same-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -51,7 +51,7 @@ let e = document.createElement('embed'); e.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; e.onload = e => { - let expected = {"destination":"embed", "site":"cross-site"}; + let expected = {"dest":"embed", "site":"cross-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) diff --git a/testing/web-platform/tests/fetch/sec-metadata/fetch.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/fetch.tentative.https.sub.html index d18042ca98b0..f6460b4efca7 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/fetch.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/fetch.tentative.https.sub.html @@ -7,10 +7,10 @@ return fetch("https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/echo-as-json.py") .then(r => r.json()) .then(j => { - assert_header_equals(j.header, { - "cause": undefined, - "destination": "empty", - "site": "same-origin" + assert_header_equals(j, { + "dest": "empty", + "site": "same-origin", + "user":"?F" }); }); }, "Same-origin fetch"); @@ -19,10 +19,10 @@ return fetch("https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/echo-as-json.py") .then(r => r.json()) .then(j => { - assert_header_equals(j.header, { - "cause": undefined, - "destination": "empty", - "site": "same-site" + assert_header_equals(j, { + "dest": "empty", + "site": "same-site", + "user":"?F" }); }); }, "Same-site fetch"); @@ -31,10 +31,10 @@ return fetch("https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/echo-as-json.py") .then(r => r.json()) .then(j => { - assert_header_equals(j.header, { - "cause": undefined, - "destination": "empty", - "site": "cross-site" + assert_header_equals(j, { + "dest": "empty", + "site": "cross-site", + "user":"?F" }); }); }, "Cross-site fetch"); diff --git a/testing/web-platform/tests/fetch/sec-metadata/font.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/font.tentative.https.sub.html index 0a75531c405f..d2bcf6928848 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/font.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/font.tentative.https.sub.html @@ -46,7 +46,7 @@ promise_test(t => { return new Promise((resolve, reject) => { let key = "font-same-origin"; - let expected = {"destination":"font", "site":"same-origin"}; + let expected = {"dest":"font", "site":"same-origin", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -58,7 +58,7 @@ promise_test(t => { return new Promise((resolve, reject) => { let key = "font-same-site"; - let expected = {"destination":"font", "site":"same-site"}; + let expected = {"dest":"font", "site":"same-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -70,7 +70,7 @@ promise_test(t => { return new Promise((resolve, reject) => { let key = "font-cross-site"; - let expected = {"destination":"font", "site":"cross-site"}; + let expected = {"dest":"font", "site":"cross-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) diff --git a/testing/web-platform/tests/fetch/sec-metadata/iframe.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/iframe.tentative.https.sub.html index 8d89cda8936c..6ee14300296b 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/iframe.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/iframe.tentative.https.sub.html @@ -12,9 +12,9 @@ return; assert_header_equals(e.data, { - "cause": "forced", - "destination": "nested-document", - "site": "same-origin" + "dest": "nested-document", + "site": "same-origin", + "user":"?F" }); t.done(); })); @@ -30,9 +30,9 @@ return; assert_header_equals(e.data, { - "cause": "forced", - "destination": "nested-document", - "site": "same-site" + "dest": "nested-document", + "site": "same-site", + "user": "?F" }); t.done(); })); @@ -48,9 +48,9 @@ return; assert_header_equals(e.data, { - "cause": "forced", - "destination": "nested-document", - "site": "cross-site" + "dest": "nested-document", + "site": "cross-site", + "user": "?F" }); t.done(); })); diff --git a/testing/web-platform/tests/fetch/sec-metadata/img.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/img.tentative.https.sub.html index 20701a651465..c5c389503cca 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/img.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/img.tentative.https.sub.html @@ -11,10 +11,17 @@ loadImageInWindow( "https://{{host}}:{{ports[https][0]}}/referrer-policy/generic/subresource/image.py", t.step_func_done(img => { - assert_header_equals(decodeImageData(extractImageData(img)).headers["sec-metadata"], { - "cause": undefined, - "destination": "image", - "site": "same-origin" + headers = decodeImageData(extractImageData(img)).headers; + got = { + "dest": headers["sec-fetch-dest"], + "mode": headers["sec-fetch-mode"], + "site": headers["sec-fetch-site"], + "user": headers["sec-fetch-user"] + }; + assert_header_equals(got, { + "dest": "image", + "site": "same-origin", + "user": "?F" }); }), [], @@ -25,10 +32,17 @@ loadImageInWindow( "https://{{hosts[][www]}}:{{ports[https][0]}}/referrer-policy/generic/subresource/image.py", t.step_func_done(img => { - assert_header_equals(decodeImageData(extractImageData(img)).headers["sec-metadata"], { - "cause": undefined, - "destination": "image", - "site": "same-site" + headers = decodeImageData(extractImageData(img)).headers; + got = { + "dest": headers["sec-fetch-dest"], + "mode": headers["sec-fetch-mode"], + "site": headers["sec-fetch-site"], + "user": headers["sec-fetch-user"] + }; + assert_header_equals(got, { + "dest": "image", + "site": "same-site", + "user": "?F" }); }), [], @@ -39,10 +53,17 @@ loadImageInWindow( "https://{{hosts[alt][www]}}:{{ports[https][0]}}/referrer-policy/generic/subresource/image.py", t.step_func_done(img => { - assert_header_equals(decodeImageData(extractImageData(img)).headers["sec-metadata"], { - "cause": undefined, - "destination": "image", - "site": "cross-site" + headers = decodeImageData(extractImageData(img)).headers; + got = { + "dest": headers["sec-fetch-dest"], + "mode": headers["sec-fetch-mode"], + "site": headers["sec-fetch-site"], + "user": headers["sec-fetch-user"] + }; + assert_header_equals(got, { + "dest": "image", + "site": "cross-site", + "user": "?F" }); }), [], diff --git a/testing/web-platform/tests/fetch/sec-metadata/object.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/object.tentative.https.sub.html index e1ac53157e02..0b9839470d1d 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/object.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/object.tentative.https.sub.html @@ -13,7 +13,7 @@ let e = document.createElement('object'); e.data = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; e.onload = e => { - let expected = {"destination":"object", "site":"same-origin"}; + let expected = {"dest":"object", "site":"same-origin", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -32,7 +32,7 @@ let e = document.createElement('object'); e.data = "https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; e.onload = e => { - let expected = {"destination":"object", "site":"same-site"}; + let expected = {"dest":"object", "site":"same-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -51,7 +51,7 @@ let e = document.createElement('object'); e.data = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; e.onload = e => { - let expected = {"destination":"object", "site":"cross-site"}; + let expected = {"dest":"object", "site":"cross-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) diff --git a/testing/web-platform/tests/fetch/sec-metadata/redirect/cross-site-redirect.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/redirect/cross-site-redirect.tentative.https.sub.html index 9f497a9b62b8..56d88d9156c7 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/redirect/cross-site-redirect.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/redirect/cross-site-redirect.tentative.https.sub.html @@ -12,7 +12,7 @@ promise_test(t => { let e = document.createElement('img'); e.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; - let expected = {"destination":"image", "site":"cross-site"}; + let expected = {"dest":"image", "site":"cross-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) @@ -38,7 +38,7 @@ promise_test(t => { let e = document.createElement('img'); e.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; - let expected = {"destination":"image", "site":"cross-site"}; + let expected = {"dest":"image", "site":"cross-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) @@ -64,7 +64,7 @@ promise_test(t => { let e = document.createElement('img'); e.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; - let expected = {"destination":"image", "site":"cross-site"}; + let expected = {"dest":"image", "site":"cross-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) diff --git a/testing/web-platform/tests/fetch/sec-metadata/redirect/multiple-redirect-cross-site.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/redirect/multiple-redirect-cross-site.tentative.https.sub.html index fdd8733ba6d6..f6d18f568f1a 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/redirect/multiple-redirect-cross-site.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/redirect/multiple-redirect-cross-site.tentative.https.sub.html @@ -14,7 +14,7 @@ promise_test(t => { e.src = "https://{{host}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=" +// same-origin "https://{{hosts[alt][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=" +// cross-site "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key;// same-origin - let expected = {"destination":"image", "site":"cross-site"}; + let expected = {"dest":"image", "site":"cross-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) diff --git a/testing/web-platform/tests/fetch/sec-metadata/redirect/multiple-redirect-same-site.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/redirect/multiple-redirect-same-site.tentative.https.sub.html index 8fdc943f4c96..4756a79ab258 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/redirect/multiple-redirect-same-site.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/redirect/multiple-redirect-same-site.tentative.https.sub.html @@ -14,7 +14,7 @@ promise_test(t => { e.src = "https://{{host}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=" +// same-origin "https://{{hosts[][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=" +// same-site "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key;// same-origin - let expected = {"destination":"image", "site":"same-site"}; + let expected = {"dest":"image", "site":"same-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) diff --git a/testing/web-platform/tests/fetch/sec-metadata/redirect/same-origin-redirect.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/redirect/same-origin-redirect.tentative.https.sub.html index dea71c3f67dc..8558d6890e6f 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/redirect/same-origin-redirect.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/redirect/same-origin-redirect.tentative.https.sub.html @@ -12,7 +12,7 @@ promise_test(t => { let e = document.createElement('img'); e.src = "/xhr/resources/redirect.py?location=https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; - let expected = {"destination":"image", "site":"same-origin"}; + let expected = {"dest":"image", "site":"same-origin", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) @@ -39,7 +39,7 @@ promise_test(t => { let e = document.createElement('img'); e.src = "/xhr/resources/redirect.py?location=https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; - let expected = {"destination":"image", "site":"same-site"}; + let expected = {"dest":"image", "site":"same-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) @@ -66,7 +66,7 @@ promise_test(t => { let e = document.createElement('img'); e.src = "/xhr/resources/redirect.py?location=https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; - let expected = {"destination":"image", "site":"cross-site"}; + let expected = {"dest":"image", "site":"cross-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) diff --git a/testing/web-platform/tests/fetch/sec-metadata/redirect/same-site-redirect.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/redirect/same-site-redirect.tentative.https.sub.html index a71163a1bfcb..8e05b255b88d 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/redirect/same-site-redirect.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/redirect/same-site-redirect.tentative.https.sub.html @@ -12,7 +12,7 @@ promise_test(t => { let e = document.createElement('img'); e.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; - let expected = {"destination":"image", "site":"same-site"}; + let expected = {"dest":"image", "site":"same-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) @@ -39,7 +39,7 @@ promise_test(t => { let e = document.createElement('img'); e.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; - let expected = {"destination":"image", "site":"same-site"}; + let expected = {"dest":"image", "site":"same-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) @@ -66,7 +66,7 @@ promise_test(t => { let e = document.createElement('img'); e.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; - let expected = {"destination":"image", "site":"cross-site"}; + let expected = {"dest":"image", "site":"cross-site", "user":"?F"}; e.onload = e => { fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) diff --git a/testing/web-platform/tests/fetch/sec-metadata/report.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/report.tentative.https.sub.html index a74da6a7a7d6..1cfa8641ba87 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/report.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/report.tentative.https.sub.html @@ -22,9 +22,9 @@ document.addEventListener("securitypolicyviolation", (e) => { counter++; if (counter == 3) { - generate_test({"destination":"report", "site":"same-origin"}, "same-origin"); - generate_test({"destination":"report", "site":"same-site"}, "same-site"); - generate_test({"destination":"report", "site":"cross-site"}, "cross-site"); + generate_test({"dest":"report", "site":"same-origin", "user":"?F"}, "same-origin"); + generate_test({"dest":"report", "site":"same-site", "user":"?F"}, "same-site"); + generate_test({"dest":"report", "site":"cross-site", "user":"?F"}, "cross-site"); } }); }, "Initialization."); diff --git a/testing/web-platform/tests/fetch/sec-metadata/resources/echo-as-json.py b/testing/web-platform/tests/fetch/sec-metadata/resources/echo-as-json.py index 16cc67774f76..ce5a2d925d17 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/resources/echo-as-json.py +++ b/testing/web-platform/tests/fetch/sec-metadata/resources/echo-as-json.py @@ -8,5 +8,10 @@ def main(request, response): headers.append(("Access-Control-Allow-Origin", request.headers["origin"])) - body = json.dumps({ "header": request.headers.get("sec-metadata", "") }) + body = json.dumps({ + "dest": request.headers.get("sec-fetch-dest", ""), + "mode": request.headers.get("sec-fetch-mode", ""), + "site": request.headers.get("sec-fetch-site", ""), + "user": request.headers.get("sec-fetch-user", ""), + }) return headers, body diff --git a/testing/web-platform/tests/fetch/sec-metadata/resources/echo-as-script.py b/testing/web-platform/tests/fetch/sec-metadata/resources/echo-as-script.py index c1c6a4673acf..7884b096d994 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/resources/echo-as-script.py +++ b/testing/web-platform/tests/fetch/sec-metadata/resources/echo-as-script.py @@ -3,6 +3,11 @@ import json def main(request, response): headers = [("Content-Type", "text/javascript")] - body = "var header = %s;" % json.dumps(request.headers.get("sec-metadata", "")); + body = "var header = %s;" % json.dumps({ + "dest": request.headers.get("sec-fetch-dest", ""), + "mode": request.headers.get("sec-fetch-mode", ""), + "site": request.headers.get("sec-fetch-site", ""), + "user": request.headers.get("sec-fetch-user", ""), + }); return headers, body diff --git a/testing/web-platform/tests/fetch/sec-metadata/resources/helper.js b/testing/web-platform/tests/fetch/sec-metadata/resources/helper.js index 037f7e1e1deb..1a9ec154e02b 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/resources/helper.js +++ b/testing/web-platform/tests/fetch/sec-metadata/resources/helper.js @@ -1,18 +1,11 @@ -function parse_metadata(value) { - let result = {}; - value.split(',').forEach(item => { - let parsed = item.trim().split('='); - result[parsed[0]] = parsed[1]; - }); - return result; -} - function assert_header_equals(value, expected) { - // check that the returned value is an object, not a String - assert_not_equals(value, "", "Empty Sec-Metadata header."); - let result = parse_metadata(value); - assert_equals(result.cause, expected.cause, "cause"); - assert_equals(result.destination, expected.destination, "destination"); - assert_equals(result.target, expected.target, "target"); - assert_equals(result.site, expected.site, "site"); + if (typeof(value) === "string"){ + assert_not_equals(value, "No header has been recorded"); + value = JSON.parse(value); + } + assert_equals(value.dest, expected.dest, "dest"); + // Mode is commented out as no test cases have been filled out yet + // assert_equals(value.mode, expected.mode, "mode"); + assert_equals(value.site, expected.site, "site"); + assert_equals(value.user, expected.user, "user"); } diff --git a/testing/web-platform/tests/fetch/sec-metadata/resources/post-to-owner.py b/testing/web-platform/tests/fetch/sec-metadata/resources/post-to-owner.py index 5472aa5b47e4..81d4ebf74e3a 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/resources/post-to-owner.py +++ b/testing/web-platform/tests/fetch/sec-metadata/resources/post-to-owner.py @@ -12,5 +12,10 @@ def main(request, response): if (window.top != window) window.top.postMessage(data, "*"); - """ % json.dumps(request.headers.get("Sec-Metadata", "")) + """ % json.dumps({ + "dest": request.headers.get("sec-fetch-dest", ""), + "mode": request.headers.get("sec-fetch-mode", ""), + "site": request.headers.get("sec-fetch-site", ""), + "user": request.headers.get("sec-fetch-user", ""), + }) return headers, body diff --git a/testing/web-platform/tests/fetch/sec-metadata/resources/record-header.py b/testing/web-platform/tests/fetch/sec-metadata/resources/record-header.py index adf9a53fa170..f215b0165073 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/resources/record-header.py +++ b/testing/web-platform/tests/fetch/sec-metadata/resources/record-header.py @@ -2,6 +2,7 @@ import os import uuid import hashlib import time +import json def main(request, response): ## Get the query parameter (key) from URL ## @@ -30,8 +31,14 @@ def main(request, response): ## Record incoming Sec-Metadata header value else: try: - ## Return empty string as a default value ## - header = request.headers.get("Sec-Metadata", "") + ## Return a serialized JSON object with one member per header. If the ## + ## header isn't present, the member will contain an empty string. ## + header = json.dumps({ + "dest": request.headers.get("sec-fetch-dest", ""), + "mode": request.headers.get("sec-fetch-mode", ""), + "site": request.headers.get("sec-fetch-site", ""), + "user": request.headers.get("sec-fetch-user", ""), + }) request.server.stash.put(testId, header) except KeyError: ## The header is already recorded or it doesn't exist diff --git a/testing/web-platform/tests/fetch/sec-metadata/script.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/script.tentative.https.sub.html index 643e11827f56..d76378f1dd8d 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/script.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/script.tentative.https.sub.html @@ -10,9 +10,9 @@ t.add_cleanup(_ => { header = null; }); assert_header_equals(header, { - "cause": undefined, - "destination": "script", - "site": "same-origin" + "dest": "script", + "site": "same-origin", + "user":"?F" }); }, "Same-origin script"); @@ -24,9 +24,9 @@ t.add_cleanup(_ => { header = null; }); assert_header_equals(header, { - "cause": undefined, - "destination": "script", - "site": "same-site" + "dest": "script", + "site": "same-site", + "user":"?F" }); }, "Same-site script"); @@ -38,9 +38,9 @@ t.add_cleanup(_ => { header = null; }); assert_header_equals(header, { - "cause": undefined, - "destination": "script", - "site": "cross-site" + "dest": "script", + "site": "cross-site", + "user":"?F" }); }, "Cross-site script"); diff --git a/testing/web-platform/tests/fetch/sec-metadata/serviceworker.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/serviceworker.tentative.https.sub.html index cefabb20aaa4..d0b86d2d9a8c 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/serviceworker.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/serviceworker.tentative.https.sub.html @@ -35,7 +35,7 @@ promise_test(t => { return new Promise((resolve, reject) => { let key = "serviceworker-same-origin"; - let expected = {"destination":"serviceworker", "site":"same-origin"}; + let expected = {"dest":"serviceworker", "site":"same-origin", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) diff --git a/testing/web-platform/tests/fetch/sec-metadata/sharedworker.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/sharedworker.tentative.https.sub.html index 09017ccbb3a2..66f7d5b9d8dc 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/sharedworker.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/sharedworker.tentative.https.sub.html @@ -26,7 +26,7 @@ promise_test(t => { return new Promise((resolve, reject) => { let key = "sharedworker-same-origin"; - let expected = {"destination":"sharedworker", "site":"same-origin"}; + let expected = {"dest":"sharedworker", "site":"same-origin", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) diff --git a/testing/web-platform/tests/fetch/sec-metadata/style.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/style.tentative.https.sub.html index 609d5764f08c..9697db75c82f 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/style.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/style.tentative.https.sub.html @@ -14,7 +14,7 @@ e.rel = "stylesheet"; e.href = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; e.onload = e => { - let expected = {"destination":"style", "site":"same-origin"}; + let expected = {"dest":"style", "site":"same-origin", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -34,7 +34,7 @@ e.rel = "stylesheet"; e.href = "https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; e.onload = e => { - let expected = {"destination":"style", "site":"same-site"}; + let expected = {"dest":"style", "site":"same-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -54,7 +54,7 @@ e.rel = "stylesheet"; e.href = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; e.onload = e => { - let expected = {"destination":"style", "site":"cross-site"}; + let expected = {"dest":"style", "site":"cross-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) diff --git a/testing/web-platform/tests/fetch/sec-metadata/track.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/track.tentative.https.sub.html index e89d4745ff2d..b9dfabf97397 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/track.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/track.tentative.https.sub.html @@ -29,7 +29,7 @@ let el = createTrack(); el.src = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=track-same-origin"; el.onload = t.step_func(_ => { - expected = {"destination":"track", "site":"same-origin"}; + expected = {"dest":"track", "site":"same-origin", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=track-same-origin") .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -46,7 +46,7 @@ let el = createTrack(); el.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=track-same-site"; el.onload = t.step_func(_ => { - expected = {"destination":"track", "site":"same-site"}; + expected = {"dest":"track", "site":"same-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=track-same-site") .then(response => response.text()) .then(text => assert_header_equals(text, expected)) @@ -65,7 +65,7 @@ let el = createTrack(); el.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=track-cross-site"; el.onload = t.step_func(_ => { - expected = {"destination":"track", "site":"cross-site"}; + expected = {"dest":"track", "site":"cross-site", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=track-cross-site") .then(response => response.text()) .then(text => assert_header_equals(text, expected)) diff --git a/testing/web-platform/tests/fetch/sec-metadata/window-open.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/window-open.tentative.https.sub.html index 3cd6190f9448..236268e17740 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/window-open.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/window-open.tentative.https.sub.html @@ -15,9 +15,9 @@ return; assert_header_equals(e.data, { - "cause": "forced", - "destination": "document", - "site": "same-origin" + "dest": "document", + "site": "same-origin", + "user":"?F" }); t.done(); })); @@ -31,9 +31,9 @@ return; assert_header_equals(e.data, { - "cause": "forced", - "destination": "document", - "site": "same-site" + "dest": "document", + "site": "same-site", + "user":"?F" }); t.done(); })); @@ -47,9 +47,9 @@ return; assert_header_equals(e.data, { - "cause": "forced", - "destination": "document", - "site": "cross-site" + "dest": "document", + "site": "cross-site", + "user":"?F" }); t.done(); })); @@ -66,9 +66,9 @@ return; assert_header_equals(e.data, { - "cause": "user-activated", - "destination": "document", - "site": "same-origin" + "dest": "document", + "site": "same-origin", + "user": "?T" }); t.done(); })); @@ -87,9 +87,9 @@ return; assert_header_equals(e.data, { - "cause": "user-activated", - "destination": "document", - "site": "same-site" + "dest": "document", + "site": "same-site", + "user": "?T" }); t.done(); })); @@ -108,9 +108,9 @@ return; assert_header_equals(e.data, { - "cause": "user-activated", - "destination": "document", - "site": "cross-site" + "dest": "document", + "site": "cross-site", + "user": "?T" }); t.done(); })); diff --git a/testing/web-platform/tests/fetch/sec-metadata/worker.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/worker.tentative.https.sub.html index eff66fcc7811..fcffe91dbf70 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/worker.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/worker.tentative.https.sub.html @@ -10,7 +10,7 @@ let key = "worker-same-origin"; let w = new Worker("/fetch/sec-metadata/resources/record-header.py?file=" + key); w.onmessage = e => { - let expected = {"destination":"worker", "site":"same-origin"}; + let expected = {"dest":"worker", "site":"same-origin", "user":"?F"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) diff --git a/testing/web-platform/tests/fetch/sec-metadata/xslt.tentative.https.sub.html b/testing/web-platform/tests/fetch/sec-metadata/xslt.tentative.https.sub.html index dff996679ff9..32349c9598e8 100644 --- a/testing/web-platform/tests/fetch/sec-metadata/xslt.tentative.https.sub.html +++ b/testing/web-platform/tests/fetch/sec-metadata/xslt.tentative.https.sub.html @@ -12,21 +12,21 @@ return; promise_test(t => { - let expected = {"destination":"xslt", "site":"same-origin"}; + let expected = {"dest":"xslt", "site":"same-origin", "user":"?F"}; return fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=xslt-same-origin") .then(response => response.text()) .then(text => assert_header_equals(text, expected)); }, "Same-Origin xslt"); promise_test(t => { - let expected = {"destination":"xslt", "site":"same-site"}; + let expected = {"dest":"xslt", "site":"same-site", "user":"?F"}; return fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=xslt-same-site") .then(response => response.text()) .then(text => assert_header_equals(text, expected)); }, "Same-site xslt"); promise_test(t => { - let expected = {"destination":"xslt", "site":"cross-site"}; + let expected = {"dest":"xslt", "site":"cross-site", "user":"?F"}; return fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=xslt-cross-site") .then(response => response.text()) .then(text => assert_header_equals(text, expected)); diff --git a/testing/web-platform/tests/fetch/stale-while-revalidate/fetch.tentative.html b/testing/web-platform/tests/fetch/stale-while-revalidate/fetch.tentative.html new file mode 100644 index 000000000000..01a991ebfb1c --- /dev/null +++ b/testing/web-platform/tests/fetch/stale-while-revalidate/fetch.tentative.html @@ -0,0 +1,17 @@ + + + +Tests Stale While Revalidate is not executed for fetch API + + + diff --git a/testing/web-platform/tests/fetch/stale-while-revalidate/stale-css.py b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-css.py new file mode 100644 index 000000000000..6f3014db5246 --- /dev/null +++ b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-css.py @@ -0,0 +1,20 @@ +def main(request, response): + + cookie = request.cookies.first("Count", None) + count = 0 + if cookie != None: + count = int(cookie.value) + if request.GET.first("query", None) != None: + headers = [("Count", count)] + content = "" + return 200, headers, content + else: + count = count + 1 + content = "body { background: rgb(0, 128, 0); }" + if count > 1: + content = "body { background: rgb(255, 0, 0); }" + + headers = [("Content-Type", "text/css"), + ("Set-Cookie", "Count={}".format(count)), + ("Cache-Control", "private, max-age=0, stale-while-revalidate=10")] + return 200, headers, content diff --git a/testing/web-platform/tests/fetch/stale-while-revalidate/stale-css.tentative.html b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-css.tentative.html new file mode 100644 index 000000000000..df03bd962431 --- /dev/null +++ b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-css.tentative.html @@ -0,0 +1,47 @@ + + + +Tests Stale While Revalidate works for css + + + + + diff --git a/testing/web-platform/tests/fetch/stale-while-revalidate/stale-image.py b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-image.py new file mode 100644 index 000000000000..42d0764eb91e --- /dev/null +++ b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-image.py @@ -0,0 +1,30 @@ +import os.path + +def main(request, response): + + cookie = request.cookies.first("Count", None) + count = 0 + if cookie != None: + count = int(cookie.value) + if request.GET.first("query", None) != None: + headers = [("Count", count)] + content = "" + return 200, headers, content + else: + count = count + 1 + filename = "green-16x16.png" + if cookie > 1: + filename = "green-256x256.png" + + path = os.path.join(os.path.dirname(__file__), "../../images", filename) + body = open(path, "rb").read() + + response.add_required_headers = False + response.writer.write_status(200) + response.writer.write_header("content-length", len(body)) + response.writer.write_header("Cache-Control", "private, max-age=0, stale-while-revalidate=10") + response.writer.write_header("content-type", "image/png") + response.writer.write_header("Set-Cookie", "Count={}".format(count)) + response.writer.end_headers() + + response.writer.write(body) diff --git a/testing/web-platform/tests/fetch/stale-while-revalidate/stale-image.tentative.html b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-image.tentative.html new file mode 100644 index 000000000000..d8383acb319c --- /dev/null +++ b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-image.tentative.html @@ -0,0 +1,51 @@ + + + +Tests Stale While Revalidate works for images + + + + + + + diff --git a/testing/web-platform/tests/fetch/stale-while-revalidate/stale-script.py b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-script.py new file mode 100644 index 000000000000..c17528d8e631 --- /dev/null +++ b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-script.py @@ -0,0 +1,25 @@ +import random, string, datetime + +def token(): + letters = string.ascii_lowercase + return ''.join(random.choice(letters) for i in range(20)) + +def main(request, response): + cookie = request.cookies.first("Count", None) + count = 0 + if cookie != None: + count = int(cookie.value) + if request.GET.first("query", None) != None: + headers = [("Count", count)] + content = "" + return 200, headers, content + else: + count = count + 1 + + unique_id = token() + headers = [("Content-Type", "text/javascript"), + ("Cache-Control", "private, max-age=0, stale-while-revalidate=10"), + ("Set-Cookie", "Count={}".format(count)), + ("Token", unique_id)] + content = "report('{}')".format(unique_id) + return 200, headers, content diff --git a/testing/web-platform/tests/fetch/stale-while-revalidate/stale-script.tentative.html b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-script.tentative.html new file mode 100644 index 000000000000..2e04e3905780 --- /dev/null +++ b/testing/web-platform/tests/fetch/stale-while-revalidate/stale-script.tentative.html @@ -0,0 +1,55 @@ + + + +Tests Stale While Revalidate works for scripts + + + + + diff --git a/testing/web-platform/tests/fonts/Ahem.ttf.headers b/testing/web-platform/tests/fonts/Ahem.ttf.headers new file mode 100644 index 000000000000..cb762eff8068 --- /dev/null +++ b/testing/web-platform/tests/fonts/Ahem.ttf.headers @@ -0,0 +1 @@ +Access-Control-Allow-Origin: * diff --git a/testing/web-platform/tests/fonts/noto/NotoNaskhArabic-regular.woff2 b/testing/web-platform/tests/fonts/noto/NotoNaskhArabic-regular.woff2 new file mode 100644 index 000000000000..e24020d46a4c Binary files /dev/null and b/testing/web-platform/tests/fonts/noto/NotoNaskhArabic-regular.woff2 differ diff --git a/testing/web-platform/tests/geolocation-sensor/GeolocationSensor-supported-by-feature-policy.html b/testing/web-platform/tests/geolocation-sensor/GeolocationSensor-supported-by-feature-policy.html new file mode 100644 index 000000000000..aa05f33a5e48 --- /dev/null +++ b/testing/web-platform/tests/geolocation-sensor/GeolocationSensor-supported-by-feature-policy.html @@ -0,0 +1,11 @@ + +Test that geolocation is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/gyroscope/Gyroscope-supported-by-feature-policy.html b/testing/web-platform/tests/gyroscope/Gyroscope-supported-by-feature-policy.html new file mode 100644 index 000000000000..06a4137f17da --- /dev/null +++ b/testing/web-platform/tests/gyroscope/Gyroscope-supported-by-feature-policy.html @@ -0,0 +1,11 @@ + +Test that gyroscope is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/html/dom/interfaces.https.html b/testing/web-platform/tests/html/dom/interfaces.https.html index 3848837cb2b7..47254a4361c4 100644 --- a/testing/web-platform/tests/html/dom/interfaces.https.html +++ b/testing/web-platform/tests/html/dom/interfaces.https.html @@ -37,7 +37,7 @@ const waitForLoad = new Promise(resolve => { addEventListener('load', resolve); idl_test( ['html'], - ['SVG', 'cssom', 'touch-events', 'uievents', 'dom'], + ['SVG', 'cssom', 'touch-events', 'uievents', 'dom', 'xhr'], async idlArray => { idlArray.add_objects({ NodeList: ['document.getElementsByName("name")'], @@ -174,6 +174,7 @@ idl_test( HTMLProgressElement: ['document.createElement("progress")'], HTMLMeterElement: ['document.createElement("meter")'], ValidityState: ['document.createElement("input").validity'], + FormDataEvent: ['new FormDataEvent("formdata", { formData: new FormData() })'], HTMLDetailsElement: ['document.createElement("details")'], HTMLMenuElement: ['document.createElement("menu")'], Window: ['window'], diff --git a/testing/web-platform/tests/html/dom/interfaces.worker.js b/testing/web-platform/tests/html/dom/interfaces.worker.js index 8bf24b51b083..f49198cd5c67 100644 --- a/testing/web-platform/tests/html/dom/interfaces.worker.js +++ b/testing/web-platform/tests/html/dom/interfaces.worker.js @@ -3,34 +3,19 @@ importScripts("/resources/testharness.js"); importScripts("/resources/WebIDLParser.js", "/resources/idlharness.js"); -function doTest([html, dom, cssom, touchevents, uievents]) { - var idlArray = new IdlArray(); - idlArray.add_untested_idls(dom + cssom + touchevents + uievents); - idlArray.add_idls(html); - - idlArray.add_objects({ - WorkerNavigator: ['self.navigator'], - WebSocket: ['new WebSocket("ws://foo")'], - CloseEvent: ['new CloseEvent("close")'], - Worker: [], - MessageEvent: ['new MessageEvent("message", { data: 5 })'], - DedicatedWorkerGlobalScope: ['self'], - }); - - idlArray.test(); -}; - -function fetchData(url) { - return fetch(url).then((response) => response.text()); -} - -promise_test(function() { - return Promise.all([fetchData("/interfaces/html.idl"), - fetchData("/interfaces/dom.idl"), - fetchData("/interfaces/cssom.idl"), - fetchData("/interfaces/touch-events.idl"), - fetchData("/interfaces/uievents.idl")]) - .then(doTest); -}, "Test driver"); +idl_test( + ["html"], + ["dom", "cssom", "touch-events", "uievents"], + idlArray => { + idlArray.add_objects({ + WorkerNavigator: ['self.navigator'], + WebSocket: ['new WebSocket("ws://foo")'], + CloseEvent: ['new CloseEvent("close")'], + Worker: [], + MessageEvent: ['new MessageEvent("message", { data: 5 })'], + DedicatedWorkerGlobalScope: ['self'], + }); + } +); done(); diff --git a/testing/web-platform/tests/html/editing/dnd/the-datatransferitem-interface/getAsString-manual.html b/testing/web-platform/tests/html/editing/dnd/the-datatransferitem-interface/getAsString-manual.html new file mode 100644 index 000000000000..c328f0031b8e --- /dev/null +++ b/testing/web-platform/tests/html/editing/dnd/the-datatransferitem-interface/getAsString-manual.html @@ -0,0 +1,39 @@ + + +DataTransferItem Test: getAsString() + + + + +

    +

    + +

    Select all characters in blue box and drag to green box then drop on the green box

    + + diff --git a/testing/web-platform/tests/html/editing/focus/sequential-focus-navigation-and-the-tabindex-attribute/focus-tabindex-event-manual.html b/testing/web-platform/tests/html/editing/focus/sequential-focus-navigation-and-the-tabindex-attribute/focus-tabindex-event-manual.html new file mode 100644 index 000000000000..73a3ff667ea8 --- /dev/null +++ b/testing/web-platform/tests/html/editing/focus/sequential-focus-navigation-and-the-tabindex-attribute/focus-tabindex-event-manual.html @@ -0,0 +1,34 @@ + + +HTML Test: tabindex - focus, click + + + + + + +

    Test steps

    +

    Focus on the button below by "Tab" key, then press "Enter" key

    + +

    + + diff --git a/testing/web-platform/tests/html/rendering/non-replaced-elements/tables/table-attribute.html b/testing/web-platform/tests/html/rendering/non-replaced-elements/tables/table-attribute.html new file mode 100644 index 000000000000..54acff0350ea --- /dev/null +++ b/testing/web-platform/tests/html/rendering/non-replaced-elements/tables/table-attribute.html @@ -0,0 +1,194 @@ + + +Table attribute test + + + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + +
    MonthSavings
    January$60
    February$80
    Sum$140
    +
    + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-error-fired-before-scripting-unblocked.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-error-fired-before-scripting-unblocked.html new file mode 100644 index 000000000000..188e4ba5ab6e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-error-fired-before-scripting-unblocked.html @@ -0,0 +1,25 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-event.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-event.html index 541291350a79..e95fff7988a2 100644 --- a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-event.html +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-event.html @@ -11,7 +11,7 @@ window.addEventListener('load', t.step_func_done(function() { })); + onload="t.step(function() { saw_link_onload = true; })" + onerror="t.unreached_func('Sheet should load OK')"> diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-fired-before-scripting-unblocked.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-fired-before-scripting-unblocked.html new file mode 100644 index 000000000000..a809cc44b197 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/link-load-fired-before-scripting-unblocked.html @@ -0,0 +1,24 @@ + + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-style-error.js b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-style-error.js index d1fa5ac2d6fc..7ebc39ba6cc5 100644 --- a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-style-error.js +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/link-style-error.js @@ -1,7 +1,13 @@ ["", "@import"].forEach(linkType => { [ ["same-origin", "resources/css.py"], - ["cross-origin", get_host_info().HTTP_REMOTE_ORIGIN + "/html/semantics/document-metadata/the-link-element/resources/css.py"] + + // TODO(lukasza@chromium.org): Once https://crbug.com/888079 and + // https://crbug.com/891872 are fixed, we should use a cross-*origin* rather + // than cross-*site* URL below (e.g. s/ HTTP_NOTSAMESITE_ORIGIN / + // HTTP_REMOTE_ORIGIN /g). See also https://crbug.com/918660 for more + // context. + ["cross-origin", get_host_info().HTTP_NOTSAMESITE_ORIGIN + "/html/semantics/document-metadata/the-link-element/resources/css.py"] ].forEach(originType => { ["no Content-Type", "wrong Content-Type", "broken Content-Type"].forEach(contentType => { ["no nosniff", "nosniff"].forEach(nosniff => { diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/neutral.css b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/neutral.css new file mode 100644 index 000000000000..796c55c42f6c --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/resources/neutral.css @@ -0,0 +1,3 @@ +body { + background-color: gray; +} diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html new file mode 100644 index 000000000000..27b443cee33f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-link-element/stylesheet-not-removed-until-next-stylesheet-loads.html @@ -0,0 +1,22 @@ + + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html new file mode 100644 index 000000000000..af4de6bf89d4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html @@ -0,0 +1,11 @@ + +Test that autoplay is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm index d6c2abe7d576..fd65f9329829 100644 --- a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm @@ -18,7 +18,8 @@ var expected = { ifr1:{url:"about:blank", sameDom: true}, ifr2:{url:"about:blank", sameDom: true}, ifr3:{url: location.href.replace(/\/[^\/]*$/, '/'), sameDom: true }, - ifr4:{url:"about:blank", sameDom: true} + ifr4:{url:"about:blank", sameDom: true}, + ifr5:{url:"about:blank", sameDom: true} } var js_url = 'javascript:" - \ No newline at end of file + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.html new file mode 100644 index 000000000000..73b937f67fd7 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.html @@ -0,0 +1,18 @@ + + +404 response with actual image data should be rendered and load event is fired + + + + + + diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.py b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.py new file mode 100644 index 000000000000..e4216c6d53fd --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.py @@ -0,0 +1,3 @@ +import base64 +def main(req, res): + return 404, [('Content-Type', 'image/png')], base64.decodestring("iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAhSURBVDhPY3wro/KfgQLABKXJBqMGjBoAAqMGDLwBDAwAEsoCTFWunmQAAAAASUVORK5CYII=") diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/Image-constructor.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/Image-constructor.html index aa838ec8774e..38b6765bb498 100644 --- a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/Image-constructor.html +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/Image-constructor.html @@ -32,6 +32,11 @@ assert_equals(Image.prototype, HTMLImageElement.prototype, "Image.prototype is same as HTMLImageElement.prototype"); assert_equals(new Image().__proto__, HTMLImageElement.prototype, "Image __proto__ is HTMLImageElement prototype "); assert_equals(Image.prototype.__proto__, HTMLElement.prototype, "Image.prototype __proto__ is HTMLElement prototype"); + + const desc = Object.getOwnPropertyDescriptor(Image, "prototype"); + assert_false(desc.configurable, "Image.prototype is not configurable"); + assert_false(desc.enumerable, "Image.prototype is not enumerable"); + assert_false(desc.writable, "Image.prototype is not writable"); }, "NamedConstructor creates the correct object structure."); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/FormDataEvent.window.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/FormDataEvent.window.js new file mode 100644 index 000000000000..145b5dd3727f --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/FormDataEvent.window.js @@ -0,0 +1,21 @@ +// https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#the-formdataevent-interface + +test(() => { + let fd = new FormData(); + let typeError = new TypeError(); + assert_throws(typeError, () => { new FormDataEvent() }, '0 arguments'); + assert_throws(typeError, () => { new FormDataEvent('foo') }, '1 argument'); + assert_throws(typeError, () => { new FormDataEvent(fd, fd) }, '2 invalid arguments'); + assert_throws(typeError, () => { new FormDataEvent('foo', null) }, 'Null dictionary'); + assert_throws(typeError, () => { new FormDataEvent('foo', undefined) }, 'Undefined dictionary'); + assert_throws(typeError, () => { new FormDataEvent('foo', { formData: null }) }, 'Null formData'); + assert_throws(typeError, () => { new FormDataEvent('foo', { formData: undefined }) }, 'Undefined formData'); + assert_throws(typeError, () => { new FormDataEvent('foo', { formData: 'bar' }) }, 'Wrong type of formData'); +}, 'Failing FormDataEvent constructor'); + +test(() => { + let fd = new FormData(); + let event = new FormDataEvent('bar', { formData: fd, bubbles: true }); + assert_equals(event.formData, fd); + assert_true(event.bubbles); +}, 'Successful FormDataEvent constructor'); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html index afd75d87e95a..8dad6cdd01a4 100644 --- a/testing/web-platform/tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html @@ -5,6 +5,7 @@ +
    @@ -46,4 +47,68 @@ async_test(t => { form2.submit.click(); }, 'The button cannot be setted if it is not a submitter.'); +test(() => { + let didCallHandler = false; + let wasBubbles = false; + let wasCancelable = true; + let form = populateForm(); + document.addEventListener('formdata', e => { + didCallHandler = true; + wasBubbles = e.bubbles; + wasCancelable = e.cancelable; + }); + new FormData(form); + assert_true(didCallHandler); + assert_true(wasBubbles); + assert_false(wasCancelable); +}, '"formdata" event bubbles, and is not cancelable.'); + +test(() => { + let didCallHandler = false; + let form = populateForm(); + let orphanRoot = document.createElement('div'); + orphanRoot.appendChild(form); + orphanRoot.addEventListener('formdata', e => { + didCallHandler = true; + }); + new FormData(form); + assert_true(didCallHandler); +}, '"formdata" event bubbles in an orphan tree.'); + +test(() => { + let listener1ok = false; + let listeern2ok = false; + let form = populateForm(''); + form.addEventListener('formdata', e => { + listener1ok = e.formData.get('n1') == 'v1'; + e.formData.append('h1', 'vh1'); + e.formData.append('h2', 'vh2'); + }); + form.addEventListener('formdata', e => { + if (e.formData.get('h1') == 'vh1' && e.formData.get('h2') == 'vh2') + listener2ok = true; + }); + form.submit(); + assert_true(listener1ok); + assert_true(listener2ok); +}, '"formData" IDL attribute should have entries for form-associated elements' + + ' in the first event handler, and the second handler can read entries ' + + 'set by the first handler.'); + +let t1 = async_test('Entries added to "formData" IDL attribute should be submitted.'); +t1.step(() => { + let form = populateForm(''); + form.addEventListener('formdata', e => { + e.formData.append('h1', 'vh1'); + }); + let iframe = form.previousSibling; + iframe.onload = t1.step_func(() => { + // The initial about:blank load event can be fired before the form navigation occurs. + // See https://github.com/whatwg/html/issues/490 for more information. + if (iframe.contentWindow.location.href == "about:blank") { return; } + assert_true(iframe.contentWindow.location.search.indexOf('n1=v1&h1=vh1') != -1); + t1.done(); + }); + form.submit(); +}); diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submission-algorithm.html b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submission-algorithm.html new file mode 100644 index 000000000000..bf9f9ce330a3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/form-submission-algorithm.html @@ -0,0 +1,39 @@ + + + + + + + + diff --git a/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/targetted-form.js b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/targetted-form.js new file mode 100644 index 000000000000..74d0f8c81eee --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/form-submission-0/resources/targetted-form.js @@ -0,0 +1,13 @@ +let frameCounter = 0; + +function populateForm(optionalContentHtml) { + if (!optionalContentHtml) + optionalContentHtml = ''; + document.body.insertAdjacentHTML( + 'afterbegin', + `` + + `${optionalContentHtml}
    `); + ++frameCounter; + return document.body.firstChild.nextSibling; +} diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/event-select-manual.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/event-select-manual.html new file mode 100644 index 000000000000..ed0b21e9f30d --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/event-select-manual.html @@ -0,0 +1,39 @@ + + +HTMLInputElement Test: select event + + + + + + +
    + +
    + +

    Description

    +

    + This test validates that select characters in input element should fired select event. +

    + +

    Test steps:

    +
      +
    1. + Select any numeric characters in the input flag below +
    2. +
    + + diff --git a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/link.html b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/link.html index fd485b83ec5c..05067dd2ecf3 100644 --- a/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/link.html +++ b/testing/web-platform/tests/html/semantics/selectors/pseudo-classes/link.html @@ -3,6 +3,7 @@ Selector: pseudo-classes (:link) + diff --git a/testing/web-platform/tests/html/webappapis/animation-frames/callback-handle.html b/testing/web-platform/tests/html/webappapis/animation-frames/callback-handle.html new file mode 100644 index 000000000000..f1b88300313e --- /dev/null +++ b/testing/web-platform/tests/html/webappapis/animation-frames/callback-handle.html @@ -0,0 +1,16 @@ + + +AnimationTiming Test: FrameRequestCallback - valid callback handle + + + + +
    + diff --git a/testing/web-platform/tests/html/webappapis/animation-frames/callback-timestamp.html b/testing/web-platform/tests/html/webappapis/animation-frames/callback-timestamp.html new file mode 100644 index 000000000000..8e61db61b8db --- /dev/null +++ b/testing/web-platform/tests/html/webappapis/animation-frames/callback-timestamp.html @@ -0,0 +1,17 @@ + + +AnimationTiming Test: FrameRequestCallback - timestamp argument + + + + +
    + diff --git a/testing/web-platform/tests/html/webappapis/animation-frames/cancel-handle-manual.html b/testing/web-platform/tests/html/webappapis/animation-frames/cancel-handle-manual.html new file mode 100644 index 000000000000..0328272522db --- /dev/null +++ b/testing/web-platform/tests/html/webappapis/animation-frames/cancel-handle-manual.html @@ -0,0 +1,51 @@ + + +AnimationTiming Test: cancelAnimationFrame used to cancel request callback + + + + + +

    + Test passes if there is a filled blue square with 'Filler Text', + which moves from left to right repeatly, when click the 'stop' button, + the square stops. +

    + +
    Filler Text
    + + diff --git a/testing/web-platform/tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/url-entry-document-timer-frame.html b/testing/web-platform/tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/url-entry-document-timer-frame.html new file mode 100644 index 000000000000..b2c050768c78 --- /dev/null +++ b/testing/web-platform/tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/url-entry-document-timer-frame.html @@ -0,0 +1,3 @@ + diff --git a/testing/web-platform/tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url-entry-document.window.js b/testing/web-platform/tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url-entry-document.window.js new file mode 100644 index 000000000000..c3a1c3a874f3 --- /dev/null +++ b/testing/web-platform/tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url-entry-document.window.js @@ -0,0 +1,18 @@ +async_test(t => { + const frame = document.body.appendChild(document.createElement("iframe")); + t.add_cleanup(() => frame.remove()); + const frameURL = new URL("resources/url-entry-document-timer-frame.html", document.URL).href; + window.timerTest = t.step_func_done(() => { + assert_equals(frame.contentDocument.URL, frameURL); + assert_equals(frame.contentWindow.location.href, frameURL); + + // In this case, the entry settings object was set when this function is + // executed in the timer task through Web IDL's "invoke a callback + // function" algorithm, to be the relevant settings object of this + // function. Therefore the URL of this document would be inherited. + assert_equals(frame.contentDocument.open(), frame.contentDocument); + assert_equals(frame.contentDocument.URL, document.URL); + assert_equals(frame.contentWindow.location.href, document.URL); + }); + frame.src = frameURL; +}, "document.open() changes document's URL to the entry settings object's responsible document's (through timeouts)"); diff --git a/testing/web-platform/tests/html/webappapis/scripting/events/compile-event-handler-lexical-scopes.html b/testing/web-platform/tests/html/webappapis/scripting/events/compile-event-handler-lexical-scopes.html new file mode 100644 index 000000000000..ed6c00665116 --- /dev/null +++ b/testing/web-platform/tests/html/webappapis/scripting/events/compile-event-handler-lexical-scopes.html @@ -0,0 +1,167 @@ + + +Lexical scopes when compiling an inline event handler + + + + + + + + + + + + +
    + +
    + + + + + + +
    + + +
    + + + + + + +
    + + diff --git a/testing/web-platform/tests/idle-detection/META.yml b/testing/web-platform/tests/idle-detection/META.yml new file mode 100644 index 000000000000..7e5836bc3701 --- /dev/null +++ b/testing/web-platform/tests/idle-detection/META.yml @@ -0,0 +1,5 @@ +spec: https://github.com/inexorabletash/idle-detection +suggested_reviewers: + - goto + - jsbell + - reillyg \ No newline at end of file diff --git a/testing/web-platform/tests/idle-detection/basics.tentative.https.any.js b/testing/web-platform/tests/idle-detection/basics.tentative.https.any.js new file mode 100644 index 000000000000..916829e32d75 --- /dev/null +++ b/testing/web-platform/tests/idle-detection/basics.tentative.https.any.js @@ -0,0 +1,69 @@ +// META: title=Idle Detection API: Basics + +'use strict'; + +promise_test(async t => { + let promise = navigator.idle.query(); + assert_equals(promise.constructor, Promise, + 'query() returns a promise'); + + let status = await promise; + assert_true(status instanceof IdleStatus, + 'query() promise resolves to an IdleStatus'); + + assert_true(['active', 'idle', 'locked'].includes(status.state), + 'status has a valid state'); +}, 'query() basics'); + +promise_test(async t => { + let used = false; + + await navigator.idle.query({ + get threshold() { + used = true; + return 1; + } + }); + + assert_true(used, 'query() options "threshold" member was used'); +}, 'query() uses threshold property'); + +promise_test(async t => { + return promise_rejects( + t, + new TypeError, + navigator.idle.query({threshold: 0}), + 'Threshold of 0 should reject'); +}, 'query() throws with invalid threshold (0)'); + +promise_test(async t => { + return promise_rejects( + t, + new TypeError, + navigator.idle.query({threshold: null}), + 'Threshold of null should reject'); +}, 'query() throws with invalid threshold (null)'); + +promise_test(async t => { + return promise_rejects( + t, + new TypeError, + navigator.idle.query({threshold: -1}), + 'Threshold of negative numbers should reject'); +}, 'query() throws with invalid threshold (-1)'); + +promise_test(async t => { + return promise_rejects( + t, + new TypeError, + navigator.idle.query({threshold: NaN}), + 'Threshold of NaN should reject'); +}, 'query() throws with invalid threshold (NaN)'); + +promise_test(async t => { + return navigator.idle.query(); +}, 'query() uses a default value for the threshold when none is passed'); + +promise_test(async t => { + return navigator.idle.query({threshold: undefined}); +}, 'query() uses a default value for the threshold'); diff --git a/testing/web-platform/tests/idle-detection/idle-detection.idl b/testing/web-platform/tests/idle-detection/idle-detection.idl new file mode 100644 index 000000000000..f529cd036bf7 --- /dev/null +++ b/testing/web-platform/tests/idle-detection/idle-detection.idl @@ -0,0 +1,32 @@ +[SecureContext] +interface mixin NavigatorIdle { + readonly attribute IdleManager idle; +}; + +Navigator includes NavigatorIdle; +WorkerNavigator includes NavigatorIdle; + +[ + SecureContext, + Exposed=(Window,Worker) +] interface IdleManager { + Promise query(optional IdleOptions options); +}; + +dictionary IdleOptions { + unsigned long threshold; +}; + +[ + SecureContext, + Exposed=(Window,Worker) +] interface IdleStatus : EventTarget { + readonly attribute IdleState state; + attribute EventHandler onchange; +}; + +enum IdleState { + "active", + "idle", + "locked" +}; diff --git a/testing/web-platform/tests/idle-detection/idlharness.https.any.js b/testing/web-platform/tests/idle-detection/idlharness.https.any.js new file mode 100644 index 000000000000..d7b5b96b666e --- /dev/null +++ b/testing/web-platform/tests/idle-detection/idlharness.https.any.js @@ -0,0 +1,32 @@ +// META: script=/resources/WebIDLParser.js +// META: script=/resources/idlharness.js + +// https://github.com/inexorabletash/idle-detection + +'use strict'; + +promise_test(async () => { + const srcs = ['./idle-detection.idl', + '/interfaces/dom.idl', '/interfaces/html.idl']; + const [idle, dom, html] = await Promise.all( + srcs.map(i => fetch(i).then(r => r.text()))); + + const idl_array = new IdlArray(); + idl_array.add_idls(idle); + idl_array.add_dependency_idls(dom); + idl_array.add_dependency_idls(html); + + self.idle = await navigator.idle.query(); + + idl_array.add_objects({ + IdleManager: ['navigator.idle'], + IdleStatus: ['idle'], + }); + if (self.Window) { + idl_array.add_objects({ Navigator: ['navigator'] }); + } else { + idl_array.add_objects({ WorkerNavigator: ['navigator'] }); + } + + idl_array.test(); +}, 'Test IDL implementation of Idle Detection API'); diff --git a/testing/web-platform/tests/infrastructure/reftest/size-ref.html b/testing/web-platform/tests/infrastructure/reftest/size-ref.html new file mode 100644 index 000000000000..b2669612b792 --- /dev/null +++ b/testing/web-platform/tests/infrastructure/reftest/size-ref.html @@ -0,0 +1,2 @@ + +

    innerWidth x innerHeight: 600x600

    diff --git a/testing/web-platform/tests/infrastructure/reftest/size.html b/testing/web-platform/tests/infrastructure/reftest/size.html new file mode 100644 index 000000000000..a60befbf038f --- /dev/null +++ b/testing/web-platform/tests/infrastructure/reftest/size.html @@ -0,0 +1,6 @@ + + +

    innerWidth x innerHeight:

    + diff --git a/testing/web-platform/tests/interfaces/IndexedDB.idl b/testing/web-platform/tests/interfaces/IndexedDB.idl index 137528c148ae..868338b3080c 100644 --- a/testing/web-platform/tests/interfaces/IndexedDB.idl +++ b/testing/web-platform/tests/interfaces/IndexedDB.idl @@ -200,6 +200,7 @@ interface IDBTransaction : EventTarget { readonly attribute DOMException error; IDBObjectStore objectStore(DOMString name); + void commit(); void abort(); // Event handlers: diff --git a/testing/web-platform/tests/interfaces/SVG.idl b/testing/web-platform/tests/interfaces/SVG.idl index 9588ad0d608d..78b9d64743e6 100644 --- a/testing/web-platform/tests/interfaces/SVG.idl +++ b/testing/web-platform/tests/interfaces/SVG.idl @@ -262,7 +262,7 @@ interface SVGSVGElement : SVGGraphicsElement { DOMMatrix createSVGMatrix(); DOMRect createSVGRect(); SVGTransform createSVGTransform(); - SVGTransform createSVGTransformFromMatrix(DOMMatrixReadOnly matrix); + SVGTransform createSVGTransformFromMatrix(optional DOMMatrix2DInit matrix); Element getElementById(DOMString elementId); @@ -367,7 +367,7 @@ interface SVGTransform { [SameObject] readonly attribute DOMMatrix matrix; readonly attribute float angle; - void setMatrix(DOMMatrixReadOnly matrix); + void setMatrix(optional DOMMatrix2DInit matrix); void setTranslate(float tx, float ty); void setScale(float sx, float sy); void setRotate(float angle, float cx, float cy); @@ -391,7 +391,7 @@ interface SVGTransformList { setter void (unsigned long index, SVGTransform newItem); // Additional methods not common to other list interfaces. - SVGTransform createSVGTransformFromMatrix(DOMMatrixReadOnly matrix); + SVGTransform createSVGTransformFromMatrix(optional DOMMatrix2DInit matrix); SVGTransform? consolidate(); }; diff --git a/testing/web-platform/tests/interfaces/accelerometer.idl b/testing/web-platform/tests/interfaces/accelerometer.idl index 8be7d09881d2..3705d4ba0ec9 100644 --- a/testing/web-platform/tests/interfaces/accelerometer.idl +++ b/testing/web-platform/tests/interfaces/accelerometer.idl @@ -26,3 +26,15 @@ interface LinearAccelerationSensor : Accelerometer { Exposed=Window] interface GravitySensor : Accelerometer { }; + +dictionary AccelerometerReadingValues { + required double? x; + required double? y; + required double? z; +}; + +dictionary LinearAccelerationReadingValues : AccelerometerReadingValues { +}; + +dictionary GravityReadingValues : AccelerometerReadingValues { +}; diff --git a/testing/web-platform/tests/interfaces/ambient-light.idl b/testing/web-platform/tests/interfaces/ambient-light.idl index e861cc561823..4e44c082b070 100644 --- a/testing/web-platform/tests/interfaces/ambient-light.idl +++ b/testing/web-platform/tests/interfaces/ambient-light.idl @@ -7,3 +7,7 @@ interface AmbientLightSensor : Sensor { readonly attribute double? illuminance; }; + +dictionary AmbientLightReadingValues { + required double? illuminance; +}; diff --git a/testing/web-platform/tests/interfaces/css-layout-api.idl b/testing/web-platform/tests/interfaces/css-layout-api.idl index 5dc6db455e41..9440684a26cc 100644 --- a/testing/web-platform/tests/interfaces/css-layout-api.idl +++ b/testing/web-platform/tests/interfaces/css-layout-api.idl @@ -20,22 +20,22 @@ dictionary LayoutOptions { [Exposed=LayoutWorklet] enum ChildDisplayType { - "block", + "block", // default - "blockifies" the child boxes. "normal", }; [Exposed=LayoutWorklet] enum LayoutSizingMode { - "block-like", - "manual", + "block-like", // default - Sizing behaves like block containers. + "manual", // Sizing is specified by the web developer. }; [Exposed=LayoutWorklet] interface LayoutChild { readonly attribute StylePropertyMapReadOnly styleMap; - IntrinsicSizesRequest intrinsicSizes(); - LayoutFragmentRequest layoutNextFragment(LayoutConstraints constraints, ChildBreakToken breakToken); + Promise intrinsicSizes(); + Promise layoutNextFragment(LayoutConstraintsOptions constraints, ChildBreakToken breakToken); }; [Exposed=LayoutWorklet] @@ -57,7 +57,7 @@ interface IntrinsicSizes { readonly attribute double maxContentSize; }; -[Constructor(optional LayoutConstraintsOptions options),Exposed=LayoutWorklet] +[Exposed=LayoutWorklet] interface LayoutConstraints { readonly attribute double availableInlineSize; readonly attribute double availableBlockSize; @@ -74,9 +74,11 @@ interface LayoutConstraints { readonly attribute any data; }; +enum BlockFragmentationType { "none", "page", "column", "region" }; + dictionary LayoutConstraintsOptions { - double availableInlineSize = 0; - double availableBlockSize = 0; + double availableInlineSize; + double availableBlockSize; double fixedInlineSize; double fixedBlockSize; @@ -90,8 +92,6 @@ dictionary LayoutConstraintsOptions { any data; }; -enum BlockFragmentationType { "none", "page", "column", "region" }; - [Exposed=LayoutWorklet] interface ChildBreakToken { readonly attribute BreakType breakType; @@ -112,7 +112,7 @@ dictionary BreakTokenOptions { enum BreakType { "none", "line", "column", "page", "region" }; [Exposed=LayoutWorklet] -interface LayoutEdgeSizes { +interface LayoutEdges { readonly attribute double inlineStart; readonly attribute double inlineEnd; @@ -124,26 +124,6 @@ interface LayoutEdgeSizes { readonly attribute double block; }; -[Exposed=LayoutWorklet] -interface LayoutEdges { - readonly attribute LayoutEdgeSizes border; - readonly attribute LayoutEdgeSizes scrollbar; - readonly attribute LayoutEdgeSizes padding; - - readonly attribute LayoutEdgeSizes all; -}; - -[Exposed=LayoutWorklet] -interface IntrinsicSizesRequest { -}; - -[Exposed=LayoutWorklet] -interface LayoutFragmentRequest { -}; - -typedef (IntrinsicSizesRequest or LayoutFragmentRequest) - LayoutFragmentRequestOrIntrinsicSizesRequest; - // This is the final return value from the author defined layout() method. dictionary FragmentResultOptions { double inlineSize = 0; @@ -154,6 +134,12 @@ dictionary FragmentResultOptions { BreakTokenOptions breakToken = null; }; +[Constructor(FragmentResultOptions)] +interface FragmentResult { + readonly attribute double inlineSize; + readonly attribute double blockSize; +}; + dictionary IntrinsicSizesResultOptions { double maxContentSize; double minContentSize; diff --git a/testing/web-platform/tests/interfaces/css-pseudo.idl b/testing/web-platform/tests/interfaces/css-pseudo.idl index e16e66d5a3d3..c51f2217f34f 100644 --- a/testing/web-platform/tests/interfaces/css-pseudo.idl +++ b/testing/web-platform/tests/interfaces/css-pseudo.idl @@ -6,6 +6,7 @@ [Exposed=Window] interface CSSPseudoElement { readonly attribute CSSOMString type; + readonly attribute Element element; readonly attribute CSSStyleDeclaration style; }; diff --git a/testing/web-platform/tests/interfaces/dom.idl b/testing/web-platform/tests/interfaces/dom.idl index 503c391102a2..1788faae5207 100644 --- a/testing/web-platform/tests/interfaces/dom.idl +++ b/testing/web-platform/tests/interfaces/dom.idl @@ -1,7 +1,7 @@ // GENERATED CONTENT - DO NOT EDIT -// Content of this file was automatically extracted from the -// "DOM Standard" spec. -// See: https://dom.spec.whatwg.org/ +// Content was automatically extracted by Reffy into reffy-reports +// (https://github.com/tidoust/reffy-reports) +// Source: DOM Standard (https://dom.spec.whatwg.org/) [Constructor(DOMString type, optional EventInit eventInitDict), Exposed=(Window,Worker,AudioWorklet)] @@ -145,7 +145,7 @@ Text includes Slotable; interface NodeList { getter Node? item(unsigned long index); readonly attribute unsigned long length; -// iterable; + iterable; }; [Exposed=Window, LegacyUnenumerableNamedProperties] @@ -548,5 +548,5 @@ interface DOMTokenList { [CEReactions] boolean replace(DOMString token, DOMString newToken); boolean supports(DOMString token); [CEReactions] stringifier attribute DOMString value; - // iterable; + iterable; }; diff --git a/testing/web-platform/tests/interfaces/encoding.idl b/testing/web-platform/tests/interfaces/encoding.idl index b805363c534f..b3086b8588cd 100644 --- a/testing/web-platform/tests/interfaces/encoding.idl +++ b/testing/web-platform/tests/interfaces/encoding.idl @@ -29,10 +29,16 @@ interface mixin TextEncoderCommon { readonly attribute DOMString encoding; }; +dictionary TextEncoderEncodeIntoResult { + unsigned long long read; + unsigned long long written; +}; + [Constructor, Exposed=(Window,Worker)] interface TextEncoder { [NewObject] Uint8Array encode(optional USVString input = ""); + TextEncoderEncodeIntoResult encodeInto(USVString source, Uint8Array destination); }; TextEncoder includes TextEncoderCommon; diff --git a/testing/web-platform/tests/interfaces/feature-policy.idl b/testing/web-platform/tests/interfaces/feature-policy.idl index c09cc33ce14d..2a0421580161 100644 --- a/testing/web-platform/tests/interfaces/feature-policy.idl +++ b/testing/web-platform/tests/interfaces/feature-policy.idl @@ -4,18 +4,19 @@ // Source: Feature Policy (https://wicg.github.io/feature-policy/) [NoInterfaceObject] -interface Policy { +interface FeaturePolicy { boolean allowsFeature(DOMString feature, optional DOMString origin); + sequence features(); sequence allowedFeatures(); sequence getAllowlistForFeature(DOMString feature); }; partial interface Document { - [SameObject] readonly attribute Policy policy; + [SameObject] readonly attribute FeaturePolicy featurePolicy; }; partial interface HTMLIFrameElement { - [SameObject] readonly attribute Policy policy; + [SameObject] readonly attribute FeaturePolicy featurePolicy; }; interface FeaturePolicyViolationReportBody : ReportBody { readonly attribute DOMString featureId; diff --git a/testing/web-platform/tests/interfaces/generic-sensor.idl b/testing/web-platform/tests/interfaces/generic-sensor.idl index fd794cb15f3b..2e7aacbec176 100644 --- a/testing/web-platform/tests/interfaces/generic-sensor.idl +++ b/testing/web-platform/tests/interfaces/generic-sensor.idl @@ -28,3 +28,93 @@ interface SensorErrorEvent : Event { dictionary SensorErrorEventInit : EventInit { required DOMException error; }; + +dictionary MockSensorConfiguration { + required MockSensorType mockSensorType; + boolean connected = true; + double? maxSamplingFrequency; + double? minSamplingFrequency; +}; + +dictionary MockSensor { + double maxSamplingFrequency; + double minSamplingFrequency; + double requestedSamplingFrequency; +}; + +enum MockSensorType { + "ambient-light", + "accelerometer", + "linear-acceleration", + "gravity", + "gyroscope", + "magnetometer", + "uncalibrated-magnetometer", + "absolute-orientation", + "relative-orientation", + "geolocation", + "proximity", +}; + +dictionary MockSensorReadingValues { +}; + +dictionary AmbientLightReadingValues { + required double? illuminance; +}; + +dictionary AccelerometerReadingValues { + required double? x; + required double? y; + required double? z; +}; + +dictionary LinearAccelerationReadingValues : AccelerometerReadingValues { +}; + +dictionary GravityReadingValues : AccelerometerReadingValues { +}; + +dictionary GyroscopeReadingValues { + required double? x; + required double? y; + required double? z; +}; + +dictionary MagnetometerReadingValues { + required double? x; + required double? y; + required double? z; +}; + +dictionary UncalibratedMagnetometerReadingValues { + required double? x; + required double? y; + required double? z; + required double? xBias; + required double? yBias; + required double? zBias; +}; + +dictionary AbsoluteOrientationReadingValues { + required FrozenArray? quaternion; +}; + +dictionary RelativeOrientationReadingValues : AbsoluteOrientationReadingValues { +}; + +dictionary GeolocationReadingValues { + required double? latitude; + required double? longitude; + required double? altitude; + required double? accuracy; + required double? altitudeAccuracy; + required double? heading; + required double? speed; +}; + +dictionary ProximityReadingValues { + required double? distance; + required double? max; + required boolean? near; +}; diff --git a/testing/web-platform/tests/interfaces/geolocation-sensor.idl b/testing/web-platform/tests/interfaces/geolocation-sensor.idl index 40a164767e2a..41c310acefe1 100644 --- a/testing/web-platform/tests/interfaces/geolocation-sensor.idl +++ b/testing/web-platform/tests/interfaces/geolocation-sensor.idl @@ -33,3 +33,13 @@ dictionary GeolocationSensorReading { double? heading; double? speed; }; + +dictionary GeolocationReadingValues { + required double? latitude; + required double? longitude; + required double? altitude; + required double? accuracy; + required double? altitudeAccuracy; + required double? heading; + required double? speed; +}; diff --git a/testing/web-platform/tests/interfaces/gyroscope.idl b/testing/web-platform/tests/interfaces/gyroscope.idl index d71fd367bf06..24cd82c64315 100644 --- a/testing/web-platform/tests/interfaces/gyroscope.idl +++ b/testing/web-platform/tests/interfaces/gyroscope.idl @@ -15,3 +15,9 @@ enum GyroscopeLocalCoordinateSystem { "device", "screen" }; dictionary GyroscopeSensorOptions : SensorOptions { GyroscopeLocalCoordinateSystem referenceFrame = "device"; }; + +dictionary GyroscopeReadingValues { + required double? x; + required double? y; + required double? z; +}; diff --git a/testing/web-platform/tests/interfaces/html.idl b/testing/web-platform/tests/interfaces/html.idl index fa3cd4f56ac2..46d0b852f095 100644 --- a/testing/web-platform/tests/interfaces/html.idl +++ b/testing/web-platform/tests/interfaces/html.idl @@ -1,3 +1,8 @@ +// GENERATED CONTENT - DO NOT EDIT +// Content was automatically extracted by Reffy into reffy-reports +// (https://github.com/tidoust/reffy-reports) +// Source: HTML Standard (https://html.spec.whatwg.org/) + [Exposed=Window, LegacyUnenumerableNamedProperties] interface HTMLAllCollection { @@ -15,6 +20,7 @@ interface HTMLFormControlsCollection : HTMLCollection { getter (RadioNodeList or Element)? namedItem(DOMString name); // shadows inherited namedItem() }; +[Exposed=Window] interface RadioNodeList : NodeList { attribute DOMString value; }; @@ -65,8 +71,8 @@ partial interface Document { readonly attribute HTMLOrSVGScriptElement? currentScript; // classic scripts in a document tree only // dynamic markup insertion - [CEReactions] Document open(optional DOMString type = "text/html", optional DOMString replace = ""); - WindowProxy open(USVString url, DOMString name, DOMString features); + [CEReactions] Document open(optional DOMString unused1, optional DOMString unused2); // both arguments are ignored + WindowProxy? open(USVString url, DOMString name, DOMString features); [CEReactions] void close(); [CEReactions] void write(DOMString... text); [CEReactions] void writeln(DOMString... text); @@ -105,25 +111,23 @@ interface HTMLElement : Element { readonly attribute DOMString accessKeyLabel; [CEReactions] attribute boolean draggable; [CEReactions] attribute boolean spellcheck; + [CEReactions] attribute DOMString autocapitalize; [CEReactions] attribute [TreatNullAs=EmptyString] DOMString innerText; }; -dictionary FocusOptions { - boolean preventScroll = false; -}; - HTMLElement includes GlobalEventHandlers; HTMLElement includes DocumentAndElementEventHandlers; HTMLElement includes ElementContentEditable; HTMLElement includes HTMLOrSVGElement; // Note: intentionally not [HTMLConstructor] +[Exposed=Window] interface HTMLUnknownElement : HTMLElement { }; interface mixin HTMLOrSVGElement { [SameObject] readonly attribute DOMStringMap dataset; - attribute DOMString nonce; + attribute DOMString nonce; // intentionally no [CEReactions] [CEReactions] attribute long tabIndex; void focus(optional FocusOptions options); @@ -140,9 +144,7 @@ interface DOMStringMap { [Exposed=Window, HTMLConstructor] -interface HTMLHtmlElement : HTMLElement { - // also has obsolete members -}; +interface HTMLHtmlElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] @@ -184,8 +186,6 @@ interface HTMLMetaElement : HTMLElement { [CEReactions] attribute DOMString name; [CEReactions] attribute DOMString httpEquiv; [CEReactions] attribute DOMString content; - - // also has obsolete members }; [Exposed=Window, @@ -197,35 +197,25 @@ HTMLStyleElement includes LinkStyle; [Exposed=Window, HTMLConstructor] -interface HTMLBodyElement : HTMLElement { - // also has obsolete members -}; +interface HTMLBodyElement : HTMLElement {}; HTMLBodyElement includes WindowEventHandlers; [Exposed=Window, HTMLConstructor] -interface HTMLHeadingElement : HTMLElement { - // also has obsolete members -}; +interface HTMLHeadingElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] -interface HTMLParagraphElement : HTMLElement { - // also has obsolete members -}; +interface HTMLParagraphElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] -interface HTMLHRElement : HTMLElement { - // also has obsolete members -}; +interface HTMLHRElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] -interface HTMLPreElement : HTMLElement { - // also has obsolete members -}; +interface HTMLPreElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] @@ -239,42 +229,30 @@ interface HTMLOListElement : HTMLElement { [CEReactions] attribute boolean reversed; [CEReactions] attribute long start; [CEReactions] attribute DOMString type; - - // also has obsolete members }; [Exposed=Window, HTMLConstructor] -interface HTMLUListElement : HTMLElement { - // also has obsolete members -}; +interface HTMLUListElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] interface HTMLMenuElement : HTMLElement { - - // also has obsolete members }; [Exposed=Window, HTMLConstructor] interface HTMLLIElement : HTMLElement { [CEReactions] attribute long value; - - // also has obsolete members }; [Exposed=Window, HTMLConstructor] -interface HTMLDListElement : HTMLElement { - // also has obsolete members -}; +interface HTMLDListElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] -interface HTMLDivElement : HTMLElement { - // also has obsolete members -}; +interface HTMLDivElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] @@ -290,8 +268,6 @@ interface HTMLAnchorElement : HTMLElement { [CEReactions] attribute DOMString text; [CEReactions] attribute DOMString referrerPolicy; - - // also has obsolete members }; HTMLAnchorElement includes HTMLHyperlinkElementUtils; @@ -313,9 +289,7 @@ interface HTMLSpanElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] -interface HTMLBRElement : HTMLElement { - // also has obsolete members -}; +interface HTMLBRElement : HTMLElement {}; interface mixin HTMLHyperlinkElementUtils { [CEReactions] stringifier attribute USVString href; @@ -370,10 +344,9 @@ interface HTMLImageElement : HTMLElement { readonly attribute boolean complete; readonly attribute USVString currentSrc; [CEReactions] attribute DOMString referrerPolicy; + [CEReactions] attribute DOMString decoding; Promise decode(); - - // also has obsolete members }; [Exposed=Window, @@ -383,18 +356,15 @@ interface HTMLIFrameElement : HTMLElement { [CEReactions] attribute DOMString srcdoc; [CEReactions] attribute DOMString name; [SameObject, PutForwards=value] readonly attribute DOMTokenList sandbox; + [CEReactions] attribute DOMString allow; [CEReactions] attribute boolean allowFullscreen; [CEReactions] attribute boolean allowPaymentRequest; - [CEReactions] attribute boolean allowUserMedia; [CEReactions] attribute DOMString width; [CEReactions] attribute DOMString height; [CEReactions] attribute DOMString referrerPolicy; readonly attribute Document? contentDocument; readonly attribute WindowProxy? contentWindow; Document? getSVGDocument(); - [SameObject, PutForwards=value] readonly attribute DOMTokenList delegateStickyUserActivation; - - // also has obsolete members }; [Exposed=Window, @@ -405,8 +375,6 @@ interface HTMLEmbedElement : HTMLElement { [CEReactions] attribute DOMString width; [CEReactions] attribute DOMString height; Document? getSVGDocument(); - - // also has obsolete members }; [Exposed=Window, @@ -430,8 +398,6 @@ interface HTMLObjectElement : HTMLElement { boolean checkValidity(); boolean reportValidity(); void setCustomValidity(DOMString error); - - // also has obsolete members }; [Exposed=Window, @@ -439,8 +405,6 @@ interface HTMLObjectElement : HTMLElement { interface HTMLParamElement : HTMLElement { [CEReactions] attribute DOMString name; [CEReactions] attribute DOMString value; - - // also has obsolete members }; [Exposed=Window, @@ -681,8 +645,6 @@ interface HTMLAreaElement : HTMLElement { [CEReactions] attribute DOMString rel; [SameObject, PutForwards=value] readonly attribute DOMTokenList relList; [CEReactions] attribute DOMString referrerPolicy; - - // also has obsolete members }; HTMLAreaElement includes HTMLHyperlinkElementUtils; @@ -707,32 +669,24 @@ interface HTMLTableElement : HTMLElement { [SameObject] readonly attribute HTMLCollection rows; HTMLTableRowElement insertRow(optional long index = -1); [CEReactions] void deleteRow(long index); - - // also has obsolete members }; [Exposed=Window, HTMLConstructor] -interface HTMLTableCaptionElement : HTMLElement { - // also has obsolete members -}; +interface HTMLTableCaptionElement : HTMLElement {}; [Exposed=Window, HTMLConstructor] interface HTMLTableColElement : HTMLElement { [CEReactions] attribute unsigned long span; - - // also has obsolete members }; [Exposed=Window, HTMLConstructor] interface HTMLTableSectionElement : HTMLElement { [SameObject] readonly attribute HTMLCollection rows; - HTMLElement insertRow(optional long index = -1); + HTMLTableRowElement insertRow(optional long index = -1); [CEReactions] void deleteRow(long index); - - // also has obsolete members }; [Exposed=Window, @@ -743,8 +697,6 @@ interface HTMLTableRowElement : HTMLElement { [SameObject] readonly attribute HTMLCollection cells; HTMLTableCellElement insertCell(optional long index = -1); [CEReactions] void deleteCell(long index); - - // also has obsolete members }; [Exposed=Window, @@ -757,8 +709,6 @@ interface HTMLTableCellElement : HTMLElement { [CEReactions] attribute DOMString scope; // only conforming for th elements [CEReactions] attribute DOMString abbr; // only conforming for th elements - - // also has obsolete members }; [Exposed=Window, @@ -855,8 +805,6 @@ interface HTMLInputElement : HTMLElement { void setRangeText(DOMString replacement); void setRangeText(DOMString replacement, unsigned long start, unsigned long end, optional SelectionMode selectionMode = "preserve"); void setSelectionRange(unsigned long start, unsigned long end, optional DOMString direction); - - // also has obsolete members }; [Exposed=Window, @@ -969,7 +917,7 @@ interface HTMLTextAreaElement : HTMLElement { readonly attribute DOMString type; [CEReactions] attribute DOMString defaultValue; - [CEReactions] attribute [TreatNullAs=EmptyString] DOMString value; + attribute [TreatNullAs=EmptyString] DOMString value; readonly attribute unsigned long textLength; readonly attribute boolean willValidate; @@ -1055,8 +1003,6 @@ interface HTMLFieldSetElement : HTMLElement { HTMLConstructor] interface HTMLLegendElement : HTMLElement { readonly attribute HTMLFormElement? form; - - // also has obsolete members }; enum SelectionMode { @@ -1081,6 +1027,16 @@ interface ValidityState { readonly attribute boolean valid; }; +[Exposed=Window, + Constructor(DOMString type, optional FormDataEventInit eventInitDict)] +interface FormDataEvent : Event { + readonly attribute FormData formData; +}; + +dictionary FormDataEventInit : EventInit { + required FormData formData; +}; + [Exposed=Window, HTMLConstructor] interface HTMLDetailsElement : HTMLElement { @@ -1108,6 +1064,7 @@ interface HTMLScriptElement : HTMLElement { [CEReactions] attribute DOMString? crossOrigin; [CEReactions] attribute DOMString text; [CEReactions] attribute DOMString integrity; + [CEReactions] attribute DOMString referrerPolicy; }; @@ -1129,7 +1086,7 @@ dictionary AssignedNodesOptions { boolean flatten = false; }; -typedef (CanvasRenderingContext2D or ImageBitmapRenderingContext or WebGLRenderingContext) RenderingContext; +typedef (CanvasRenderingContext2D or ImageBitmapRenderingContext or WebGLRenderingContext or WebGL2RenderingContext) RenderingContext; [Exposed=Window, HTMLConstructor] @@ -1167,6 +1124,8 @@ enum ImageSmoothingQuality { "low", "medium", "high" }; interface CanvasRenderingContext2D { // back-reference to the canvas readonly attribute HTMLCanvasElement canvas; + + CanvasRenderingContext2DSettings getContextAttributes(); }; CanvasRenderingContext2D includes CanvasState; CanvasRenderingContext2D includes CanvasTransform; @@ -1202,6 +1161,7 @@ interface mixin CanvasTransform { void setTransform(unrestricted double a, unrestricted double b, unrestricted double c, unrestricted double d, unrestricted double e, unrestricted double f); void setTransform(optional DOMMatrix2DInit transform); void resetTransform(); + }; interface mixin CanvasCompositing { @@ -1214,6 +1174,7 @@ interface mixin CanvasImageSmoothing { // image smoothing attribute boolean imageSmoothingEnabled; // (default true) attribute ImageSmoothingQuality imageSmoothingQuality; // (default low) + }; interface mixin CanvasFillStrokeStyles { @@ -1223,6 +1184,7 @@ interface mixin CanvasFillStrokeStyles { CanvasGradient createLinearGradient(double x0, double y0, double x1, double y1); CanvasGradient createRadialGradient(double x0, double y0, double r0, double x1, double y1, double r1); CanvasPattern? createPattern(CanvasImageSource image, [TreatNullAs=EmptyString] DOMString repetition); + }; interface mixin CanvasShadowStyles { @@ -1254,7 +1216,6 @@ interface mixin CanvasDrawPath { void stroke(Path2D path); void clip(optional CanvasFillRule fillRule = "nonzero"); void clip(Path2D path, optional CanvasFillRule fillRule = "nonzero"); - void resetClip(); boolean isPointInPath(unrestricted double x, unrestricted double y, optional CanvasFillRule fillRule = "nonzero"); boolean isPointInPath(Path2D path, unrestricted double x, unrestricted double y, optional CanvasFillRule fillRule = "nonzero"); boolean isPointInStroke(unrestricted double x, unrestricted double y); @@ -1326,9 +1287,12 @@ interface mixin CanvasPath { void quadraticCurveTo(unrestricted double cpx, unrestricted double cpy, unrestricted double x, unrestricted double y); void bezierCurveTo(unrestricted double cp1x, unrestricted double cp1y, unrestricted double cp2x, unrestricted double cp2y, unrestricted double x, unrestricted double y); void arcTo(unrestricted double x1, unrestricted double y1, unrestricted double x2, unrestricted double y2, unrestricted double radius); + void rect(unrestricted double x, unrestricted double y, unrestricted double w, unrestricted double h); void arc(unrestricted double x, unrestricted double y, unrestricted double radius, unrestricted double startAngle, unrestricted double endAngle, optional boolean anticlockwise = false); + void ellipse(unrestricted double x, unrestricted double y, unrestricted double radiusX, unrestricted double radiusY, unrestricted double rotation, unrestricted double startAngle, unrestricted double endAngle, optional boolean anticlockwise = false); + }; [Exposed=(Window,Worker)] @@ -1343,7 +1307,7 @@ interface CanvasPattern { void setTransform(optional DOMMatrix2DInit transform); }; -[Exposed=Window] +[Exposed=(Window,Worker)] interface TextMetrics { // x-direction readonly attribute double width; // advance width @@ -1357,7 +1321,9 @@ interface TextMetrics { readonly attribute double actualBoundingBoxDescent; readonly attribute double emHeightAscent; readonly attribute double emHeightDescent; - Baselines getBaselines(); + readonly attribute double hangingBaseline; + readonly attribute double alphabeticBaseline; + readonly attribute double ideographicBaseline; }; [Constructor(unsigned long sw, unsigned long sh), @@ -1387,27 +1353,25 @@ dictionary ImageBitmapRenderingContextSettings { boolean alpha = true; }; -typedef (OffscreenCanvasRenderingContext2D or - WebGLRenderingContext) OffscreenRenderingContext; +typedef (OffscreenCanvasRenderingContext2D or WebGLRenderingContext or WebGL2RenderingContext) OffscreenRenderingContext; dictionary ImageEncodeOptions { DOMString type = "image/png"; unrestricted double quality = 1.0; }; -enum OffscreenRenderingContextId { "2d", "webgl" }; +enum OffscreenRenderingContextId { "2d", "webgl", "webgl2" }; [Constructor([EnforceRange] unsigned long long width, [EnforceRange] unsigned long long height), Exposed=(Window,Worker), Transferable] interface OffscreenCanvas : EventTarget { - attribute unsigned long long width; - attribute unsigned long long height; + attribute [EnforceRange] unsigned long long width; + attribute [EnforceRange] unsigned long long height; OffscreenRenderingContext? getContext(OffscreenRenderingContextId contextId, optional any options = null); ImageBitmap transferToImageBitmap(); Promise convertToBlob(optional ImageEncodeOptions options); }; - [Exposed=(Window,Worker)] interface OffscreenCanvasRenderingContext2D { void commit(); @@ -1423,33 +1387,41 @@ OffscreenCanvasRenderingContext2D includes CanvasShadowStyles; OffscreenCanvasRenderingContext2D includes CanvasFilters; OffscreenCanvasRenderingContext2D includes CanvasRect; OffscreenCanvasRenderingContext2D includes CanvasDrawPath; +OffscreenCanvasRenderingContext2D includes CanvasText; OffscreenCanvasRenderingContext2D includes CanvasDrawImage; OffscreenCanvasRenderingContext2D includes CanvasImageData; OffscreenCanvasRenderingContext2D includes CanvasPathDrawingStyles; +OffscreenCanvasRenderingContext2D includes CanvasTextDrawingStyles; OffscreenCanvasRenderingContext2D includes CanvasPath; - [Exposed=Window] interface CustomElementRegistry { - [CEReactions] void define(DOMString name, Function constructor, optional ElementDefinitionOptions options); + [CEReactions] void define(DOMString name, CustomElementConstructor constructor, optional ElementDefinitionOptions options); any get(DOMString name); Promise whenDefined(DOMString name); [CEReactions] void upgrade(Node root); }; +callback CustomElementConstructor = any (); + dictionary ElementDefinitionOptions { DOMString extends; }; +dictionary FocusOptions { + boolean preventScroll = false; +}; + interface mixin ElementContentEditable { [CEReactions] attribute DOMString contentEditable; + [CEReactions] attribute DOMString enterKeyHint; readonly attribute boolean isContentEditable; [CEReactions] attribute DOMString inputMode; }; [Exposed=Window, Constructor] - interface DataTransfer { +interface DataTransfer { attribute DOMString dropEffect; attribute DOMString effectAllowed; @@ -1504,6 +1476,7 @@ interface Window : EventTarget { [Replaceable] readonly attribute WindowProxy self; [Unforgeable] readonly attribute Document document; attribute DOMString name; + [PutForwards=href, Unforgeable] readonly attribute Location location; readonly attribute History history; readonly attribute CustomElementRegistry customElements; @@ -1535,7 +1508,8 @@ interface Window : EventTarget { // the user agent readonly attribute Navigator navigator; - readonly attribute ApplicationCache applicationCache; + + [SecureContext] readonly attribute ApplicationCache applicationCache; // user prompts void alert(); @@ -1544,20 +1518,13 @@ interface Window : EventTarget { DOMString? prompt(optional DOMString message = "", optional DOMString default = ""); void print(); - unsigned long requestAnimationFrame(FrameRequestCallback callback); - void cancelAnimationFrame(unsigned long handle); - void postMessage(any message, USVString targetOrigin, optional sequence transfer = []); - void postMessage(any message, optional sequence transfer = [], optional WindowPostMessageOptions options); - - // also has obsolete members + void postMessage(any message, optional WindowPostMessageOptions options); }; Window includes GlobalEventHandlers; Window includes WindowEventHandlers; -callback FrameRequestCallback = void (DOMHighResTimeStamp time); - -dictionary WindowPostMessageOptions { +dictionary WindowPostMessageOptions : PostMessageOptions { USVString targetOrigin = "/"; }; @@ -1570,7 +1537,6 @@ enum ScrollRestoration { "auto", "manual" }; [Exposed=Window] interface History { - readonly attribute unsigned long index; readonly attribute unsigned long length; attribute ScrollRestoration scrollRestoration; readonly attribute any state; @@ -1637,7 +1603,8 @@ interface BeforeUnloadEvent : Event { attribute DOMString returnValue; }; -[Exposed=Window] +[SecureContext, + Exposed=Window] interface ApplicationCache : EventTarget { // update status @@ -1735,6 +1702,7 @@ interface mixin GlobalEventHandlers { attribute EventHandler onended; attribute OnErrorEventHandler onerror; attribute EventHandler onfocus; + attribute EventHandler onformdata; attribute EventHandler oninput; attribute EventHandler oninvalid; attribute EventHandler onkeydown; @@ -1814,6 +1782,9 @@ interface mixin WindowOrWorkerGlobalScope { long setInterval(TimerHandler handler, optional long timeout = 0, any... arguments); void clearInterval(optional long handle = 0); + // microtask queuing + void queueMicrotask(VoidFunction callback); + // ImageBitmap Promise createImageBitmap(ImageBitmapSource image, optional ImageBitmapOptions options); Promise createImageBitmap(ImageBitmapSource image, long sx, long sy, long sw, long sh, optional ImageBitmapOptions options); @@ -1843,11 +1814,9 @@ interface mixin NavigatorID { readonly attribute DOMString userAgent; [Exposed=Window] readonly attribute DOMString vendor; [Exposed=Window] readonly attribute DOMString vendorSub; // constant "" - - // also has additional members in a partial interface }; -partial interface NavigatorID { +partial interface mixin NavigatorID { [Exposed=Window] boolean taintEnabled(); // constant false [Exposed=Window] readonly attribute DOMString oscpu; }; @@ -1933,6 +1902,15 @@ dictionary ImageBitmapOptions { ResizeQuality resizeQuality = "low"; }; +callback FrameRequestCallback = void (DOMHighResTimeStamp time); + +interface mixin AnimationFrameProvider { + unsigned long requestAnimationFrame(FrameRequestCallback callback); + void cancelAnimationFrame(unsigned long handle); +}; +Window includes AnimationFrameProvider; +DedicatedWorkerGlobalScope includes AnimationFrameProvider; + [Constructor(DOMString type, optional MessageEventInit eventInitDict), Exposed=(Window,Worker,AudioWorklet)] interface MessageEvent : Event { readonly attribute any data; @@ -2027,7 +2005,8 @@ interface MessageChannel { [Exposed=(Window,Worker,AudioWorklet), Transferable] interface MessagePort : EventTarget { - void postMessage(any message, optional sequence transfer = []); + void postMessage(any message, sequence transfer); + void postMessage(any message, optional PostMessageOptions options); void start(); void close(); @@ -2036,6 +2015,10 @@ interface MessagePort : EventTarget { attribute EventHandler onmessageerror; }; +dictionary PostMessageOptions { + sequence transfer = []; +}; + [Constructor(DOMString name), Exposed=(Window,Worker)] interface BroadcastChannel : EventTarget { readonly attribute DOMString name; @@ -2064,7 +2047,8 @@ interface WorkerGlobalScope : EventTarget { interface DedicatedWorkerGlobalScope : WorkerGlobalScope { [Replaceable] readonly attribute DOMString name; - void postMessage(any message, optional sequence transfer = []); + void postMessage(any message, sequence transfer); + void postMessage(any message, optional PostMessageOptions options); void close(); @@ -2089,14 +2073,15 @@ interface mixin AbstractWorker { interface Worker : EventTarget { void terminate(); - void postMessage(any message, optional sequence transfer = []); + void postMessage(any message, sequence transfer); + void postMessage(any message, optional PostMessageOptions options); attribute EventHandler onmessage; attribute EventHandler onmessageerror; }; dictionary WorkerOptions { WorkerType type = "classic"; - RequestCredentials credentials = "omit"; // credentials is only used if type is "module" + RequestCredentials credentials = "same-origin"; // credentials is only used if type is "module" DOMString name = ""; }; @@ -2163,6 +2148,8 @@ interface StorageEvent : Event { readonly attribute DOMString? newValue; readonly attribute USVString url; readonly attribute Storage? storageArea; + + void initStorageEvent(DOMString type, optional boolean bubbles = false, optional boolean cancelable = false, optional DOMString? key = null, optional DOMString? oldValue = null, optional DOMString? newValue = null, optional USVString url = "", optional Storage? storageArea = null); }; dictionary StorageEventInit : EventInit { @@ -2282,6 +2269,7 @@ interface HTMLFontElement : HTMLElement { [CEReactions] attribute [TreatNullAs=EmptyString] DOMString color; [CEReactions] attribute DOMString face; [CEReactions] attribute DOMString size; + }; partial interface HTMLHeadingElement { @@ -2461,8 +2449,7 @@ partial interface Window { [Replaceable, SameObject] readonly attribute External external; }; -[Exposed=Window, - NoInterfaceObject] +[Exposed=Window] interface External { void AddSearchProvider(); void IsSearchProviderInstalled(); diff --git a/testing/web-platform/tests/interfaces/magnetometer.idl b/testing/web-platform/tests/interfaces/magnetometer.idl index bcc8d4becbaf..fd29af847679 100644 --- a/testing/web-platform/tests/interfaces/magnetometer.idl +++ b/testing/web-platform/tests/interfaces/magnetometer.idl @@ -27,3 +27,18 @@ interface UncalibratedMagnetometer : Sensor { readonly attribute double? yBias; readonly attribute double? zBias; }; + +dictionary MagnetometerReadingValues { + required double? x; + required double? y; + required double? z; +}; + +dictionary UncalibratedMagnetometerReadingValues { + required double? x; + required double? y; + required double? z; + required double? xBias; + required double? yBias; + required double? zBias; +}; diff --git a/testing/web-platform/tests/interfaces/mediastream-recording.idl b/testing/web-platform/tests/interfaces/mediastream-recording.idl index 5bf661e6cc5e..0be0538d1227 100644 --- a/testing/web-platform/tests/interfaces/mediastream-recording.idl +++ b/testing/web-platform/tests/interfaces/mediastream-recording.idl @@ -18,7 +18,7 @@ interface MediaRecorder : EventTarget { readonly attribute unsigned long videoBitsPerSecond; readonly attribute unsigned long audioBitsPerSecond; - void start(optional long timeslice); + void start(optional unsigned long timeslice); void stop(); void pause(); void resume(); diff --git a/testing/web-platform/tests/interfaces/orientation-sensor.idl b/testing/web-platform/tests/interfaces/orientation-sensor.idl index 49acba9e201d..a9aec968e0a0 100644 --- a/testing/web-platform/tests/interfaces/orientation-sensor.idl +++ b/testing/web-platform/tests/interfaces/orientation-sensor.idl @@ -24,3 +24,10 @@ interface AbsoluteOrientationSensor : OrientationSensor { [Constructor(optional OrientationSensorOptions sensorOptions), SecureContext, Exposed=Window] interface RelativeOrientationSensor : OrientationSensor { }; + +dictionary AbsoluteOrientationReadingValues { + required FrozenArray? quaternion; +}; + +dictionary RelativeOrientationReadingValues : AbsoluteOrientationReadingValues { +}; diff --git a/testing/web-platform/tests/interfaces/payment-request.idl b/testing/web-platform/tests/interfaces/payment-request.idl index 63a9ccccad4d..53922d315cfd 100644 --- a/testing/web-platform/tests/interfaces/payment-request.idl +++ b/testing/web-platform/tests/interfaces/payment-request.idl @@ -92,7 +92,6 @@ interface PaymentAddress { readonly attribute DOMString postalCode; readonly attribute DOMString recipient; readonly attribute DOMString region; - readonly attribute DOMString regionCode; readonly attribute DOMString sortingCode; readonly attribute FrozenArray addressLine; }; @@ -101,7 +100,6 @@ dictionary AddressInit { DOMString country; sequence addressLine; DOMString region; - DOMString regionCode; DOMString city; DOMString dependentLocality; DOMString postalCode; @@ -121,7 +119,6 @@ dictionary AddressErrors { DOMString postalCode; DOMString recipient; DOMString region; - DOMString regionCode; DOMString sortingCode; }; diff --git a/testing/web-platform/tests/interfaces/performance-timeline.idl b/testing/web-platform/tests/interfaces/performance-timeline.idl index 0cd2830b2ea2..7766bfd7b09e 100644 --- a/testing/web-platform/tests/interfaces/performance-timeline.idl +++ b/testing/web-platform/tests/interfaces/performance-timeline.idl @@ -30,8 +30,9 @@ interface PerformanceObserver { }; dictionary PerformanceObserverInit { - required sequence entryTypes; - boolean buffered = false; + sequence entryTypes; + DOMString type; + boolean buffered; }; [Exposed=(Window,Worker)] diff --git a/testing/web-platform/tests/interfaces/picture-in-picture.idl b/testing/web-platform/tests/interfaces/picture-in-picture.idl index c7bc249dffce..164ec02a9cf2 100644 --- a/testing/web-platform/tests/interfaces/picture-in-picture.idl +++ b/testing/web-platform/tests/interfaces/picture-in-picture.idl @@ -9,6 +9,7 @@ partial interface HTMLVideoElement { attribute EventHandler onenterpictureinpicture; attribute EventHandler onleavepictureinpicture; + [CEReactions] attribute boolean autoPictureInPicture; [CEReactions] attribute boolean disablePictureInPicture; }; @@ -18,7 +19,7 @@ partial interface Document { [NewObject] Promise exitPictureInPicture(); }; -partial interface DocumentOrShadowRoot { +partial interface mixin DocumentOrShadowRoot { readonly attribute Element? pictureInPictureElement; }; diff --git a/testing/web-platform/tests/interfaces/pointerlock.idl b/testing/web-platform/tests/interfaces/pointerlock.idl index fca676df459f..13f7a8be4822 100644 --- a/testing/web-platform/tests/interfaces/pointerlock.idl +++ b/testing/web-platform/tests/interfaces/pointerlock.idl @@ -13,7 +13,7 @@ partial interface Document { void exitPointerLock(); }; -partial interface DocumentOrShadowRoot { +partial interface mixin DocumentOrShadowRoot { readonly attribute Element? pointerLockElement; }; diff --git a/testing/web-platform/tests/interfaces/shape-detection-api.idl b/testing/web-platform/tests/interfaces/shape-detection-api.idl index dbdf022e3847..72fce2001cad 100644 --- a/testing/web-platform/tests/interfaces/shape-detection-api.idl +++ b/testing/web-platform/tests/interfaces/shape-detection-api.idl @@ -14,6 +14,7 @@ dictionary FaceDetectorOptions { boolean fastMode; }; +[Serializable] interface DetectedFace { [SameObject] readonly attribute DOMRectReadOnly boundingBox; [SameObject] readonly attribute FrozenArray? landmarks; @@ -33,7 +34,7 @@ enum LandmarkType { [Exposed=(Window,Worker), Constructor(optional BarcodeDetectorOptions barcodeDetectorOptions)] interface BarcodeDetector { - readonly attribute FrozenArray supportedFormats; + static Promise> getSupportedFormats(); Promise> detect(ImageBitmapSource image); }; @@ -42,6 +43,7 @@ dictionary BarcodeDetectorOptions { sequence formats; }; +[Serializable] interface DetectedBarcode { [SameObject] readonly attribute DOMRectReadOnly boundingBox; [SameObject] readonly attribute DOMString rawValue; diff --git a/testing/web-platform/tests/interfaces/user-timing.idl b/testing/web-platform/tests/interfaces/user-timing.idl index 60b22776c9bc..da8a0acd6738 100644 --- a/testing/web-platform/tests/interfaces/user-timing.idl +++ b/testing/web-platform/tests/interfaces/user-timing.idl @@ -1,19 +1,34 @@ // GENERATED CONTENT - DO NOT EDIT // Content was automatically extracted by Reffy into reffy-reports // (https://github.com/tidoust/reffy-reports) -// Source: User Timing Level 2 (https://w3c.github.io/user-timing/) +// Source: User Timing Level 3 (https://w3c.github.io/user-timing/) + +dictionary PerformanceMarkOptions { + any detail = null; + DOMHighResTimeStamp startTime; +}; + +dictionary PerformanceMeasureOptions { + any detail = null; + (DOMString or DOMHighResTimeStamp) startTime; + DOMHighResTimeStamp duration; + (DOMString or DOMHighResTimeStamp) endTime; +}; partial interface Performance { - void mark(DOMString markName); + PerformanceMark mark(DOMString markName, optional PerformanceMarkOptions markOptions); void clearMarks(optional DOMString markName); - void measure(DOMString measureName, optional DOMString startMark, optional DOMString endMark); + PerformanceMeasure measure(DOMString measureName, optional (DOMString or PerformanceMeasureOptions) startOrMeasureOptions, optional DOMString endMark); void clearMeasures(optional DOMString measureName); }; -[Exposed=(Window,Worker)] +[Exposed=(Window,Worker), + Constructor(DOMString markName, optional PerformanceMarkOptions markOptions)] interface PerformanceMark : PerformanceEntry { + readonly attribute any detail; }; [Exposed=(Window,Worker)] interface PerformanceMeasure : PerformanceEntry { + readonly attribute any detail; }; diff --git a/testing/web-platform/tests/interfaces/wai-aria.idl b/testing/web-platform/tests/interfaces/wai-aria.idl index c6ea9591f8d7..21feb78b0b2a 100644 --- a/testing/web-platform/tests/interfaces/wai-aria.idl +++ b/testing/web-platform/tests/interfaces/wai-aria.idl @@ -1,7 +1,7 @@ // GENERATED CONTENT - DO NOT EDIT // Content was automatically extracted by Reffy into reffy-reports // (https://github.com/tidoust/reffy-reports) -// Source: Accessible Rich Internet Applications (WAI-ARIA) 1.2 (https://w3c.github.io/aria/) +// Source: Accessible Rich Internet Applications (WAI-ARIA) 1.2 (https://rawgit.com/w3c/aria/master/) interface mixin AccessibilityRole { attribute DOMString? role; diff --git a/testing/web-platform/tests/interfaces/wasm-js-api.idl b/testing/web-platform/tests/interfaces/wasm-js-api.idl index 6de14fb8f089..2bd2ecba828d 100644 --- a/testing/web-platform/tests/interfaces/wasm-js-api.idl +++ b/testing/web-platform/tests/interfaces/wasm-js-api.idl @@ -43,7 +43,7 @@ dictionary ModuleImportDescriptor { interface Module { static sequence exports(Module moduleObject); static sequence imports(Module moduleObject); - static sequence customSections(Module moduleObject, USVString sectionName); + static sequence customSections(Module moduleObject, DOMString sectionName); }; [LegacyNamespace=WebAssembly, Constructor(Module module, optional object importObject), Exposed=(Window,Worker,Worklet)] diff --git a/testing/web-platform/tests/interfaces/web-bluetooth.idl b/testing/web-platform/tests/interfaces/web-bluetooth.idl index d372f0260eb4..00b93a551335 100644 --- a/testing/web-platform/tests/interfaces/web-bluetooth.idl +++ b/testing/web-platform/tests/interfaces/web-bluetooth.idl @@ -23,7 +23,7 @@ dictionary RequestDeviceOptions { boolean acceptAllDevices = false; }; -[SecureContext] +[Exposed=Window, SecureContext] interface Bluetooth : EventTarget { Promise getAvailability(); attribute EventHandler onavailabilitychanged; @@ -31,9 +31,9 @@ interface Bluetooth : EventTarget { readonly attribute BluetoothDevice? referringDevice; Promise requestDevice(optional RequestDeviceOptions options); }; -Bluetooth implements BluetoothDeviceEventHandlers; -Bluetooth implements CharacteristicEventHandlers; -Bluetooth implements ServiceEventHandlers; +Bluetooth includes BluetoothDeviceEventHandlers; +Bluetooth includes CharacteristicEventHandlers; +Bluetooth includes ServiceEventHandlers; dictionary BluetoothPermissionDescriptor : PermissionDescriptor { DOMString deviceId; @@ -53,11 +53,13 @@ dictionary BluetoothPermissionData { required sequence allowedDevices; }; +[Exposed=Window] interface BluetoothPermissionResult : PermissionStatus { attribute FrozenArray devices; }; [ + Exposed=Window, Constructor(DOMString type, optional ValueEventInit initDict), SecureContext ] @@ -69,8 +71,8 @@ dictionary ValueEventInit : EventInit { any value = null; }; -[SecureContext] -interface BluetoothDevice { +[Exposed=Window, SecureContext] +interface BluetoothDevice : EventTarget { readonly attribute DOMString id; readonly attribute DOMString? name; readonly attribute BluetoothRemoteGATTServer? gatt; @@ -79,20 +81,20 @@ interface BluetoothDevice { void unwatchAdvertisements(); readonly attribute boolean watchingAdvertisements; }; -BluetoothDevice implements EventTarget; -BluetoothDevice implements BluetoothDeviceEventHandlers; -BluetoothDevice implements CharacteristicEventHandlers; -BluetoothDevice implements ServiceEventHandlers; +BluetoothDevice includes BluetoothDeviceEventHandlers; +BluetoothDevice includes CharacteristicEventHandlers; +BluetoothDevice includes ServiceEventHandlers; -[SecureContext] +[Exposed=Window, SecureContext] interface BluetoothManufacturerDataMap { readonly maplike; }; -[SecureContext] +[Exposed=Window, SecureContext] interface BluetoothServiceDataMap { readonly maplike; }; [ + Exposed=Window, Constructor(DOMString type, BluetoothAdvertisingEventInit init), SecureContext ] @@ -116,11 +118,11 @@ dictionary BluetoothAdvertisingEventInit : EventInit { unsigned short appearance; byte txPower; byte rssi; - Map manufacturerData; - Map serviceData; + BluetoothManufacturerDataMap manufacturerData; + BluetoothServiceDataMap serviceData; }; -[SecureContext] +[Exposed=Window, SecureContext] interface BluetoothRemoteGATTServer { [SameObject] readonly attribute BluetoothDevice device; @@ -132,8 +134,8 @@ interface BluetoothRemoteGATTServer { getPrimaryServices(optional BluetoothServiceUUID service); }; -[SecureContext] -interface BluetoothRemoteGATTService { +[Exposed=Window, SecureContext] +interface BluetoothRemoteGATTService : EventTarget { [SameObject] readonly attribute BluetoothDevice device; readonly attribute UUID uuid; @@ -147,12 +149,11 @@ interface BluetoothRemoteGATTService { Promise> getIncludedServices(optional BluetoothServiceUUID service); }; -BluetoothRemoteGATTService implements EventTarget; -BluetoothRemoteGATTService implements CharacteristicEventHandlers; -BluetoothRemoteGATTService implements ServiceEventHandlers; +BluetoothRemoteGATTService includes CharacteristicEventHandlers; +BluetoothRemoteGATTService includes ServiceEventHandlers; -[SecureContext] -interface BluetoothRemoteGATTCharacteristic { +[Exposed=Window, SecureContext] +interface BluetoothRemoteGATTCharacteristic : EventTarget { [SameObject] readonly attribute BluetoothRemoteGATTService service; readonly attribute UUID uuid; @@ -166,10 +167,9 @@ interface BluetoothRemoteGATTCharacteristic { Promise startNotifications(); Promise stopNotifications(); }; -BluetoothRemoteGATTCharacteristic implements EventTarget; -BluetoothRemoteGATTCharacteristic implements CharacteristicEventHandlers; +BluetoothRemoteGATTCharacteristic includes CharacteristicEventHandlers; -[SecureContext] +[Exposed=Window, SecureContext] interface BluetoothCharacteristicProperties { readonly attribute boolean broadcast; readonly attribute boolean read; @@ -182,7 +182,7 @@ interface BluetoothCharacteristicProperties { readonly attribute boolean writableAuxiliaries; }; -[SecureContext] +[Exposed=Window, SecureContext] interface BluetoothRemoteGATTDescriptor { [SameObject] readonly attribute BluetoothRemoteGATTCharacteristic characteristic; @@ -192,24 +192,25 @@ interface BluetoothRemoteGATTDescriptor { Promise writeValue(BufferSource value); }; -[NoInterfaceObject, SecureContext] -interface CharacteristicEventHandlers { +[SecureContext] +interface mixin CharacteristicEventHandlers { attribute EventHandler oncharacteristicvaluechanged; }; -[NoInterfaceObject, SecureContext] -interface BluetoothDeviceEventHandlers { +[SecureContext] +interface mixin BluetoothDeviceEventHandlers { attribute EventHandler ongattserverdisconnected; }; -[NoInterfaceObject, SecureContext] -interface ServiceEventHandlers { +[SecureContext] +interface mixin ServiceEventHandlers { attribute EventHandler onserviceadded; attribute EventHandler onservicechanged; attribute EventHandler onserviceremoved; }; typedef DOMString UUID; +[Exposed=Window] interface BluetoothUUID { static UUID getService((DOMString or unsigned long) name); static UUID getCharacteristic((DOMString or unsigned long) name); diff --git a/testing/web-platform/tests/interfaces/web-nfc.idl b/testing/web-platform/tests/interfaces/web-nfc.idl index 3dd4817eb0df..5a6d6f8a06b1 100644 --- a/testing/web-platform/tests/interfaces/web-nfc.idl +++ b/testing/web-platform/tests/interfaces/web-nfc.idl @@ -24,10 +24,6 @@ enum NFCRecordType { "opaque" }; -partial interface Navigator { - [SecureContext, SameObject] readonly attribute NFC nfc; -}; - typedef (DOMString or ArrayBuffer or NFCMessage) NFCMessageSource; [Constructor(), SecureContext, Exposed=Window] @@ -35,12 +31,32 @@ interface NFCWriter { Promise push(NFCMessageSource message, optional NFCPushOptions options); }; -[SecureContext] -interface NFC { - Promise watch(MessageCallback callback, optional NFCWatchOptions options); +[Constructor(optional NFCReaderOptions options), SecureContext, Exposed=Window] +interface NFCReader : EventTarget { + attribute EventHandler onreading; + attribute EventHandler onerror; + + void start(); + void stop(); }; -callback MessageCallback = void (NFCMessage message); +[Constructor(DOMString type, NFCReadingEventInit readingEventInitDict), SecureContext, Exposed=Window] +interface NFCReadingEvent : Event { + readonly attribute NFCMessage message; +}; + +dictionary NFCReadingEventInit : EventInit { + required NFCMessage message; +}; + +[Constructor(DOMString type, NFCErrorEventInit errorEventInitDict), SecureContext, Exposed=Window] +interface NFCErrorEvent : Event { + readonly attribute DOMException error; +}; + +dictionary NFCErrorEventInit : EventInit { + required DOMException error; +}; dictionary NFCPushOptions { NFCPushTarget target = "any"; @@ -55,15 +71,14 @@ enum NFCPushTarget { "any" }; -dictionary NFCWatchOptions { +dictionary NFCReaderOptions { USVString url = ""; NFCRecordType recordType; USVString mediaType = ""; - NFCWatchMode mode = "web-nfc-only"; - AbortSignal? signal; + NFCAccept accept = "web-nfc-only"; }; -enum NFCWatchMode { +enum NFCAccept { "web-nfc-only", "any" }; diff --git a/testing/web-platform/tests/interfaces/webrtc-stats.idl b/testing/web-platform/tests/interfaces/webrtc-stats.idl index cf07738b8b45..c86097b697b5 100644 --- a/testing/web-platform/tests/interfaces/webrtc-stats.idl +++ b/testing/web-platform/tests/interfaces/webrtc-stats.idl @@ -3,12 +3,6 @@ // (https://github.com/tidoust/reffy-reports) // Source: Identifiers for WebRTC's Statistics API (https://w3c.github.io/webrtc-stats/) -dictionary RTCStats { -DOMHighResTimeStamp timestamp; -RTCStatsType type; -DOMString id; - }; - enum RTCStatsType { "codec", "inbound-rtp", @@ -314,7 +308,7 @@ partial dictionary RTCIceCandidatePairStats { unsigned long long priority; }; -partial dictionary RTCRTPStreamStats { +partial dictionary RTCRtpStreamStats { DOMString mediaType; double averageRTCPInterval; }; diff --git a/testing/web-platform/tests/interfaces/webrtc.idl b/testing/web-platform/tests/interfaces/webrtc.idl index c7529ced356d..dc51e2f2f3ae 100644 --- a/testing/web-platform/tests/interfaces/webrtc.idl +++ b/testing/web-platform/tests/interfaces/webrtc.idl @@ -402,6 +402,7 @@ dictionary RTCRtpSynchronizationSource : RTCRtpContributingSource { }; [Exposed=Window] interface RTCDtlsTransport : EventTarget { + [SameObject] readonly attribute RTCIceTransport iceTransport; readonly attribute RTCDtlsTransportState state; sequence getRemoteCertificates(); diff --git a/testing/web-platform/tests/interfaces/webxr.idl b/testing/web-platform/tests/interfaces/webxr.idl index ea45aef97715..63643a11b6b0 100644 --- a/testing/web-platform/tests/interfaces/webxr.idl +++ b/testing/web-platform/tests/interfaces/webxr.idl @@ -26,15 +26,13 @@ enum XREnvironmentBlendMode { [SecureContext, Exposed=Window] interface XRSession : EventTarget { // Attributes readonly attribute XRSessionMode mode; - readonly attribute XRPresentationContext outputContext; + readonly attribute XRPresentationContext? outputContext; readonly attribute XREnvironmentBlendMode environmentBlendMode; - - attribute double depthNear; - attribute double depthFar; - attribute XRLayer baseLayer; + readonly attribute XRRenderState renderState; // Methods - Promise requestReferenceSpace(XRReferenceSpaceType type, optional XRReferenceSpaceOptions options); + void updateRenderState(optional XRRenderStateInit state); + Promise requestReferenceSpace(XRReferenceSpaceOptions options); FrozenArray getInputSources(); @@ -61,7 +59,19 @@ enum XRSessionMode { dictionary XRSessionCreationOptions { XRSessionMode mode = "inline"; - XRPresentationContext outputContext; + XRPresentationContext? outputContext = null; +}; + +dictionary XRRenderStateInit { + double depthNear; + double depthFar; + XRLayer? baseLayer; +}; + +[SecureContext, Exposed=Window] interface XRRenderState { + readonly attribute double depthNear; + readonly attribute double depthFar; + readonly attribute XRLayer? baseLayer; }; callback XRFrameRequestCallback = void (DOMHighResTimeStamp time, XRFrame frame); @@ -88,6 +98,7 @@ dictionary XRReferenceSpaceOptions { }; [SecureContext, Exposed=Window] interface XRReferenceSpace : XRSpace { + attribute XRRigidTransform originOffset; attribute EventHandler onreset; }; diff --git a/testing/web-platform/tests/kv-storage/META.yml b/testing/web-platform/tests/kv-storage/META.yml new file mode 100644 index 000000000000..bf4a1e6e8b44 --- /dev/null +++ b/testing/web-platform/tests/kv-storage/META.yml @@ -0,0 +1,3 @@ +spec: https://wicg.github.io/kv-storage/ +suggested_reviewers: + - domenic diff --git a/testing/web-platform/tests/async-local-storage/api-surface.tentative.https.html b/testing/web-platform/tests/kv-storage/api-surface.https.html similarity index 80% rename from testing/web-platform/tests/async-local-storage/api-surface.tentative.https.html rename to testing/web-platform/tests/kv-storage/api-surface.https.html index eea51abd5397..90e705862d59 100644 --- a/testing/web-platform/tests/async-local-storage/api-surface.tentative.https.html +++ b/testing/web-platform/tests/kv-storage/api-surface.https.html @@ -1,14 +1,14 @@ -Async local storage API surface +KV Storage: API surface + + + + diff --git a/testing/web-platform/tests/kv-storage/entries.https.html b/testing/web-platform/tests/kv-storage/entries.https.html new file mode 100644 index 000000000000..0d1ab849a709 --- /dev/null +++ b/testing/web-platform/tests/kv-storage/entries.https.html @@ -0,0 +1,290 @@ + + +KV Storage: entries() trickier tests + + + + + diff --git a/testing/web-platform/tests/async-local-storage/helpers/class-assert.js b/testing/web-platform/tests/kv-storage/helpers/class-assert.js similarity index 74% rename from testing/web-platform/tests/async-local-storage/helpers/class-assert.js rename to testing/web-platform/tests/kv-storage/helpers/class-assert.js index 31b25cab9f2d..89f0889c56d3 100644 --- a/testing/web-platform/tests/async-local-storage/helpers/class-assert.js +++ b/testing/web-platform/tests/kv-storage/helpers/class-assert.js @@ -38,6 +38,38 @@ export function propertyKeys(o, expectedNames, expectedSymbols, label) { `${label}property symbols`); } +export function iterResultCustom(o, expectedValue, expectedDone, valueAsserter, label) { + label = formatLabel(label); + + assert_equals(typeof expectedDone, "boolean", + `${label} iterResult assert usage check: expectedDone must be a boolean`); + + propertyKeys(o, ["value", "done"], [], label); + assert_equals(Object.getPrototypeOf(o), Object.prototype, `${label}prototype must be Object.prototype`); + valueAsserter(o.value, expectedValue, `${label}value`); + assert_equals(o.done, expectedDone, `${label}done`); +} + +export function iterResult(o, expectedValue, expectedDone, label) { + return iterResultCustom(o, expectedValue, expectedDone, assert_equals, label); +} + +export function iterResultsCustom(actualArray, expectedArrayOfArrays, valueAsserter, label) { + label = formatLabel(label); + + assert_equals(actualArray.length, expectedArrayOfArrays.length, + `${label} iterResults assert usage check: actual and expected must have the same length`); + + for (let i = 0; i < actualArray.length; ++i) { + const [expectedValue, expectedDone] = expectedArrayOfArrays[i]; + iterResultCustom(actualArray[i], expectedValue, expectedDone, valueAsserter, `${label}iter result ${i}`); + } +} + +export function iterResults(actualArray, expectedArrayOfArrays, label) { + return iterResultsCustom(actualArray, expectedArrayOfArrays, assert_equals, label); +} + export function methods(o, expectedMethods) { for (const [name, length] of Object.entries(expectedMethods)) { method(o, name, length); @@ -103,5 +135,5 @@ function isConstructorTest(o) { } function formatLabel(label) { - return label !== undefined ? ` ${label}` : ""; + return label !== undefined ? `${label} ` : ""; } diff --git a/testing/web-platform/tests/kv-storage/helpers/equality-asserters.js b/testing/web-platform/tests/kv-storage/helpers/equality-asserters.js new file mode 100644 index 000000000000..448ab31348ce --- /dev/null +++ b/testing/web-platform/tests/kv-storage/helpers/equality-asserters.js @@ -0,0 +1,91 @@ +export function assertEqualDates(actual, expected, label) { + label = formatLabel(label); + + assert_equals(expected.constructor, Date, + `${label}assertEqualDates usage check: expected must be a Date`); + + assert_equals(actual.constructor, Date, `${label}must be a Date`); + assert_equals(actual.valueOf(), expected.valueOf(), `${label}timestamps must match`); +} + +export function assertEqualPostKeyRoundtripping(actual, expected, label) { + label = formatLabel(label); + + // Please extend this to support other types as needed! + assert_true( + typeof expected === "number" || typeof expected === "string" || expected.constructor === Date, + `${label}assertEqualPostKeyRoundtripping usage check: currently only supports numbers, strings, and dates` + ); + + if (expected.constructor === Date) { + assert_equals(actual.constructor, Date, `${label}comparing to Date(${Number(expected)}) (actual = ${actual})`); + actual = Number(actual); + expected = Number(expected); + } + + assert_equals(actual, expected, label); +} + +export function assertEqualArrayBuffers(actual, expected, label) { + label = formatLabel(label); + + assert_equals(expected.constructor, ArrayBuffer, + `${label}assertEqualArrayBuffers usage check: expected must be an ArrayBuffer`); + + assert_equals(actual.constructor, ArrayBuffer, `${label}must be an ArrayBuffer`); + assert_array_equals(new Uint8Array(actual), new Uint8Array(expected), `${label}must match`); +} + +export function assertArrayBufferEqualsABView(actual, expected, label) { + label = formatLabel(label); + + assert_true(ArrayBuffer.isView(expected), + `${label}assertArrayBufferEqualsABView usage check: expected must be an ArrayBuffer view`); + + assertEqualArrayBuffers(actual, expected.buffer, label); +} + +export function assertAsyncIteratorEquals(actual, expected, label) { + return assertAsyncIteratorCustomEquals(actual, expected, Object.is, label); +} + +export function assertArrayCustomEquals(actual, expected, equalityAsserter, label) { + label = formatLabel(label); + + assert_true(Array.isArray(expected), + `${label} assertArrayCustomEquals usage check: expected must be an Array`); + + assert_true(Array.isArray(actual), `${label}must be an array`); + assert_equals(actual.length, expected.length, `${label}length must be as expected`); + + for (let i = 0; i < actual.length; ++i) { + equalityAsserter(actual[i], expected[i], `${label}index ${i}`); + } +} + +export async function assertAsyncIteratorCustomEquals(actual, expected, equalityAsserter, label) { + label = formatLabel(label); + + assert_true(Array.isArray(expected), + `${label} assertAsyncIteratorCustomEquals usage check: expected must be an Array`); + + const collected = await collectAsyncIterator(actual); + assert_equals(collected.length, expected.length, `${label}length must be as expected`); + + for (let i = 0; i < collected.length; ++i) { + equalityAsserter(collected[i], expected[i], `${label}index ${i}`); + } +} + +async function collectAsyncIterator(asyncIterator) { + const array = []; + for await (const entry of asyncIterator) { + array.push(entry); + } + + return array; +} + +function formatLabel(label) { + return label !== undefined ? `${label} ` : ""; +} diff --git a/testing/web-platform/tests/async-local-storage/helpers/als-tests.js b/testing/web-platform/tests/kv-storage/helpers/kvs-tests.js similarity index 53% rename from testing/web-platform/tests/async-local-storage/helpers/als-tests.js rename to testing/web-platform/tests/kv-storage/helpers/kvs-tests.js index fd6d6844f72e..a6c4d58dfa5e 100644 --- a/testing/web-platform/tests/async-local-storage/helpers/als-tests.js +++ b/testing/web-platform/tests/kv-storage/helpers/kvs-tests.js @@ -1,5 +1,5 @@ -import { StorageArea, storage as defaultArea } from "std:async-local-storage"; -import { assertArrayCustomEquals } from "./equality-asserters.js"; +import { StorageArea, storage as defaultArea } from "std:kv-storage"; +import { assertAsyncIteratorEquals, assertAsyncIteratorCustomEquals } from "./equality-asserters.js"; export function testWithArea(testFn, description) { promise_test(t => { @@ -19,7 +19,7 @@ export function testWithDefaultArea(testFn, description) { } // These two functions take a key/value and use them to test -// set()/get()/delete()/has()/keys()/values()/entries(). The keyEqualityAsserter should be a +// set()/get()/delete()/keys()/values()/entries(). The keyEqualityAsserter should be a // function from ./equality-asserters.js. export function testVariousMethodsWithDefaultArea(label, key, value, keyEqualityAsserter) { @@ -35,30 +35,29 @@ function testVariousMethodsInner(key, value, keyEqualityAsserter) { await assertPromiseEquals(area.set(key, value), undefined, "set()", "undefined"); await assertPromiseEquals(area.get(key), value, "get()", "the set value"); - await assertPromiseEquals(area.has(key), true, "has()", "true"); - const keysPromise = area.keys(); - assertIsPromise(keysPromise, "keys()"); - assertArrayCustomEquals(await keysPromise, [key], keyEqualityAsserter, "keys() must have the key"); + const keysIter = area.keys(); + await assertAsyncIteratorCustomEquals(keysIter, [key], keyEqualityAsserter, "keys() must have the key"); - const valuesPromise = area.values(); - assertIsPromise(valuesPromise); - assert_array_equals(await valuesPromise, [value], "values() must have the value"); + const valuesIter = area.values(); + await assertAsyncIteratorEquals(valuesIter, [value], "values() must have the value"); - const entriesPromise = area.entries(); - assertIsPromise(entriesPromise, "entries()"); - const entries = await entriesPromise; - assert_true(Array.isArray(entries), "entries() must give an array"); - assert_equals(entries.length, 1, "entries() must have only one value"); - assert_true(Array.isArray(entries[0]), "entries() 0th element must be an array"); - assert_equals(entries[0].length, 2, "entries() 0th element must have 2 elements"); - keyEqualityAsserter(entries[0][0], key, "entries() 0th element's 0th element must be the key"); - assert_equals(entries[0][1], value, "entries() 0th element's 1st element must be the value"); + const entriesIter = area.entries(); + + const entry0 = await entriesIter.next(); + assert_false(entry0.done, "entries() 0th iter-result must not be done"); + assert_true(Array.isArray(entry0.value), "entries() 0th iter-result value must be an array"); + assert_equals(entry0.value.length, 2, "entries() 0th iter-result value must have 2 elements"); + keyEqualityAsserter(entry0.value[0], key, "entries() 0th iter-result value's 0th element must be the key"); + assert_equals(entry0.value[1], value, "entries() 0th iter-result value's 1st element must be the value"); + + const entry1 = await entriesIter.next(); + assert_true(entry1.done, "entries() 1st iter-result must be done"); + assert_equals(entry1.value, undefined, "entries() 1st iter-result must have undefined value"); await assertPromiseEquals(area.delete(key), undefined, "delete()", "undefined"); await assertPromiseEquals(area.get(key), undefined, "get()", "undefined after deleting"); - await assertPromiseEquals(area.has(key), false, "has()", "false after deleting"); }; } diff --git a/testing/web-platform/tests/async-local-storage/key-types.tentative.https.html b/testing/web-platform/tests/kv-storage/key-types.https.html similarity index 91% rename from testing/web-platform/tests/async-local-storage/key-types.tentative.https.html rename to testing/web-platform/tests/kv-storage/key-types.https.html index 771ee2f9749a..0dc930258f8b 100644 --- a/testing/web-platform/tests/async-local-storage/key-types.tentative.https.html +++ b/testing/web-platform/tests/kv-storage/key-types.https.html @@ -1,12 +1,12 @@ -Async local storage: tests against various key types +KV Storage: tests against various key types + + + + diff --git a/testing/web-platform/tests/kv-storage/keys.https.html b/testing/web-platform/tests/kv-storage/keys.https.html new file mode 100644 index 000000000000..a6be29725bf3 --- /dev/null +++ b/testing/web-platform/tests/kv-storage/keys.https.html @@ -0,0 +1,236 @@ + + +KV Storage: keys() trickier tests + + + + + diff --git a/testing/web-platform/tests/async-local-storage/non-secure-context-dynamic-import.tentative.html b/testing/web-platform/tests/kv-storage/non-secure-context-dynamic-import.html similarity index 64% rename from testing/web-platform/tests/async-local-storage/non-secure-context-dynamic-import.tentative.html rename to testing/web-platform/tests/kv-storage/non-secure-context-dynamic-import.html index 9270f6c82fa2..6ccbf84ba1dc 100644 --- a/testing/web-platform/tests/async-local-storage/non-secure-context-dynamic-import.tentative.html +++ b/testing/web-platform/tests/kv-storage/non-secure-context-dynamic-import.html @@ -1,6 +1,6 @@ -Async local storage: should not work in non-secure contexts when included via import() +KV Storage: should not work in non-secure contexts when included via import() @@ -13,6 +13,6 @@ test(() => { }, "Prerequisite check"); promise_test(t => { - return promise_rejects(t, "SecurityError", import("std:async-local-storage")); + return promise_rejects(t, "SecurityError", import("std:kv-storage")); }); diff --git a/testing/web-platform/tests/async-local-storage/non-secure-context-import-statement.tentative.html b/testing/web-platform/tests/kv-storage/non-secure-context-import-statement.html similarity index 82% rename from testing/web-platform/tests/async-local-storage/non-secure-context-import-statement.tentative.html rename to testing/web-platform/tests/kv-storage/non-secure-context-import-statement.html index 879729696dbb..fda02aadf14f 100644 --- a/testing/web-platform/tests/async-local-storage/non-secure-context-import-statement.tentative.html +++ b/testing/web-platform/tests/kv-storage/non-secure-context-import-statement.html @@ -1,6 +1,6 @@ -Async local storage: should not work in non-secure contexts when included via an import statement +KV Storage: should not work in non-secure contexts when included via an import statement @@ -23,5 +23,5 @@ async_test(t => { diff --git a/testing/web-platform/tests/async-local-storage/non-secure-context-script-element.tentative.html b/testing/web-platform/tests/kv-storage/non-secure-context-script-element.html similarity index 79% rename from testing/web-platform/tests/async-local-storage/non-secure-context-script-element.tentative.html rename to testing/web-platform/tests/kv-storage/non-secure-context-script-element.html index feeddafc8daa..66802b1254ed 100644 --- a/testing/web-platform/tests/async-local-storage/non-secure-context-script-element.tentative.html +++ b/testing/web-platform/tests/kv-storage/non-secure-context-script-element.html @@ -1,6 +1,6 @@ -Async local storage: should not work in non-secure contexts when included via a script element +KV Storage: should not work in non-secure contexts when included via a script element @@ -22,4 +22,4 @@ async_test(t => { }); - + diff --git a/testing/web-platform/tests/async-local-storage/storage-smoke-test.tentative.https.html b/testing/web-platform/tests/kv-storage/storage-smoke-test.https.html similarity index 76% rename from testing/web-platform/tests/async-local-storage/storage-smoke-test.tentative.https.html rename to testing/web-platform/tests/kv-storage/storage-smoke-test.https.html index f978480ff2b8..df6fd8c8181f 100644 --- a/testing/web-platform/tests/async-local-storage/storage-smoke-test.tentative.https.html +++ b/testing/web-platform/tests/kv-storage/storage-smoke-test.https.html @@ -1,13 +1,13 @@ -Async local storage storage export smoke test +KV storage: storage export smoke test + + + diff --git a/testing/web-platform/tests/kv-storage/values.https.html b/testing/web-platform/tests/kv-storage/values.https.html new file mode 100644 index 000000000000..64756bf195fc --- /dev/null +++ b/testing/web-platform/tests/kv-storage/values.https.html @@ -0,0 +1,231 @@ + + +KV Storage: values() trickier tests + + + + + diff --git a/testing/web-platform/tests/lint.whitelist b/testing/web-platform/tests/lint.whitelist index c3ff66bc0cf7..2f94041e6653 100644 --- a/testing/web-platform/tests/lint.whitelist +++ b/testing/web-platform/tests/lint.whitelist @@ -167,6 +167,7 @@ SET TIMEOUT: html/semantics/embedded-content/the-img-element/* SET TIMEOUT: html/semantics/scripting-1/the-script-element/* SET TIMEOUT: html/webappapis/dynamic-markup-insertion/opening-the-input-stream/0* SET TIMEOUT: html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/history-frame.html +SET TIMEOUT: html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/url-entry-document-timer-frame.html SET TIMEOUT: html/webappapis/dynamic-markup-insertion/opening-the-input-stream/tasks.window.js SET TIMEOUT: html/webappapis/scripting/event-loops/* SET TIMEOUT: html/webappapis/scripting/events/event-handler-processing-algorithm-error/* @@ -293,6 +294,7 @@ GENERATE_TESTS: shadow-dom/untriaged/shadow-trees/upper-boundary-encapsulation/w SET TIMEOUT: css/css-fonts/font-display/font-display.html SET TIMEOUT: css/css-fonts/font-display/font-display-change.html SET TIMEOUT: css/css-fonts/font-display/font-display-change-ref.html +SET TIMEOUT: css/css-fonts/font-display/font-display-feature-policy.tentative.html SET TIMEOUT: css/css-fonts/font-display/font-display-preload.html SET TIMEOUT: html/browsers/windows/auxiliary-browsing-contexts/resources/close-opener.html SET TIMEOUT: html/dom/documents/dom-tree-accessors/Document.currentScript.html diff --git a/testing/web-platform/tests/longtask-timing/supported-longtask-types.any.js b/testing/web-platform/tests/longtask-timing/supported-longtask-types.any.js index 0179fc5e60ce..3c68c01d32d6 100644 --- a/testing/web-platform/tests/longtask-timing/supported-longtask-types.any.js +++ b/testing/web-platform/tests/longtask-timing/supported-longtask-types.any.js @@ -7,3 +7,32 @@ test(() => { assert_false(types.includes("taskattribution"), "There should NOT be 'taskattribution' in PerformanceObserver.supportedEntryTypes"); }, "supportedEntryTypes contains 'longtask' but not 'taskattribution'."); + +function syncWait(waitDuration) { + if (waitDuration <= 0) + return; + + const startTime = performance.now(); + let unused = ''; + for (let i = 0; i < 10000; i++) + unused += '' + Math.random(); + + return syncWait(waitDuration - (performance.now() - startTime)); +} + +if (typeof PerformanceObserver.supportedEntryTypes !== "undefined") { + const entryType = "longtask"; + if (PerformanceObserver.supportedEntryTypes.includes(entryType)) { + promise_test(async () => { + await new Promise((resolve) => { + new PerformanceObserver(function (list, observer) { + observer.disconnect(); + resolve(); + }).observe({entryTypes: [entryType]}); + + // Force the PerformanceEntry. + syncWait(50); + }) + }, `'${entryType}' entries should be observable.`) + } +} diff --git a/testing/web-platform/tests/magnetometer/Magnetometer-supported-by-feature-policy.html b/testing/web-platform/tests/magnetometer/Magnetometer-supported-by-feature-policy.html new file mode 100644 index 000000000000..a04936389507 --- /dev/null +++ b/testing/web-platform/tests/magnetometer/Magnetometer-supported-by-feature-policy.html @@ -0,0 +1,11 @@ + +Test that magnetometer is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/mathml/META.yml b/testing/web-platform/tests/mathml/META.yml index 6b347c12d897..a410f582f0a9 100644 --- a/testing/web-platform/tests/mathml/META.yml +++ b/testing/web-platform/tests/mathml/META.yml @@ -1,3 +1,3 @@ -spec: https://w3c.github.io/mathml/ +spec: http://www.mathml-association.org/MathMLinHTML5/ suggested_reviewers: - fred-wang diff --git a/testing/web-platform/tests/mediacapture-depth/META.yml b/testing/web-platform/tests/mediacapture-depth/META.yml index 434612091df4..e083c9b8c3ab 100644 --- a/testing/web-platform/tests/mediacapture-depth/META.yml +++ b/testing/web-platform/tests/mediacapture-depth/META.yml @@ -3,3 +3,4 @@ suggested_reviewers: - anssiko - Honry - robman + - astojilj diff --git a/testing/web-platform/tests/mediacapture-depth/dictionary-helper.js b/testing/web-platform/tests/mediacapture-depth/dictionary-helper.js new file mode 100644 index 000000000000..46853525f087 --- /dev/null +++ b/testing/web-platform/tests/mediacapture-depth/dictionary-helper.js @@ -0,0 +1,141 @@ +"use strict"; + +// Helper assertion functions to validate dictionary fields +// on dictionary objects returned from APIs + +function assert_string(object) { + assert_equals(typeof object, "string", + `Expect ${object} to be string`); +} + +function assert_string_field(object, field) { + const str = object[field]; + assert_equals(typeof str, "string", + `Expect dictionary.${field} to be string`); +} + +function assert_number_field(object, field) { + const num = object[field]; + assert_equals(typeof num, "number", + `Expect dictionary.${field} to be number`); +} + +function assert_boolean_field(object, field, value = "") { + const bool = object[field]; + assert_equals(typeof bool, "boolean", + `Expect dictionary.${field} to be boolean`); + if (object[field] !== "") { + assert_equals(object[field], value, + `Expect default value of dictionary.${field} to be ${value}`); + } +} + +function assert_array_field(object, field) { + assert_true(Array.isArray(object[field]), + `Expect dictionary.${field} to be array`); +} + +function assert_enum_field(object, field, validValues) { + assert_string_field(object, field); + assert_true(validValues.includes(object[field]), + `Expect dictionary.${field} to have one of the valid enum values: ${validValues}`); +} + +function assert_number_range_field(object, field, key) { + const num = object[field][key]; + assert_equals(typeof num, "number", + `Expect dictionary.${field}.${key} to be number`); +} + +function assert_boolean_range_field(object, field, key) { + const bool = object[field][key]; + assert_equals(typeof bool, "boolean", + `Expect dictionary.${field}.${key} to be boolean`); +} + +function assert_number_or_number_range_field(object, field) { + if (typeof object[field] !== "object") { + assert_number_field(object, field); + } else { + if (object[field]["max"] !== undefined) + assert_number_range_field(object, field, "max"); + if (object[field]["min"] !== undefined) + assert_number_range_field(object, field, "min"); + if (object[field]["max"] === undefined && + object[field]["min"] === undefined) + assert_unreached(); + } +} + +function assert_constrain_string_field(object, field) { + // test DOMString type + if (typeof object[field] !== "object") { + assert_string_field(object, field); + // test ConstrainDOMStringParameters type + } else if (typeof object[field]["exact"] !== undefined || typeof object[field]["ideal"] !== undefined) { + if (object[field]["exact"] !== undefined) { + // test DOMString type key value of ConstrainDOMStringParameters dictionary + if (typeof object[field] !== "object") { + assert_string_field(object[field], "exact"); + // test sequence type key value of ConstrainDOMStringParameters dictionary + } else { + assert_array_field(object[field], "exact"); + for(const item of object[field]["exact"]) { + assert_string(item); + } + } + } + if (object[field]["ideal"] !== undefined) { + // test DOMString type key value of ConstrainDOMStringParameters dictionary + if (typeof object[field] !== "object") { + assert_string_field(object[field], "ideal"); + // test sequence type key value of ConstrainDOMStringParameters dictionary + } else { + assert_array_field(object[field], "ideal"); + for(const item of object[field]["ideal"]) { + assert_string(item); + } + } + } + // test sequence type + } else { + assert_array_field(object, field); + for(const item of object[field]) { + assert_string(item); + } + } +} + +function assert_constrain_number_field(object, field) { + if (typeof object[field] !== "object") { + assert_number_field(object, field); + } else { + if (object[field]["max"] !== undefined) + assert_number_range_field(object, field, "max"); + if (object[field]["min"] !== undefined) + assert_number_range_field(object, field, "min"); + if (object[field]["exact"] !== undefined) + assert_number_range_field(object, field, "exact"); + if (object[field]["ideal"] !== undefined) + assert_number_range_field(object, field, "ideal"); + if (object[field]["max"] === undefined && + object[field]["min"] === undefined && + object[field]["exact"] === undefined && + object[field]["ideal"] === undefined) + assert_unreached(); + } +} + +function assert_constrain_boolean_field(object, field) { + if (typeof object[field] !== "object") { + assert_boolean_field(object, field); + } else { + if (object[field]["exact"] !== undefined) + assert_boolean_range_field(object, field, "exact"); + if (object[field]["ideal"] !== undefined) + assert_boolean_range_field(object, field, "ideal"); + if (object[field]["exact"] === undefined && + object[field]["ideal"] === undefined) + assert_unreached(); + } +} diff --git a/testing/web-platform/tests/mediacapture-depth/dictionary-manual.https.html b/testing/web-platform/tests/mediacapture-depth/dictionary-manual.https.html new file mode 100644 index 000000000000..e464f293fb1d --- /dev/null +++ b/testing/web-platform/tests/mediacapture-depth/dictionary-manual.https.html @@ -0,0 +1,277 @@ + + +Media Capture Depth Dictionary Test + + + + + + + +

    Preconditions

    +
      +
    1. + Use a test device with depth camera(embedded or external). +
    2. +
    3. + When prompted, accept to share your depth/color(RGB) stream. +
    4. +
    + +
    + + diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-creation.https.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-creation.https.html new file mode 100644 index 000000000000..57e636c69846 --- /dev/null +++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-creation.https.html @@ -0,0 +1,56 @@ + + + + MediaRecorder Creation + + + + + + diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-detached-context.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-detached-context.html new file mode 100644 index 000000000000..f8a8699ad9fb --- /dev/null +++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-detached-context.html @@ -0,0 +1,26 @@ + + + + MediaRecorder Detached Context + + + + + + + + diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-disabled-tracks.https.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-disabled-tracks.https.html new file mode 100644 index 000000000000..fe26e0c9616a --- /dev/null +++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-disabled-tracks.https.html @@ -0,0 +1,53 @@ + + + + MediaRecorder Disabled Tracks + + + + + diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-error.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-error.html index 2459449acf93..7852ee3a7c14 100644 --- a/testing/web-platform/tests/mediacapture-record/MediaRecorder-error.html +++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-error.html @@ -24,6 +24,14 @@ return canvas.captureStream(); } + function drawSomethingOnCanvas() { + let canvas = document.getElementById("canvas"); + // Drawing something on the canvas generates a frame in its captured stream. + let context = canvas.getContext("2d"); + context.fillStyle = "red"; + context.fillRect(0, 0, 10, 10); + } + async_test(t => { let video = createVideoStream(); let audio = createAudioStream(); @@ -38,6 +46,7 @@ recorder.start(); assert_equals(recorder.state, "recording", "MediaRecorder has been started successfully"); video.addTrack(audio.getAudioTracks()[0]); + drawSomethingOnCanvas(); t.step_timeout(() => { assert_unreached("error event is not fired after 2 seconds"); }, 2000); @@ -56,6 +65,7 @@ recorder.start(); assert_equals(recorder.state, "recording", "MediaRecorder has been started successfully"); video.removeTrack(video.getVideoTracks()[0]); + drawSomethingOnCanvas(); t.step_timeout(() => { assert_unreached("error event is not fired after 2 seconds"); }, 2000); diff --git a/testing/web-platform/tests/mediacapture-record/MediaRecorder-events-and-exceptions.html b/testing/web-platform/tests/mediacapture-record/MediaRecorder-events-and-exceptions.html new file mode 100644 index 000000000000..58b9c08ecab0 --- /dev/null +++ b/testing/web-platform/tests/mediacapture-record/MediaRecorder-events-and-exceptions.html @@ -0,0 +1,116 @@ + + + + MediaRecorder events and exceptions + + + + + + + diff --git a/testing/web-platform/tests/mediacapture-streams/MediaStream-supported-by-feature-policy.html b/testing/web-platform/tests/mediacapture-streams/MediaStream-supported-by-feature-policy.html new file mode 100644 index 000000000000..ef29ae6eec21 --- /dev/null +++ b/testing/web-platform/tests/mediacapture-streams/MediaStream-supported-by-feature-policy.html @@ -0,0 +1,15 @@ + +Test that accelerometer is advertised in the feature list + + + + + diff --git a/testing/web-platform/tests/mixed-content/generic/tools/generate.py b/testing/web-platform/tests/mixed-content/generic/tools/generate.py index e7a315d59cea..1e0a404a709a 100755 --- a/testing/web-platform/tests/mixed-content/generic/tools/generate.py +++ b/testing/web-platform/tests/mixed-content/generic/tools/generate.py @@ -2,6 +2,7 @@ from __future__ import print_function +import copy import os, sys, json from common_paths import * import spec_validator @@ -67,10 +68,11 @@ def generate_selection(selection, spec, test_html_template_basename): test_html_template_basename) generated_disclaimer = disclaimer_template \ % {'generating_script_filename': os.path.relpath(__file__, - test_root_directory), + test_root_directory), 'html_template_filename': os.path.relpath(html_template_filename, - test_root_directory)} + test_root_directory)} + # Adjust the template for the test invoking JS. Indent it to look nice. selection['generated_disclaimer'] = generated_disclaimer.rstrip() test_description_template = \ test_description_template.rstrip().replace("\n", "\n" + " " * 33) @@ -104,6 +106,7 @@ def generate_selection(selection, spec, test_html_template_basename): # Write out the generated HTML file. write_file(test_filename, test_html_template % selection) + def generate_test_source_files(spec_json, target): test_expansion_schema = spec_json['test_expansion_schema'] specification = spec_json['specification'] @@ -116,33 +119,45 @@ def generate_test_source_files(spec_json, target): html_template = "test.%s.html.template" % target artifact_order = test_expansion_schema.keys() + ['name'] + artifact_order.remove('expansion') # Create list of excluded tests. exclusion_dict = {} for excluded_pattern in spec_json['excluded_tests']: excluded_expansion = \ - expand_pattern(excluded_pattern, - test_expansion_schema) - for excluded_selection in permute_expansion(excluded_expansion, artifact_order): + expand_pattern(excluded_pattern, test_expansion_schema) + for excluded_selection in permute_expansion(excluded_expansion, + artifact_order): excluded_selection_path = selection_pattern % excluded_selection exclusion_dict[excluded_selection_path] = True for spec in specification: + # Used to make entries with expansion="override" override preceding + # entries with the same |selection_path|. + output_dict = {} + for expansion_pattern in spec['test_expansion']: - expansion = expand_pattern(expansion_pattern, - test_expansion_schema) + expansion = expand_pattern(expansion_pattern, test_expansion_schema) for selection in permute_expansion(expansion, artifact_order): selection_path = selection_pattern % selection if not selection_path in exclusion_dict: - generate_selection(selection, - spec, - html_template) + if selection_path in output_dict: + if expansion_pattern['expansion'] != 'override': + print("Error: %s's expansion is default but overrides %s" % (selection['name'], output_dict[selection_path]['name'])) + sys.exit(1) + output_dict[selection_path] = copy.deepcopy(selection) else: print('Excluding selection:', selection_path) + for selection_path in output_dict: + selection = output_dict[selection_path] + generate_selection(selection, + spec, + html_template) + def main(target, spec_filename): - spec_json = load_spec_json(spec_filename); + spec_json = load_spec_json(spec_filename) spec_validator.assert_valid_spec_json(spec_json) generate_test_source_files(spec_json, target) diff --git a/testing/web-platform/tests/mixed-content/generic/tools/spec_validator.py b/testing/web-platform/tests/mixed-content/generic/tools/spec_validator.py index 0ae2990f4e1b..686579ece579 100755 --- a/testing/web-platform/tests/mixed-content/generic/tools/spec_validator.py +++ b/testing/web-platform/tests/mixed-content/generic/tools/spec_validator.py @@ -30,17 +30,17 @@ def assert_contains(obj, field): assert field in obj, 'Must contain field "%s"' % field -def assert_string_from(obj, field, items): +def assert_value_from(obj, field, items): assert obj[field] in items, \ 'Field "%s" must be from: %s' % (field, str(items)) -def assert_string_or_list_items_from(obj, field, items): - if isinstance(obj[field], basestring): - assert_string_from(obj, field, items) +def assert_atom_or_list_items_from(obj, field, items): + if isinstance(obj[field], basestring) or isinstance(obj[field], int): + assert_value_from(obj, field, items) return - assert isinstance(obj[field], list), "%s must be a list!" % field + assert isinstance(obj[field], list), '%s must be a list' % field for allowed_value in obj[field]: assert allowed_value != '*', "Wildcard is not supported for lists!" assert allowed_value in items, \ @@ -63,8 +63,8 @@ def assert_value_unique_in(value, used_values): def assert_valid_artifact(exp_pattern, artifact_key, schema): if isinstance(schema, list): - assert_string_or_list_items_from(exp_pattern, artifact_key, - ["*"] + schema) + assert_atom_or_list_items_from(exp_pattern, artifact_key, + ["*"] + schema) return for sub_artifact_key, sub_schema in schema.iteritems(): @@ -110,7 +110,7 @@ def validate(spec_json, details): for spec_exp in spec['test_expansion']: details['object'] = spec_exp assert_non_empty_string(spec_exp, 'name') - # The name is unique in same expansion group. + # The name is unique in same expansion group. assert_value_unique_in((spec_exp['expansion'], spec_exp['name']), used_spec_names) assert_contains_only_fields(spec_exp, valid_test_expansion_fields) @@ -136,7 +136,14 @@ def validate(spec_json, details): for excluded_test_expansion in excluded_tests: assert_contains_only_fields(excluded_test_expansion, valid_test_expansion_fields) - + details['object'] = excluded_test_expansion + for artifact in test_expansion_schema: + details['test_expansion_field'] = artifact + assert_valid_artifact( + excluded_test_expansion, + artifact, + test_expansion_schema[artifact]) + del details['test_expansion_field'] del details['object'] diff --git a/testing/web-platform/tests/navigation-timing/supported_navigation_type.any.js b/testing/web-platform/tests/navigation-timing/supported_navigation_type.any.js index 5e9151cea724..3239c7d29ffb 100644 --- a/testing/web-platform/tests/navigation-timing/supported_navigation_type.any.js +++ b/testing/web-platform/tests/navigation-timing/supported_navigation_type.any.js @@ -4,3 +4,17 @@ test(() => { assert_true(PerformanceObserver.supportedEntryTypes.includes("navigation"), "There should be an entry 'navigation' in PerformanceObserver.supportedEntryTypes"); }, "supportedEntryTypes contains 'navigation'."); + +if (typeof PerformanceObserver.supportedEntryTypes !== "undefined") { + const entryType = "navigation"; + if (PerformanceObserver.supportedEntryTypes.includes(entryType)) { + promise_test(async() => { + await new Promise((resolve) => { + new PerformanceObserver(function (list, observer) { + observer.disconnect(); + resolve(); + }).observe({entryTypes: [entryType]}); + }) + }, `'${entryType}' entries should be observable.`) + } +} diff --git a/testing/web-platform/tests/origin-policy/origin-policy-features.https.tentative.html b/testing/web-platform/tests/origin-policy/origin-policy-features.https.tentative.html index b5dbe3e6e1a6..e83acf1dbdef 100644 --- a/testing/web-platform/tests/origin-policy/origin-policy-features.https.tentative.html +++ b/testing/web-platform/tests/origin-policy/origin-policy-features.https.tentative.html @@ -7,8 +7,8 @@ diff --git a/testing/web-platform/tests/paint-timing/supported-paint-type.any.js b/testing/web-platform/tests/paint-timing/supported-paint-type.any.js index 623c880c5735..36acf82ca3b6 100644 --- a/testing/web-platform/tests/paint-timing/supported-paint-type.any.js +++ b/testing/web-platform/tests/paint-timing/supported-paint-type.any.js @@ -4,3 +4,22 @@ test(() => { assert_true(PerformanceObserver.supportedEntryTypes.includes("paint"), "There should be an entry 'paint' in PerformanceObserver.supportedEntryTypes"); }, "supportedEntryTypes contains 'paint'."); + +if (typeof PerformanceObserver.supportedEntryTypes !== "undefined") { + const entryType = 'paint'; + if (PerformanceObserver.supportedEntryTypes.includes(entryType)) { + promise_test(async() => { + await new Promise((resolve) => { + new PerformanceObserver(function (list, observer) { + observer.disconnect(); + resolve(); + }).observe({entryTypes: [entryType]}); + + // Force the PerformanceEntry. + // Use `self` for Workers. + if (self.document) + document.head.parentNode.appendChild(document.createTextNode('foo')); + }) + }, `'${entryType}' entries should be observable.`) + } +} diff --git a/testing/web-platform/tests/payment-request/META.yml b/testing/web-platform/tests/payment-request/META.yml index 16738814437a..227ca551dc2f 100644 --- a/testing/web-platform/tests/payment-request/META.yml +++ b/testing/web-platform/tests/payment-request/META.yml @@ -4,7 +4,6 @@ suggested_reviewers: - rsolomakhin - domenic - zouhir - - mnoorenberghe - romandev - edenchuang - aestes diff --git a/testing/web-platform/tests/payment-request/MerchantValidationEvent/constructor.https.html b/testing/web-platform/tests/payment-request/MerchantValidationEvent/constructor.https.html index ec8a4ff1ed09..2978226f3cc3 100644 --- a/testing/web-platform/tests/payment-request/MerchantValidationEvent/constructor.https.html +++ b/testing/web-platform/tests/payment-request/MerchantValidationEvent/constructor.https.html @@ -8,6 +8,13 @@ + + + +

    Request billing address

    +

    + Click on each button in sequence from top to bottom without refreshing the + page. Each button will bring up the Payment Request UI window. +

    +

    + When the payment sheet is presented, select a payment method (e.g., a credit + card). +

    +
      +
    1. + +
    2. +
    3. + +
    4. +
    5. +
    + + If you find a buggy test, please + file a bug and + tag one of the + suggested reviewers. + diff --git a/testing/web-platform/tests/payment-request/blank.html b/testing/web-platform/tests/payment-request/blank.html new file mode 100644 index 000000000000..7852a427e861 --- /dev/null +++ b/testing/web-platform/tests/payment-request/blank.html @@ -0,0 +1 @@ + diff --git a/testing/web-platform/tests/payment-request/change-shipping-option-manual.https.html b/testing/web-platform/tests/payment-request/change-shipping-option-manual.https.html index a33365bac73e..438001804acd 100644 --- a/testing/web-platform/tests/payment-request/change-shipping-option-manual.https.html +++ b/testing/web-platform/tests/payment-request/change-shipping-option-manual.https.html @@ -9,7 +9,17 @@ + + + + + + diff --git a/testing/web-platform/tests/payment-request/payment-request-abort-method.https.html b/testing/web-platform/tests/payment-request/payment-request-abort-method.https.html index 8e561b288d15..75e39a011c39 100644 --- a/testing/web-platform/tests/payment-request/payment-request-abort-method.https.html +++ b/testing/web-platform/tests/payment-request/payment-request-abort-method.https.html @@ -17,6 +17,13 @@ setup({ const basicCard = Object.freeze({ supportedMethods: "basic-card" }); const applePay = Object.freeze({ supportedMethods: "https://apple.com/apple-pay", + data: { + version: 3, + merchantIdentifier: "merchant.com.example", + countryCode: "US", + merchantCapabilities: ["supports3DS"], + supportedNetworks: ["visa"], + } }); const defaultMethods = Object.freeze([basicCard, applePay]); const defaultDetails = Object.freeze({ diff --git a/testing/web-platform/tests/payment-request/payment-request-canmakepayment-method-protection.https.html b/testing/web-platform/tests/payment-request/payment-request-canmakepayment-method-protection.https.html index b0582d520d30..e221034dd4eb 100644 --- a/testing/web-platform/tests/payment-request/payment-request-canmakepayment-method-protection.https.html +++ b/testing/web-platform/tests/payment-request/payment-request-canmakepayment-method-protection.https.html @@ -8,7 +8,16 @@ + + + +
    + +
    diff --git a/testing/web-platform/tests/svg/coordinate-systems/support/abspos-ref.html b/testing/web-platform/tests/svg/coordinate-systems/support/abspos-ref.html new file mode 100644 index 000000000000..6966d8cbc88d --- /dev/null +++ b/testing/web-platform/tests/svg/coordinate-systems/support/abspos-ref.html @@ -0,0 +1,19 @@ + +Intrinsic sizing for <svg> + + +
    + +
    diff --git a/testing/web-platform/tests/svg/geometry/parsing/sizing-properties-computed.svg b/testing/web-platform/tests/svg/geometry/parsing/sizing-properties-computed.svg new file mode 100644 index 000000000000..93d6815de3b6 --- /dev/null +++ b/testing/web-platform/tests/svg/geometry/parsing/sizing-properties-computed.svg @@ -0,0 +1,56 @@ + + + SVG Geometry Properties: getComputedValue().width + + + + + + + + + + + +} + diff --git a/testing/web-platform/tests/svg/interact/manual/event-attribute-001-manual.svg b/testing/web-platform/tests/svg/interact/manual/event-attribute-001-manual.svg new file mode 100644 index 000000000000..af22470b9acb --- /dev/null +++ b/testing/web-platform/tests/svg/interact/manual/event-attribute-001-manual.svg @@ -0,0 +1,27 @@ + + + Event attributes - onwheel + + + + + + + + Select the box, use the mouse wheel and check that the box become green. + + diff --git a/testing/web-platform/tests/tools/certs/README.md b/testing/web-platform/tests/tools/certs/README.md index f5ae7413afec..63119ba7f6c8 100644 --- a/testing/web-platform/tests/tools/certs/README.md +++ b/testing/web-platform/tests/tools/certs/README.md @@ -5,3 +5,7 @@ For Firefox, go to about:preferences and search for "certificates". For browsers that use the Certificate Authorities of the underlying OS, such as Chrome and Safari, you need to adjust the OS. For macOS, go to Keychain Access and add the certificate under **login**. + +### Updating these certs + +From the root, run `./wpt serve --config tools/certs/config.json` and terminate it after it has started up. diff --git a/testing/web-platform/tests/tools/certs/cacert.key b/testing/web-platform/tests/tools/certs/cacert.key index 58b5ff75684a..907b8650808e 100644 --- a/testing/web-platform/tests/tools/certs/cacert.key +++ b/testing/web-platform/tests/tools/certs/cacert.key @@ -1,30 +1,30 @@ -----BEGIN ENCRYPTED PRIVATE KEY----- -MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIb9ES7h6YGBcCAggA -MBQGCCqGSIb3DQMHBAi2ZVLgq1XvagSCBMjAmGEVvjwXvF00veuQmJsmcjVHB/qP -VqSXjCQ94orZb89UfFnPO9zXdvLWxrwb5WP6bbQv+Sh4htExXCD5XZi1AzWNCybe -da0vvQGgjdzUh2fCrG4K7J0w20lrYgw3HVSj/WtmdbdZFdoX+BgXrxcqkE3M5opZ -3UD3yIQeXSxUkh3iv6zzZaWujxjDI2JpwxRmMVbrr8OeBrKJsqB2DnKmq+emmvEF -iXTN3Ww/Aj6GIqfPZ8jpVdwcVN5QpeHAh7b2lszt7GEOGcBhutPq4Aqy8PIiDR80 -sUYI7V8OXm+Y45DnfkvsogZEifOiUrQ2U+aGDu+Zt88661wVzjq+voJlz8EaIPCE -B/NS2SgNqI2/DrjEEecn6hjgHWIUBwOfeNoSi1Tri6KZFyxG26LE/V8Cd50yodx9 -pBgFxdCbmYLeRcVeXW2bu0ZMjPddRlR5MHfrkM5ZAze7nRxoiyWnB/U8pPf+bQvx -K4P9KcwCOeHigkaCYZKq7nmZyEy4km89zIugT/YWhMWyVwylTpagaiiJwYLjug8n -CbFZWAkORBIl2g/YCuTBUJtC2IWX8kw+nYVwqBszpZyC6nbha2UmhQDfMAowQA5v -n1LnV8I6f7u6HidbB8WX2UZoh03A4beCBz+dq2VaUquLTL4KQTIz+6rw7nEysrnH -TIb8SlwsYAlzzwyyM9dSWt7iQeNjmH7zL0MozMs3LKHIrsWi7ZZh8BUYnT2vKdNV -2ZLOMcR0tYVmVZ8uYkR9kny/fbZcKN54xScohA2UX261W+sWiEgN+RaBsQ79pFgi -vYldfjaGNSvftXa590xn2tlS6/suB5MxiW5g3PuBg5XtVZ95l0f1n376Xh41sJv8 -YHrCtFHOlSpDJULGiXVh/wXBmS7qJ8DhnUUG699EdlsFf6Qg22WB3AZRvEJdYC4z -P8W+jZ15NTDbHg3Hv7/CFYVzbXv2w0jkiqQgDF/wc6t/EdLD+2hzcN+nJGjtxZbn -xjbXcg98CUMU+dc/aD4N45K9e9rPg3+iZLwvsRvwx+MszmgxxPv05pNyRO7RVk8r -gkyyp9/CJFme+4nFKUc0dUy2yNXZtklTX0XKm/YNKin6uUMlIArIa54Cfvt9QslV -iD+SxU1ZHmzwKT82+5ZeIRLNWvFV/9E4nD+BTagK2Fdwnsu1S2k7ItD9lK/cBPGS -0tz1HWv4Auj3wMPZklp3SQluOl6eAIVqqI9GaX/d42DctBQWLTa27YibWyNIcw7o -3N8GDREMawTBdDRwlZ3oT+yiGLX1c8ds2o0/4IcJlOkDoxXErmdlZo9oVe6z4R7g -62yR53atVTLoUnAjxHXx0bJiyayv9Y3wjOEvuhuqdd9F+HOhTtAHr/BJQNhEk+z8 -531CZTJjb1p11PbOtHGV2IeB0S82mxkkXRykEXOb89ZpDHNRiMinThRkoCmuRI9r -dTiES9B02yMPxJ3sLQyDxCoS5mwfcAqKTeK+yCvTvBy+t5tw63DbWlMp/7Ahy65K -rWMHdwqwfoB+ZYw5sYZdPvuBVAT01I2JbOqX36RacQultFns2OinxOJHa1HjtXyS -cPVEkMa7ci3Ym9j5RQNLVsgJe7YK9HixX5HjQFAowAH2pXZ5pKJIJYxPIUKtZlsz -qbM= +MIIFHzBJBgkqhkiG9w0BBQ0wPDAbBgkqhkiG9w0BBQwwDgQILCSlhTzkRTICAggA +MB0GCWCGSAFlAwQBKgQQgcOfWGRpzftycTbFVXO4mgSCBNDv5/+mh+AabEQwzjk/ +RIVjff2flwV0TooLISvRZYPEi60EsqsDhBpJ5iC6N8GFYXgoz06BaMQsuMGA8cRe +qcL6uGNdwexoReO7SGD2p3jBQU+r6SpDdVicMDUzYWt8P+kYemFVoCoFrhCiCx2k +p9ylcERn4JlUP3fW/FZslN77Nyx/M+hPowGmSBsCyFz9FiENeCRLMlyQpyG8Zp9Q +hNbWmXp5HL/Yato/wySxtDFwC/93sus1TbgSpmmp3csiDE1TIZ2FtlDCjqd0puY8 +UVhhq+0ce01vZgOT4SWXaiMfXOt9tZ6vqsgTakQzQDXKPbPlM3ppFtTMUyNUPmol +Fj36DxrVEArb7CT/tgbNfd/cdVonDtJJF7vxrAWWKzbhXpLfKAx4j54gdDz/ng0D +LDvJwlCtMqS5qz30kOJLvSQu+ifG9ib+GBkiihG5VeYKjfvjxWl/3bHamIrwV8Lp +ijHF2rsSSdzlKksSga+84jmDgAlqCsFdEAzGL8Dg4zk55Wlkr6+EshOQJN8vQz+f +7O7fyLCS6hjjskmYTTXlHvtLiro870jd+nRXmwNlZ9DDayJCfUMayoihHqeIX4u6 +ZQhjk+54Ln9vEMUlhkiGL/1rE6APVCBnlPzJfX/K2BXHWdu/NRT4rHG6zGQLViJr +yaaLV6F2bxCACjyjQmYzdGb238ApG5ubY50Eu4UfuB8N1zGDxqU7KQpRXLECmfKw +qa7lHHpuakC5gFddKHI62rQc9Tw5jLRohFTFA2e54d+rN5axiSBoeYY0Ky+Y6Id4 +xGLkJoNeleyrXKj09ercxcUhg2EL/B4wHiyBLKikZiA4gUaCnCZ7WRPsGpJ5wo/K +TXiAj1W0QQELGo+k8xmXP9y6Qb4ZcJsnWJ35Spn5CeuI/y/Bms/o2klqbhn9h+gz +4w4Zo4PoKEfjnFublCoCa7F9jvxSM7GTeaRPf8E6/wYBV8Xdu/rAd3ypCXBRULR1 +xqXvhp6u/k8XmAyd62mAwHRG1RDHZ2Kg1pspV8YGnYYE0pXRSsVKT1+Yu6pQ65n8 +SG0YmZRN2/In0cyTkNwWwl9Bpdd7mghwiZ8uTed00Q7UvxBZxRe8I1VOwBrvA8Jo +HZ25f0fuzNYkGmLq80jVE6k4dPowOQVp7dKcH8EvGJunUJKeAZrh0B9At52XzqJX +9uibQrDyJvFKTepH7Gm/NuUQK1XG0tkJbysnvUk3Ezj6nihxL903IfyLhNI/R22P +45nQeqRzrxLq4pfjW/KY+7IkX8tdabfPDHmtjLi3DhpYlDQ8JTDMn6dElN6wNIpe +w8wh6c9srD5zbaguaMRy+5R46zyLkDIY/SOMDgXqg6rTsSSnEXc5RD1F2amBXRJF +g8evdUJ7klx6pDh91Sspn9B/RJs1se5H37Wq9AFvrSHvktNVS0kqim+dimNKRFQr +kJ8eqxoqJ268wTlnppn14LSig9iwE8a/+yEhfXfoZ12mYCVjT9Y8+ZtrzI+TqIDh +ThfExeBYbPe+KTcsmuaYHw4Dbf4j8EMh7TJZlVx0o3Aqiw5MOAti5nIYt4kqJx/T ++pNPJPhMEq0nGyE/iInxrYgH6JdNJqctexhxj5ZdfmrwpFPpDq5ZZ49HT1XFP5jE +WgiOtgAhQ01A0xiCr0EZbFczHg== -----END ENCRYPTED PRIVATE KEY----- diff --git a/testing/web-platform/tests/tools/certs/cacert.pem b/testing/web-platform/tests/tools/certs/cacert.pem index 156de971054d..49b343ac6476 100644 --- a/testing/web-platform/tests/tools/certs/cacert.pem +++ b/testing/web-platform/tests/tools/certs/cacert.pem @@ -1,83 +1,116 @@ Certificate: Data: Version: 3 (0x2) - Serial Number: 753560 (0xb7f98) + Serial Number: 372738 (0x5b002) Signature Algorithm: sha256WithRSAEncryption Issuer: CN=web-platform-tests Validity - Not Before: Jul 13 12:59:12 2018 GMT - Not After : Jul 10 12:59:12 2028 GMT + Not Before: Dec 20 12:20:35 2018 GMT + Not After : Dec 17 12:20:35 2028 GMT Subject: CN=web-platform-tests Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: - 00:d3:94:10:b7:70:cf:1b:2b:1e:7f:6c:22:4f:15: - be:c9:95:03:45:e2:7c:26:78:d2:5b:3c:b5:3c:86: - ac:ab:ba:e9:c1:28:91:83:a7:28:92:26:79:00:c2: - bd:e6:ef:bb:6b:d7:fa:2e:39:fa:16:c8:e5:24:8e: - 6e:e9:b1:15:83:ab:98:56:99:42:49:4d:5d:16:3a: - 28:fe:4d:2e:29:1a:3c:78:78:09:aa:73:26:62:c2: - a5:2c:48:92:65:12:70:7e:3f:7e:c7:c4:ea:0a:c8: - 60:ef:6a:b0:65:dc:da:10:31:c9:88:3a:56:35:fd: - 85:bd:11:a4:51:7d:7f:71:5f:16:38:64:06:78:25: - 3b:15:e1:a6:19:2f:7b:ff:92:11:ad:0e:60:1a:d4: - 61:8e:46:45:00:9b:7b:c6:1f:5b:0e:bb:9d:6c:fd: - 7a:29:96:82:25:3d:d5:19:80:b7:30:6e:61:2a:1f: - cb:50:dc:ac:f4:ff:4b:02:67:60:58:04:17:b6:69: - 93:93:c8:92:f8:a0:5e:f1:56:fd:e8:24:21:bd:f4: - be:d4:ee:1f:df:6e:d3:4d:55:1b:58:c4:66:9b:93: - b6:b2:10:e8:0e:fb:6b:90:4f:f9:5f:99:58:0a:aa: - 8d:5f:39:33:75:83:41:45:71:53:0b:f0:81:75:dc: - 73:6d + 00:a5:c0:b9:6d:f2:13:01:17:f3:ec:bf:91:db:4f: + cd:4a:73:c7:d1:6a:b8:0d:c0:1e:7a:06:df:f2:f6: + 08:c1:36:a2:11:da:fb:0a:7a:2a:4f:a9:c0:6f:19: + 0b:e2:6d:26:3a:f9:3e:71:29:45:a4:4f:27:1d:6d: + ef:40:98:dc:01:7f:2c:4f:e2:35:4d:2b:8e:97:c5: + 41:9e:cd:f4:0e:60:fc:65:a4:39:5c:88:36:05:60: + e8:7f:b4:b4:32:9c:70:47:08:15:51:c8:cb:d8:21: + ba:54:48:73:72:e3:8a:95:61:e6:00:ef:e3:5f:f6: + 18:b6:4e:24:b5:41:7f:ce:b2:d7:28:33:ee:06:21: + 4f:cb:d6:4f:55:3a:bb:4f:74:e9:b6:e8:3b:cc:a7: + bb:f3:86:7a:c8:71:e1:f4:f2:2b:fe:1f:71:5e:1f: + 49:12:f9:c3:8a:7e:dc:5f:75:38:4d:7b:4a:a2:e5: + 6e:bf:ce:d9:9c:99:af:a7:6e:38:97:3c:b5:3f:13: + 0c:63:7e:78:ee:e4:ad:d8:18:c7:ec:da:38:44:49: + af:fb:44:8d:79:29:db:cf:4c:0a:6a:fd:5a:54:15: + e0:cd:ac:4d:17:5d:ef:58:c8:3d:84:fd:20:79:55: + 9f:14:c7:c8:5f:c8:98:5c:3c:ff:53:89:c5:1f:e7: + 83:a3 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: CA:TRUE X509v3 Subject Key Identifier: - 5B:DA:C8:C1:09:F3:4D:92:30:BC:EF:43:FB:26:93:1E:AE:0D:9A:0F + 7A:EA:6A:75:AA:23:78:B5:5E:06:61:4A:56:CF:56:A9:6D:B0:54:02 X509v3 Authority Key Identifier: - keyid:5B:DA:C8:C1:09:F3:4D:92:30:BC:EF:43:FB:26:93:1E:AE:0D:9A:0F + keyid:7A:EA:6A:75:AA:23:78:B5:5E:06:61:4A:56:CF:56:A9:6D:B0:54:02 DirName:/CN=web-platform-tests - serial:0B:7F:98 + serial:05:B0:02 X509v3 Key Usage: Certificate Sign + X509v3 Name Constraints: + Permitted: + DNS:web-platform.test + DNS:not-web-platform.test + DNS:www.web-platform.test + DNS:www1.web-platform.test + DNS:www2.web-platform.test + DNS:www.not-web-platform.test + DNS:www2.not-web-platform.test + DNS:www1.not-web-platform.test + DNS:xn--lve-6lad.web-platform.test + DNS:xn--lve-6lad.not-web-platform.test + DNS:xn--n8j6ds53lwwkrqhv28a.web-platform.test + DNS:xn--n8j6ds53lwwkrqhv28a.not-web-platform.test + X509v3 Extended Key Usage: TLS Web Server Authentication + X509v3 Subject Alternative Name: + DNS:web-platform.test, DNS:not-web-platform.test, DNS:www.web-platform.test, DNS:www1.web-platform.test, DNS:www2.web-platform.test, DNS:www.not-web-platform.test, DNS:www2.not-web-platform.test, DNS:www1.not-web-platform.test, DNS:xn--lve-6lad.web-platform.test, DNS:xn--lve-6lad.not-web-platform.test, DNS:xn--n8j6ds53lwwkrqhv28a.web-platform.test, DNS:xn--n8j6ds53lwwkrqhv28a.not-web-platform.test Signature Algorithm: sha256WithRSAEncryption - 97:e3:f0:b9:63:07:e5:de:d9:1f:7f:de:be:f8:e4:98:d6:25: - 97:e9:d3:ad:7c:6d:30:7d:0d:8e:c5:9b:ef:eb:a8:c5:59:b2: - 2c:73:08:46:22:ab:f7:61:01:19:9e:00:0c:72:bc:2a:bd:86: - 11:1f:3d:80:aa:19:58:6f:cd:05:b6:5a:27:ff:2e:39:1a:44: - 08:a2:e8:a6:e2:2c:03:52:2f:63:6b:3a:3b:93:c6:b8:53:cd: - f4:ec:63:5c:24:5a:65:a4:e3:93:9e:96:f0:00:cf:82:fc:dc: - 28:18:86:f1:a2:7e:78:80:9f:f4:11:b1:8e:c8:10:b5:18:9d: - fd:9e:8a:cb:6d:8e:15:22:3b:1f:0d:79:53:bd:2b:f7:d0:09: - 2a:a6:a9:f1:3e:4c:d0:aa:81:ae:2b:34:b0:52:16:d0:78:e2: - 25:c1:e2:92:47:1b:2f:a6:a2:29:6f:87:9a:3c:5d:44:b0:8f: - 95:3c:e7:ad:d1:83:1c:38:b7:3d:85:2b:b8:dc:45:81:ba:71: - a7:1c:96:9b:c1:38:3e:a9:a6:c7:38:71:4d:37:6e:ca:b8:e8: - ab:cc:07:4e:21:43:88:21:c0:49:11:9e:d6:c4:13:2c:57:75: - 1d:8e:54:1f:63:9a:46:19:52:40:c5:1e:2c:38:d2:b8:62:43: - a5:84:c8:e4 + 57:8e:97:2b:a5:3f:82:be:c9:80:b3:ef:0f:c8:b9:4c:f2:a6: + 91:40:ab:1f:70:0e:31:fb:74:ae:17:23:ea:b1:c8:19:f7:29: + 13:da:59:aa:61:7f:24:17:24:84:22:81:4c:23:b1:e6:a8:d8: + 65:95:b0:a9:2e:2d:b8:8f:86:67:69:b8:d2:7a:87:d3:75:67: + 6a:24:2a:a9:af:31:a6:33:2a:50:46:c4:2e:37:f0:e0:e0:a1: + e0:fe:bb:2f:6a:8d:9c:a6:45:cd:3f:8f:cd:fd:95:b1:70:24: + b8:2b:39:56:3f:81:0d:42:59:0a:8e:b2:c4:a7:1b:8a:73:98: + 51:4d:f5:14:ab:8b:95:dc:5e:6a:bc:30:57:79:16:3e:6c:73: + 09:f9:be:1b:4b:bf:cb:f4:ae:3a:ad:0e:57:20:e7:2f:f5:1f: + b3:7b:cf:1a:77:73:94:c6:f5:08:d5:24:29:12:9c:f1:0a:75: + 99:43:7b:91:c7:69:6f:ff:86:10:54:94:22:73:f9:00:c2:91: + 3d:6d:52:e5:5a:c6:43:e2:37:84:4c:59:02:b7:59:6c:b0:c5: + 18:72:03:61:94:00:11:e6:a3:cb:18:99:3e:8e:a2:00:82:4a: + 65:c3:08:3b:c9:10:19:c3:09:44:3c:a9:b0:2a:c3:84:2c:46: + 43:ba:dc:bf -----BEGIN CERTIFICATE----- -MIIDUzCCAjugAwIBAgIDC3+YMA0GCSqGSIb3DQEBCwUAMB0xGzAZBgNVBAMMEndl -Yi1wbGF0Zm9ybS10ZXN0czAeFw0xODA3MTMxMjU5MTJaFw0yODA3MTAxMjU5MTJa +MIIGVzCCBT+gAwIBAgIDBbACMA0GCSqGSIb3DQEBCwUAMB0xGzAZBgNVBAMMEndl +Yi1wbGF0Zm9ybS10ZXN0czAeFw0xODEyMjAxMjIwMzVaFw0yODEyMTcxMjIwMzVa MB0xGzAZBgNVBAMMEndlYi1wbGF0Zm9ybS10ZXN0czCCASIwDQYJKoZIhvcNAQEB -BQADggEPADCCAQoCggEBANOUELdwzxsrHn9sIk8VvsmVA0XifCZ40ls8tTyGrKu6 -6cEokYOnKJImeQDCvebvu2vX+i45+hbI5SSObumxFYOrmFaZQklNXRY6KP5NLika -PHh4CapzJmLCpSxIkmUScH4/fsfE6grIYO9qsGXc2hAxyYg6VjX9hb0RpFF9f3Ff -FjhkBnglOxXhphkve/+SEa0OYBrUYY5GRQCbe8YfWw67nWz9eimWgiU91RmAtzBu -YSofy1DcrPT/SwJnYFgEF7Zpk5PIkvigXvFW/egkIb30vtTuH99u001VG1jEZpuT -trIQ6A77a5BP+V+ZWAqqjV85M3WDQUVxUwvwgXXcc20CAwEAAaOBmzCBmDAMBgNV -HRMEBTADAQH/MB0GA1UdDgQWBBRb2sjBCfNNkjC870P7JpMerg2aDzBHBgNVHSME -QDA+gBRb2sjBCfNNkjC870P7JpMerg2aD6EhpB8wHTEbMBkGA1UEAwwSd2ViLXBs -YXRmb3JtLXRlc3RzggMLf5gwCwYDVR0PBAQDAgIEMBMGA1UdJQQMMAoGCCsGAQUF -BwMBMA0GCSqGSIb3DQEBCwUAA4IBAQCX4/C5Ywfl3tkff96++OSY1iWX6dOtfG0w -fQ2OxZvv66jFWbIscwhGIqv3YQEZngAMcrwqvYYRHz2AqhlYb80Ftlon/y45GkQI -ouim4iwDUi9jazo7k8a4U8307GNcJFplpOOTnpbwAM+C/NwoGIbxon54gJ/0EbGO -yBC1GJ39norLbY4VIjsfDXlTvSv30AkqpqnxPkzQqoGuKzSwUhbQeOIlweKSRxsv -pqIpb4eaPF1EsI+VPOet0YMcOLc9hSu43EWBunGnHJabwTg+qabHOHFNN27KuOir -zAdOIUOIIcBJEZ7WxBMsV3UdjlQfY5pGGVJAxR4sONK4YkOlhMjk +BQADggEPADCCAQoCggEBAKXAuW3yEwEX8+y/kdtPzUpzx9FquA3AHnoG3/L2CME2 +ohHa+wp6Kk+pwG8ZC+JtJjr5PnEpRaRPJx1t70CY3AF/LE/iNU0rjpfFQZ7N9A5g +/GWkOVyINgVg6H+0tDKccEcIFVHIy9ghulRIc3LjipVh5gDv41/2GLZOJLVBf86y +1ygz7gYhT8vWT1U6u0906bboO8ynu/OGeshx4fTyK/4fcV4fSRL5w4p+3F91OE17 +SqLlbr/O2ZyZr6duOJc8tT8TDGN+eO7krdgYx+zaOERJr/tEjXkp289MCmr9WlQV +4M2sTRdd71jIPYT9IHlVnxTHyF/ImFw8/1OJxR/ng6MCAwEAAaOCA54wggOaMAwG +A1UdEwQFMAMBAf8wHQYDVR0OBBYEFHrqanWqI3i1XgZhSlbPVqltsFQCMEcGA1Ud +IwRAMD6AFHrqanWqI3i1XgZhSlbPVqltsFQCoSGkHzAdMRswGQYDVQQDDBJ3ZWIt +cGxhdGZvcm0tdGVzdHOCAwWwAjALBgNVHQ8EBAMCAgQwggGLBgNVHR4EggGCMIIB +fqCCAXowE4IRd2ViLXBsYXRmb3JtLnRlc3QwF4IVbm90LXdlYi1wbGF0Zm9ybS50 +ZXN0MBeCFXd3dy53ZWItcGxhdGZvcm0udGVzdDAYghZ3d3cxLndlYi1wbGF0Zm9y +bS50ZXN0MBiCFnd3dzIud2ViLXBsYXRmb3JtLnRlc3QwG4IZd3d3Lm5vdC13ZWIt +cGxhdGZvcm0udGVzdDAcghp3d3cyLm5vdC13ZWItcGxhdGZvcm0udGVzdDAcghp3 +d3cxLm5vdC13ZWItcGxhdGZvcm0udGVzdDAggh54bi0tbHZlLTZsYWQud2ViLXBs +YXRmb3JtLnRlc3QwJIIieG4tLWx2ZS02bGFkLm5vdC13ZWItcGxhdGZvcm0udGVz +dDArgil4bi0tbjhqNmRzNTNsd3drcnFodjI4YS53ZWItcGxhdGZvcm0udGVzdDAv +gi14bi0tbjhqNmRzNTNsd3drcnFodjI4YS5ub3Qtd2ViLXBsYXRmb3JtLnRlc3Qw +EwYDVR0lBAwwCgYIKwYBBQUHAwEwggFvBgNVHREEggFmMIIBYoIRd2ViLXBsYXRm +b3JtLnRlc3SCFW5vdC13ZWItcGxhdGZvcm0udGVzdIIVd3d3LndlYi1wbGF0Zm9y +bS50ZXN0ghZ3d3cxLndlYi1wbGF0Zm9ybS50ZXN0ghZ3d3cyLndlYi1wbGF0Zm9y +bS50ZXN0ghl3d3cubm90LXdlYi1wbGF0Zm9ybS50ZXN0ghp3d3cyLm5vdC13ZWIt +cGxhdGZvcm0udGVzdIIad3d3MS5ub3Qtd2ViLXBsYXRmb3JtLnRlc3SCHnhuLS1s +dmUtNmxhZC53ZWItcGxhdGZvcm0udGVzdIIieG4tLWx2ZS02bGFkLm5vdC13ZWIt +cGxhdGZvcm0udGVzdIIpeG4tLW44ajZkczUzbHd3a3JxaHYyOGEud2ViLXBsYXRm +b3JtLnRlc3SCLXhuLS1uOGo2ZHM1M2x3d2tycWh2MjhhLm5vdC13ZWItcGxhdGZv +cm0udGVzdDANBgkqhkiG9w0BAQsFAAOCAQEAV46XK6U/gr7JgLPvD8i5TPKmkUCr +H3AOMft0rhcj6rHIGfcpE9pZqmF/JBckhCKBTCOx5qjYZZWwqS4tuI+GZ2m40nqH +03VnaiQqqa8xpjMqUEbELjfw4OCh4P67L2qNnKZFzT+Pzf2VsXAkuCs5Vj+BDUJZ +Co6yxKcbinOYUU31FKuLldxearwwV3kWPmxzCfm+G0u/y/SuOq0OVyDnL/Ufs3vP +GndzlMb1CNUkKRKc8Qp1mUN7kcdpb/+GEFSUInP5AMKRPW1S5VrGQ+I3hExZArdZ +bLDFGHIDYZQAEeajyxiZPo6iAIJKZcMIO8kQGcMJRDypsCrDhCxGQ7rcvw== -----END CERTIFICATE----- diff --git a/testing/web-platform/tests/tools/certs/config.json b/testing/web-platform/tests/tools/certs/config.json new file mode 100644 index 000000000000..4a37c13c12f3 --- /dev/null +++ b/testing/web-platform/tests/tools/certs/config.json @@ -0,0 +1,17 @@ +{ + "ports": { + "http": [], + "https": ["auto"], + "ws": [], + "wss": [] + }, + "check_subdomains": false, + "ssl": { + "type": "openssl", + "openssl": { + "duration": 3650, + "force_regenerate": true, + "base_path": "tools/certs" + } + } +} diff --git a/testing/web-platform/tests/tools/certs/web-platform.test.key b/testing/web-platform/tests/tools/certs/web-platform.test.key index f0745adbae9f..6d60e8912a64 100644 --- a/testing/web-platform/tests/tools/certs/web-platform.test.key +++ b/testing/web-platform/tests/tools/certs/web-platform.test.key @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDYU2g7VdKOVTxP -uIB0uB1JjDzStbUVIjeBJULnWKq2qr4OMI6gl0/3gNnpofTrWD+jlii42lqqDUHf -bB1Srs3IFgKwCnCRV36l2xCk/Tv3BtW1iWqSNsZmxabSbHb1T0rLbsOTLb7SP70U -p0o5WvAY3EEbcIBlgYVFo6oZ8P5V7RDZVmyNVGlL3kUBD1Chh9cMQyKdG06y7G52 -46z2wdmwaegwGrs9053jjHBBdyICXLEzK4Le2rgY9NKYGmrwoCRWqArpDCLPOGxD -mib2hdm1H23kz+05I1Pbo45+JuthG05drLBCvh5cThiAY2wNCWgIBqH0BAvDN5Lo -qg7F0UvBAgMBAAECggEBAJWsH9Ht72DLWI9P+JDJUnowrWSclE2q/vw7665lirgY -KqdmsUgraQi1/g/IHs02odFtc39ylIhT49/RzfgHOhnWIMXsczYcc2QNzdZZ38Nq -1zJjgXjorR0uY93zbdsMoZNfb7HFVOHjd89yb8h/Qt/whJuXmz6f/rXQJ0ELnO2V -csBa0WWRdKNYSuDXXAXrTmJs4Pp7NNWAoYBaMoHQcHE9wsN3XnJdYYyABbpj6wIP -7LXxUN3OZj4CY9+ahCgrEA8NEvCU/SUagEX0YG4z+sV+Dfjnus7vMYSqZv2sdPN2 -ze092+AZBDpdjNdLyrB6cMFRh/23MaCLGHPGjJkCdgECgYEA9bK+NRqPUqcRJ/Bd -7PAPi1PLjkgP66v0oXsW6yl7BnxgjrUvoWUI9/40kEvQDztIrUFbLoxwnLtAKjQG -F+2vkD/DWt452Z8bQXbxteGLXkNtwo9DwTBrz4OonmnrxcOjwtIErqEyhMPRCe0w -KFtRLgK5xXx+JlQNzRxY4TUGjg0CgYEA4WVjixfhTf1vFpmfhX4ewLaBrWch4h6x -wQ3j9MV90wNbnnyT1GrKiR1XDJ1vN8emFrNQvhr0eOEuDY0ZXJJM8PvPW6+KqmsO -rwreyQzp/b1Ads/qL7M05REu5y5RQ2zNWjObTvdsUh/LmtUvGRQm92E+t4aFz0Jg -jZ5A6oq+u4UCgYAtX8geuHv1cKMLdCl0Y1ULjvsNmKNQC56O39N4tF1i8j9Gu5FD -Rgxk+A4vA8E1vuYKEQLM0uTNHQuZf6gMbTm58vyZ4GZgmTCIY3X59+AsFVnEz35c -xBt05ESUlM0U5a9tgCmbMmvI9vy4z5PQMCUK0TgLj5UgcO9njK+hT5CZVQKBgGZl -VjShc6SnpukAf3z4z+XCw+TP/o+oXB6VPeM8OS48z0mP1OTiYwKphptfhmAz3htf -+SV0P24O9ooHeOcaO8Qa0ZgYholnO3OAH7f8muzAJmITkJN8+WG7TbCO1TIpYp1A -5qSYOOiSM0Ay60OcaRtnXUOo5G9E+3I628jxoTa1AoGAQK3MjN/BzG5gXG3PX5TV -tFY+K2SgID33d+STRLUzAgOb+7aqUOdwYfCdiQspED9HRkg/DCLp7gNp02p1kscB -w/PWCMUO01inIljR4f/YO+kID8Zrovch8d8JLGvNsYFzVAP/ceYW6/OMLQLNGfBC -xHpdj0Im0e9/WMxC4ZEYfoc= +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCpxFZDnnjgGrPj +2OirthoMrhDXhgQ0MupElcIG3ZtE9PNAqT20Ysr7cYgg1vQdylSo1aK3ZcBbtfuQ +8Yfa7+o6TiTcKiEmTWB34rJPx1t37rJz7nWC0JjIOArtpSIAI8yIXkAtw5TnHcL5 +AAC7alliVMyF15UVxdeTUgmvw5IUGzfRX9HUVhCFvxtsS+GTOoDLHFqYGH4Qc6sg +dOEtzUPuRS51zKTwaG4QopCKfkvj3MLZ19/k0aJPibvLNACpkMlPFYZZekvt+WsB +AUjtixXM8f9Yon2XV9F7MXvDsaZUgebuYt7qxaG0xGNez8riLIhQB8wGSIJ18Ziy +VN62q9/bAgMBAAECggEAO9k7kBsOAfNn96tAW0iXZmD3DwPv93b7n7Ir9L+rPWQd +XW5MkotBg+NCWlFtPhNWRS8Lbhww9CPzy+VaP5TUvjlORU+U4CvnFlyVAAsH8//y +aWxngPaI5gzbzWup0OLN+EVB2uBYXiHf2mhl2axkVoYOlCCsLkDQ/t6tC4mmte9P +JB8VuMWKDc+Q0bMyGQ9V/qgQuw38mYyuBrbS3pwG9/1S7qADZ4/HK85CtEY6f0wQ +dyK7Rxjpo4eq/MWPTlrLYRZcPKkllFLLbU+346OPD06spMOxleYkMVLMhW9CZVSM +cRqxa7MLel7XumUK+7oC5bXuBICrAu69XtW8E6fsAQKBgQDfp+e+gb/ISu5CPgFu +/y2i191lr6uIIYTB8URx92WWqabim7U8YiSzaexY9qTNvMjxnn/qLnKvEtxLPjSx +3J+3ewoE62G7QjNSzwTRNTrhDDzh9MhzIr3YtLvPwpobd++TpbtVHxYOEzT9dI/w +jSIztVzLK+Md2ID7sqkwPxBmWQKBgQDCUWC99hi7mvmjoGsGpy5iZ5EL66GHlA9y +ivgg+DCoFQ7twiASqmrsVwztFvEV2P/JZVMleHOvMumOSRdI6CG3GpXRWi4rSrS5 +K02bUS8GGE/Aobh2q6bNQfM2ujl+k/wlIIJHxlFb0JqLOEpuLft0Kf52odtLC8fV +lGDsabwZUwKBgHYoH19e7rHjHDJ0zY8VUsfIIRf6kbVud9N6If3PhKTu5dKsDjhj +ZR4/5HQvgWuLw+EaKlvOxBnH7gf2SiJ4+wwU/XsR22TxmWmzIslfxMZmD7gT+N4S +yZc2DE67cWz3lOM82FYlASLYdNM+BFlCRoJo2yge/HKlEadngMiTWJepAoGAB9Ja +wIq9aB/O2KVGaZglJ9TfY8lyURDGpmetoTYcT0e5uBxOSjIN58GBRbHctnJrqWGo +vSNiFLVJ7W5Hv6mIYeRyD2E/5oI1UBbMIupbqDUmUKyxziUOq8hxz8wjMFMonR33 +4Ie9EqMM9XmolVLIgl6GXaQaPaUVwCUe2aVP6v0CgYEAtxJq1dY+w+79WXu6/pDj +fX7Np07DRgrkmWL4db+ytQpONvbxXZwduSfb4dv3lfCiPzib+WXdxpGDOR94d/qL +zhrQq25s44TtvdeUzdn5+lZYn+15ZtNgUTYDal82dxwIR56fCRdLWC26CwaBevXX +lK3MgwivpX6mQ3nr7s/4x2A= -----END PRIVATE KEY----- diff --git a/testing/web-platform/tests/tools/certs/web-platform.test.pem b/testing/web-platform/tests/tools/certs/web-platform.test.pem index a3a022e6ac48..c9f7f57dc663 100644 --- a/testing/web-platform/tests/tools/certs/web-platform.test.pem +++ b/testing/web-platform/tests/tools/certs/web-platform.test.pem @@ -1,43 +1,43 @@ Certificate: Data: Version: 3 (0x2) - Serial Number: 753561 (0xb7f99) + Serial Number: 372739 (0x5b003) Signature Algorithm: sha256WithRSAEncryption Issuer: CN=web-platform-tests Validity - Not Before: Jul 13 12:59:12 2018 GMT - Not After : Jul 10 12:59:12 2028 GMT + Not Before: Dec 20 12:20:36 2018 GMT + Not After : Dec 17 12:20:36 2028 GMT Subject: CN=web-platform.test Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: - 00:d8:53:68:3b:55:d2:8e:55:3c:4f:b8:80:74:b8: - 1d:49:8c:3c:d2:b5:b5:15:22:37:81:25:42:e7:58: - aa:b6:aa:be:0e:30:8e:a0:97:4f:f7:80:d9:e9:a1: - f4:eb:58:3f:a3:96:28:b8:da:5a:aa:0d:41:df:6c: - 1d:52:ae:cd:c8:16:02:b0:0a:70:91:57:7e:a5:db: - 10:a4:fd:3b:f7:06:d5:b5:89:6a:92:36:c6:66:c5: - a6:d2:6c:76:f5:4f:4a:cb:6e:c3:93:2d:be:d2:3f: - bd:14:a7:4a:39:5a:f0:18:dc:41:1b:70:80:65:81: - 85:45:a3:aa:19:f0:fe:55:ed:10:d9:56:6c:8d:54: - 69:4b:de:45:01:0f:50:a1:87:d7:0c:43:22:9d:1b: - 4e:b2:ec:6e:76:e3:ac:f6:c1:d9:b0:69:e8:30:1a: - bb:3d:d3:9d:e3:8c:70:41:77:22:02:5c:b1:33:2b: - 82:de:da:b8:18:f4:d2:98:1a:6a:f0:a0:24:56:a8: - 0a:e9:0c:22:cf:38:6c:43:9a:26:f6:85:d9:b5:1f: - 6d:e4:cf:ed:39:23:53:db:a3:8e:7e:26:eb:61:1b: - 4e:5d:ac:b0:42:be:1e:5c:4e:18:80:63:6c:0d:09: - 68:08:06:a1:f4:04:0b:c3:37:92:e8:aa:0e:c5:d1: - 4b:c1 + 00:a9:c4:56:43:9e:78:e0:1a:b3:e3:d8:e8:ab:b6: + 1a:0c:ae:10:d7:86:04:34:32:ea:44:95:c2:06:dd: + 9b:44:f4:f3:40:a9:3d:b4:62:ca:fb:71:88:20:d6: + f4:1d:ca:54:a8:d5:a2:b7:65:c0:5b:b5:fb:90:f1: + 87:da:ef:ea:3a:4e:24:dc:2a:21:26:4d:60:77:e2: + b2:4f:c7:5b:77:ee:b2:73:ee:75:82:d0:98:c8:38: + 0a:ed:a5:22:00:23:cc:88:5e:40:2d:c3:94:e7:1d: + c2:f9:00:00:bb:6a:59:62:54:cc:85:d7:95:15:c5: + d7:93:52:09:af:c3:92:14:1b:37:d1:5f:d1:d4:56: + 10:85:bf:1b:6c:4b:e1:93:3a:80:cb:1c:5a:98:18: + 7e:10:73:ab:20:74:e1:2d:cd:43:ee:45:2e:75:cc: + a4:f0:68:6e:10:a2:90:8a:7e:4b:e3:dc:c2:d9:d7: + df:e4:d1:a2:4f:89:bb:cb:34:00:a9:90:c9:4f:15: + 86:59:7a:4b:ed:f9:6b:01:01:48:ed:8b:15:cc:f1: + ff:58:a2:7d:97:57:d1:7b:31:7b:c3:b1:a6:54:81: + e6:ee:62:de:ea:c5:a1:b4:c4:63:5e:cf:ca:e2:2c: + 88:50:07:cc:06:48:82:75:f1:98:b2:54:de:b6:ab: + df:db Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: CA:FALSE X509v3 Subject Key Identifier: - DC:27:6C:74:E6:47:31:95:D8:CC:96:5B:E4:94:6E:8C:22:2F:2B:EA + F7:EE:CA:20:37:0F:BC:CF:F3:B7:DC:12:76:D1:D1:CA:40:67:3A:6D X509v3 Authority Key Identifier: - keyid:5B:DA:C8:C1:09:F3:4D:92:30:BC:EF:43:FB:26:93:1E:AE:0D:9A:0F + keyid:7A:EA:6A:75:AA:23:78:B5:5E:06:61:4A:56:CF:56:A9:6D:B0:54:02 X509v3 Key Usage: Digital Signature, Non Repudiation, Key Encipherment @@ -46,33 +46,33 @@ Certificate: X509v3 Subject Alternative Name: DNS:web-platform.test, DNS:not-web-platform.test, DNS:www.web-platform.test, DNS:www1.web-platform.test, DNS:www2.web-platform.test, DNS:www.not-web-platform.test, DNS:www2.not-web-platform.test, DNS:www1.not-web-platform.test, DNS:xn--lve-6lad.web-platform.test, DNS:xn--lve-6lad.not-web-platform.test, DNS:xn--n8j6ds53lwwkrqhv28a.web-platform.test, DNS:xn--n8j6ds53lwwkrqhv28a.not-web-platform.test Signature Algorithm: sha256WithRSAEncryption - 15:98:68:69:25:f6:f7:d6:09:0b:5b:d6:ac:d6:49:06:0e:24: - e1:ee:b9:44:9e:d1:03:03:ed:3a:b3:f9:23:c4:14:e8:fe:53: - 70:70:21:a6:d4:e3:ee:8d:ba:84:38:cd:71:32:c7:4a:c0:f1: - 33:eb:bd:bc:ed:f2:d8:dc:c3:a7:a7:a6:47:6a:69:6c:16:ea: - e6:4d:7c:77:18:0d:3e:86:29:91:2b:49:d5:c9:19:1a:53:16: - a7:f0:02:f4:70:a2:e5:8b:bc:aa:a6:6f:4f:5b:40:24:04:68: - 11:9d:9e:26:20:f2:e3:68:36:9a:fa:8f:7c:b0:29:08:37:c4: - 06:08:fc:e4:45:bb:4c:78:ae:2c:f1:c1:bf:d9:23:17:e5:43: - 18:0e:06:d8:4c:b4:2a:ef:f9:7c:bf:02:d2:62:51:82:ed:9d: - 64:83:3d:03:cd:61:38:c0:57:c6:5e:5b:3a:41:91:db:3e:83: - 05:4b:88:84:e3:ae:be:4d:5d:f9:59:07:0c:21:16:fa:7e:af: - 23:97:05:25:4c:bb:02:d3:11:4a:85:68:c3:a3:cf:d0:0c:15: - 49:f6:32:0b:f6:2a:01:91:3c:ad:c7:31:da:da:43:e2:2c:db: - 52:c5:37:a0:c3:cc:3a:5b:2b:76:e5:74:74:20:1b:c3:f7:0c: - fe:6d:bf:bb + 63:c9:58:a8:38:b5:1f:2d:41:9f:06:a3:50:bc:a4:da:f5:e9: + c6:05:64:0e:d6:7e:ee:31:8d:81:00:c1:90:fd:71:4d:3c:92: + 44:7f:c5:b6:be:fe:8d:c0:85:90:04:5c:20:08:88:47:8c:b6: + 0d:b4:1f:22:a8:10:a9:e7:0d:9d:a0:79:44:0b:f3:3a:77:e6: + e2:89:f9:a4:ee:dc:e9:6c:6c:2c:1c:6f:c6:fb:e3:2c:36:a3: + 72:89:4e:c2:9c:51:23:cc:af:2f:9d:67:82:d2:59:ea:ff:fd: + ef:7c:bc:c8:ff:a7:19:43:64:e6:5f:82:28:c9:de:8e:97:e6: + 42:e0:ca:74:e6:c8:e0:d3:6a:bc:04:ca:bb:53:f0:64:b1:31: + 98:af:e1:b8:6b:7d:0c:ad:b3:e0:29:00:1b:50:af:30:b3:fa: + d4:d3:0e:45:4b:12:0d:5a:ea:11:cd:29:be:32:ea:4f:4f:7c: + 58:7d:e2:33:37:b9:ce:0f:94:00:6d:16:e4:91:6f:e6:4c:47: + a7:cd:b7:f1:ab:86:68:e2:6e:c5:e9:60:b7:24:b1:aa:1b:f6: + f5:ce:a4:03:bf:ed:20:92:a9:f7:ad:57:61:ef:d8:9a:b6:df: + cb:2f:4d:3b:ab:8f:71:c4:f2:87:93:25:48:89:c5:9c:c8:d8: + 46:c5:5e:ac -----BEGIN CERTIFICATE----- -MIIEnDCCA4SgAwIBAgIDC3+ZMA0GCSqGSIb3DQEBCwUAMB0xGzAZBgNVBAMMEndl -Yi1wbGF0Zm9ybS10ZXN0czAeFw0xODA3MTMxMjU5MTJaFw0yODA3MTAxMjU5MTJa +MIIEnDCCA4SgAwIBAgIDBbADMA0GCSqGSIb3DQEBCwUAMB0xGzAZBgNVBAMMEndl +Yi1wbGF0Zm9ybS10ZXN0czAeFw0xODEyMjAxMjIwMzZaFw0yODEyMTcxMjIwMzZa MBwxGjAYBgNVBAMMEXdlYi1wbGF0Zm9ybS50ZXN0MIIBIjANBgkqhkiG9w0BAQEF -AAOCAQ8AMIIBCgKCAQEA2FNoO1XSjlU8T7iAdLgdSYw80rW1FSI3gSVC51iqtqq+ -DjCOoJdP94DZ6aH061g/o5YouNpaqg1B32wdUq7NyBYCsApwkVd+pdsQpP079wbV -tYlqkjbGZsWm0mx29U9Ky27Dky2+0j+9FKdKOVrwGNxBG3CAZYGFRaOqGfD+Ve0Q -2VZsjVRpS95FAQ9QoYfXDEMinRtOsuxuduOs9sHZsGnoMBq7PdOd44xwQXciAlyx -MyuC3tq4GPTSmBpq8KAkVqgK6QwizzhsQ5om9oXZtR9t5M/tOSNT26OOfibrYRtO -XaywQr4eXE4YgGNsDQloCAah9AQLwzeS6KoOxdFLwQIDAQABo4IB5DCCAeAwCQYD -VR0TBAIwADAdBgNVHQ4EFgQU3CdsdOZHMZXYzJZb5JRujCIvK+owHwYDVR0jBBgw -FoAUW9rIwQnzTZIwvO9D+yaTHq4Nmg8wCwYDVR0PBAQDAgXgMBMGA1UdJQQMMAoG +AAOCAQ8AMIIBCgKCAQEAqcRWQ5544Bqz49joq7YaDK4Q14YENDLqRJXCBt2bRPTz +QKk9tGLK+3GIINb0HcpUqNWit2XAW7X7kPGH2u/qOk4k3CohJk1gd+KyT8dbd+6y +c+51gtCYyDgK7aUiACPMiF5ALcOU5x3C+QAAu2pZYlTMhdeVFcXXk1IJr8OSFBs3 +0V/R1FYQhb8bbEvhkzqAyxxamBh+EHOrIHThLc1D7kUudcyk8GhuEKKQin5L49zC +2dff5NGiT4m7yzQAqZDJTxWGWXpL7flrAQFI7YsVzPH/WKJ9l1fRezF7w7GmVIHm +7mLe6sWhtMRjXs/K4iyIUAfMBkiCdfGYslTetqvf2wIDAQABo4IB5DCCAeAwCQYD +VR0TBAIwADAdBgNVHQ4EFgQU9+7KIDcPvM/zt9wSdtHRykBnOm0wHwYDVR0jBBgw +FoAUeupqdaojeLVeBmFKVs9WqW2wVAIwCwYDVR0PBAQDAgXgMBMGA1UdJQQMMAoG CCsGAQUFBwMBMIIBbwYDVR0RBIIBZjCCAWKCEXdlYi1wbGF0Zm9ybS50ZXN0ghVu b3Qtd2ViLXBsYXRmb3JtLnRlc3SCFXd3dy53ZWItcGxhdGZvcm0udGVzdIIWd3d3 MS53ZWItcGxhdGZvcm0udGVzdIIWd3d3Mi53ZWItcGxhdGZvcm0udGVzdIIZd3d3 @@ -81,10 +81,10 @@ c3SCGnd3dzEubm90LXdlYi1wbGF0Zm9ybS50ZXN0gh54bi0tbHZlLTZsYWQud2Vi LXBsYXRmb3JtLnRlc3SCInhuLS1sdmUtNmxhZC5ub3Qtd2ViLXBsYXRmb3JtLnRl c3SCKXhuLS1uOGo2ZHM1M2x3d2tycWh2MjhhLndlYi1wbGF0Zm9ybS50ZXN0gi14 bi0tbjhqNmRzNTNsd3drcnFodjI4YS5ub3Qtd2ViLXBsYXRmb3JtLnRlc3QwDQYJ -KoZIhvcNAQELBQADggEBABWYaGkl9vfWCQtb1qzWSQYOJOHuuUSe0QMD7Tqz+SPE -FOj+U3BwIabU4+6NuoQ4zXEyx0rA8TPrvbzt8tjcw6enpkdqaWwW6uZNfHcYDT6G -KZErSdXJGRpTFqfwAvRwouWLvKqmb09bQCQEaBGdniYg8uNoNpr6j3ywKQg3xAYI -/ORFu0x4rizxwb/ZIxflQxgOBthMtCrv+Xy/AtJiUYLtnWSDPQPNYTjAV8ZeWzpB -kds+gwVLiITjrr5NXflZBwwhFvp+ryOXBSVMuwLTEUqFaMOjz9AMFUn2Mgv2KgGR -PK3HMdraQ+Is21LFN6DDzDpbK3bldHQgG8P3DP5tv7s= +KoZIhvcNAQELBQADggEBAGPJWKg4tR8tQZ8Go1C8pNr16cYFZA7Wfu4xjYEAwZD9 +cU08kkR/xba+/o3AhZAEXCAIiEeMtg20HyKoEKnnDZ2geUQL8zp35uKJ+aTu3Ols +bCwcb8b74yw2o3KJTsKcUSPMry+dZ4LSWer//e98vMj/pxlDZOZfgijJ3o6X5kLg +ynTmyODTarwEyrtT8GSxMZiv4bhrfQyts+ApABtQrzCz+tTTDkVLEg1a6hHNKb4y +6k9PfFh94jM3uc4PlABtFuSRb+ZMR6fNt/GrhmjibsXpYLcksaob9vXOpAO/7SCS +qfetV2Hv2Jq238svTTurj3HE8oeTJUiJxZzI2EbFXqw= -----END CERTIFICATE----- diff --git a/testing/web-platform/tests/tools/ci/azure/install_chrome.yml b/testing/web-platform/tests/tools/ci/azure/install_chrome.yml index fc77258ab0d1..5a8dccd6e68e 100644 --- a/testing/web-platform/tests/tools/ci/azure/install_chrome.yml +++ b/testing/web-platform/tests/tools/ci/azure/install_chrome.yml @@ -1,3 +1,5 @@ steps: -- script: HOMEBREW_NO_AUTO_UPDATE=1 brew cask install Homebrew/homebrew-cask-versions/google-chrome-dev +# This is equivalent to `Homebrew/homebrew-cask-versions/google-chrome-dev`, +# but the raw URL is used to bypass caching. +- script: HOMEBREW_NO_AUTO_UPDATE=1 brew cask install https://raw.githubusercontent.com/Homebrew/homebrew-cask-versions/master/Casks/google-chrome-dev.rb displayName: 'Install Chrome Dev' diff --git a/testing/web-platform/tests/tools/ci/azure/install_firefox.yml b/testing/web-platform/tests/tools/ci/azure/install_firefox.yml index 3ed7b67b2343..cf5089b60fb8 100644 --- a/testing/web-platform/tests/tools/ci/azure/install_firefox.yml +++ b/testing/web-platform/tests/tools/ci/azure/install_firefox.yml @@ -1,3 +1,5 @@ steps: -- script: HOMEBREW_NO_AUTO_UPDATE=1 brew cask install Homebrew/homebrew-cask-versions/firefox-nightly +# This is equivalent to `Homebrew/homebrew-cask-versions/firefox-nightly`, +# but the raw URL is used to bypass caching. +- script: HOMEBREW_NO_AUTO_UPDATE=1 brew cask install https://raw.githubusercontent.com/Homebrew/homebrew-cask-versions/master/Casks/firefox-nightly.rb displayName: 'Install Firefox Nightly' diff --git a/testing/web-platform/tests/tools/ci/azure/install_safari.yml b/testing/web-platform/tests/tools/ci/azure/install_safari.yml index 8b4014c6c877..3329190a13cb 100644 --- a/testing/web-platform/tests/tools/ci/azure/install_safari.yml +++ b/testing/web-platform/tests/tools/ci/azure/install_safari.yml @@ -1,6 +1,8 @@ steps: - script: | - HOMEBREW_NO_AUTO_UPDATE=1 brew cask install Homebrew/homebrew-cask-versions/safari-technology-preview + # This is equivalent to `Homebrew/homebrew-cask-versions/safari-technology-preview`, + # but the raw URL is used to bypass caching. + HOMEBREW_NO_AUTO_UPDATE=1 brew cask install https://raw.githubusercontent.com/Homebrew/homebrew-cask-versions/master/Casks/safari-technology-preview.rb # https://web-platform-tests.org/running-tests/safari.html sudo "/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver" --enable defaults write com.apple.Safari WebKitJavaScriptCanOpenWindowsAutomatically 1 diff --git a/testing/web-platform/tests/tools/ci/check_stability.py b/testing/web-platform/tests/tools/ci/check_stability.py deleted file mode 100644 index a71e0956629a..000000000000 --- a/testing/web-platform/tests/tools/ci/check_stability.py +++ /dev/null @@ -1,318 +0,0 @@ -from __future__ import print_function - -import argparse -import logging -import os -import subprocess -import sys -from ConfigParser import SafeConfigParser - -here = os.path.dirname(__file__) -wpt_root = os.path.abspath(os.path.join(here, os.pardir, os.pardir)) -sys.path.insert(0, wpt_root) - -from tools.wpt import run as wptrun, testfiles -from tools.wpt.testfiles import get_git_cmd -from tools.wpt.virtualenv import Virtualenv -from tools.wpt.utils import Kwargs -from tools.wpt.run import create_parser, setup_wptrunner -from tools.wpt import markdown -from tools import localpaths # noqa: F401 - -logger = None -run_step, write_inconsistent, write_slow_tests, write_results = None, None, None, None -wptrunner = None - -def setup_logging(): - """Set up basic debug logger.""" - global logger - logger = logging.getLogger(here) - handler = logging.StreamHandler(sys.stdout) - formatter = logging.Formatter(logging.BASIC_FORMAT, None) - handler.setFormatter(formatter) - logger.addHandler(handler) - logger.setLevel(logging.DEBUG) - wptrun.setup_logging({}) - -def do_delayed_imports(): - global wptrunner, run_step, write_inconsistent, write_slow_tests, write_results - from wptrunner import wptrunner - from wptrunner.stability import run_step, write_inconsistent, write_slow_tests, write_results - - -class TravisFold(object): - """Context for TravisCI folding mechanism. Subclasses object. - - See: https://blog.travis-ci.com/2013-05-22-improving-build-visibility-log-folds/ - """ - - def __init__(self, name): - """Register TravisCI folding section name.""" - self.name = name - - def __enter__(self): - """Emit fold start syntax.""" - print("travis_fold:start:%s" % self.name, file=sys.stderr) - - def __exit__(self, type, value, traceback): - """Emit fold end syntax.""" - print("travis_fold:end:%s" % self.name, file=sys.stderr) - - -class FilteredIO(object): - """Wrap a file object, invoking the provided callback for every call to - `write` and only proceeding with the operation when that callback returns - True.""" - def __init__(self, original, on_write): - self.original = original - self.on_write = on_write - - def __getattr__(self, name): - return getattr(self.original, name) - - def disable(self): - self.write = lambda msg: None - - def write(self, msg): - encoded = msg.encode("utf8", "backslashreplace").decode("utf8") - if self.on_write(self.original, encoded) is True: - self.original.write(encoded) - - -def replace_streams(capacity, warning_msg): - # Value must be boxed to support modification from inner function scope - count = [0] - capacity -= 2 + len(warning_msg) - stderr = sys.stderr - - def on_write(handle, msg): - length = len(msg) - count[0] += length - - if count[0] > capacity: - wrapped_stdout.disable() - wrapped_stderr.disable() - handle.write(msg[0:capacity - count[0]]) - handle.flush() - stderr.write("\n%s\n" % warning_msg) - return False - - return True - - # Store local references to the replaced streams to guard against the case - # where other code replace the global references. - sys.stdout = wrapped_stdout = FilteredIO(sys.stdout, on_write) - sys.stderr = wrapped_stderr = FilteredIO(sys.stderr, on_write) - - -def call(*args): - """Log terminal command, invoke it as a subprocess. - - Returns a bytestring of the subprocess output if no error. - """ - logger.debug(" ".join(args)) - try: - return subprocess.check_output(args) - except subprocess.CalledProcessError as e: - logger.critical("%s exited with return code %i" % - (e.cmd, e.returncode)) - logger.critical(e.output) - raise - - -def fetch_wpt(user, *args): - git = get_git_cmd(wpt_root) - git("fetch", "https://github.com/%s/web-platform-tests.git" % user, *args) - - -def get_sha1(): - """ Get and return sha1 of current git branch HEAD commit.""" - git = get_git_cmd(wpt_root) - return git("rev-parse", "HEAD").strip() - - -def deepen_checkout(user): - """Convert from a shallow checkout to a full one""" - fetch_args = [user, "+refs/heads/*:refs/remotes/origin/*"] - if os.path.exists(os.path.join(wpt_root, ".git", "shallow")): - fetch_args.insert(1, "--unshallow") - fetch_wpt(*fetch_args) - - -def get_parser(): - """Create and return script-specific argument parser.""" - description = """Detect instabilities in new tests by executing tests - repeatedly and comparing results between executions.""" - parser = argparse.ArgumentParser(description=description) - parser.add_argument("--user", - action="store", - # Travis docs say do not depend on USER env variable. - # This is a workaround to get what should be the same value - default=os.environ.get("TRAVIS_REPO_SLUG", "w3c").split('/')[0], - help="Travis user name") - parser.add_argument("--output-bytes", - action="store", - type=int, - help="Maximum number of bytes to write to standard output/error") - parser.add_argument("--metadata", - dest="metadata_root", - action="store", - default=wpt_root, - help="Directory that will contain MANIFEST.json") - parser.add_argument("--config-file", - action="store", - type=str, - help="Location of ini-formatted configuration file", - default="check_stability.ini") - parser.add_argument("--rev", - action="store", - default=None, - help="Commit range to use") - return parser - - -def pr(): - pr = os.environ.get("TRAVIS_PULL_REQUEST", "false") - return pr if pr != "false" else None - - -def get_changed_files(manifest_path, rev, ignore_changes): - if not rev: - branch_point = testfiles.branch_point() - revish = "%s..HEAD" % branch_point - else: - revish = rev - - files_changed, files_ignored = testfiles.files_changed(revish, ignore_changes) - - if files_ignored: - logger.info("Ignoring %s changed files:\n%s" % - (len(files_ignored), "".join(" * %s\n" % item for item in files_ignored))) - - tests_changed, files_affected = testfiles.affected_testfiles(files_changed, - manifest_path=manifest_path) - - return tests_changed, files_affected - - -def main(): - """Perform check_stability functionality and return exit code.""" - - venv = Virtualenv(os.environ.get("VIRTUAL_ENV", os.path.join(wpt_root, "_venv"))) - venv.install_requirements(os.path.join(wpt_root, "tools", "wptrunner", "requirements.txt")) - - args, wpt_args = get_parser().parse_known_args() - return run(venv, wpt_args, **vars(args)) - - -def run(venv, wpt_args, **kwargs): - do_delayed_imports() - - setup_logging() - - retcode = 0 - - wpt_args = create_parser().parse_args(wpt_args) - - with open(kwargs["config_file"], 'r') as config_fp: - config = SafeConfigParser() - config.readfp(config_fp) - ignore_changes = set(config.get("file detection", "ignore_changes").split()) - - if kwargs["output_bytes"] is not None: - replace_streams(kwargs["output_bytes"], - "Log reached capacity (%s bytes); output disabled." % kwargs["output_bytes"]) - - - wpt_args.metadata_root = kwargs["metadata_root"] - try: - os.makedirs(wpt_args.metadata_root) - except OSError: - pass - - pr_number = pr() - - with TravisFold("browser_setup"): - logger.info(markdown.format_comment_title(wpt_args.product)) - - if pr is not None: - deepen_checkout(kwargs["user"]) - - # Ensure we have a branch called "master" - fetch_wpt(kwargs["user"], "master:master") - - head_sha1 = get_sha1() - logger.info("Testing web-platform-tests at revision %s" % head_sha1) - - wpt_kwargs = Kwargs(vars(wpt_args)) - - if not wpt_kwargs["test_list"]: - manifest_path = os.path.join(wpt_kwargs["metadata_root"], "MANIFEST.json") - tests_changed, files_affected = get_changed_files(manifest_path, kwargs["rev"], - ignore_changes) - - if not (tests_changed or files_affected): - logger.info("No tests changed") - return 0 - - if tests_changed: - logger.debug("Tests changed:\n%s" % "".join(" * %s\n" % item for item in tests_changed)) - - if files_affected: - logger.debug("Affected tests:\n%s" % "".join(" * %s\n" % item for item in files_affected)) - - wpt_kwargs["test_list"] = list(tests_changed | files_affected) - - do_delayed_imports() - - wpt_kwargs["prompt"] = False - wpt_kwargs["install_browser"] = wpt_kwargs["product"].split(":")[0] == "firefox" - - wpt_kwargs["pause_after_test"] = False - wpt_kwargs["verify_log_full"] = False - if wpt_kwargs["repeat"] == 1: - wpt_kwargs["repeat"] = 10 - wpt_kwargs["headless"] = False - - wpt_kwargs["log_tbpl"] = [sys.stdout] - - wpt_kwargs = setup_wptrunner(venv, **wpt_kwargs) - - logger.info("Using binary %s" % wpt_kwargs["binary"]) - - - with TravisFold("running_tests"): - logger.info("Starting tests") - - wpt_logger = wptrunner.logger - results, inconsistent, slow, iterations = run_step(wpt_logger, wpt_kwargs["repeat"], True, {}, **wpt_kwargs) - - if results: - if inconsistent: - write_inconsistent(logger.error, inconsistent, iterations) - retcode = 2 - elif slow: - write_slow_tests(logger.error, slow) - retcode = 2 - else: - logger.info("All results were stable\n") - with TravisFold("full_results"): - write_results(logger.info, results, iterations, - pr_number=pr_number, - use_details=True) - else: - logger.info("No tests run.") - # Be conservative and only return errors when we know for sure tests are changed. - if tests_changed: - retcode = 3 - - return retcode - - -if __name__ == "__main__": - try: - sys.exit(main()) - except Exception: - import traceback - traceback.print_exc() - sys.exit(1) diff --git a/testing/web-platform/tests/tools/ci/ci_stability.sh b/testing/web-platform/tests/tools/ci/ci_stability.sh deleted file mode 100755 index ca16cc7c77cd..000000000000 --- a/testing/web-platform/tests/tools/ci/ci_stability.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash -set -ex - -SCRIPT_DIR=$(cd $(dirname "$0") && pwd -P) -WPT_ROOT=$SCRIPT_DIR/../.. -cd $WPT_ROOT - -source tools/ci/lib.sh - -test_stability() { - local extra_arg=$1 - ./wpt check-stability $PRODUCT $extra_arg --output-bytes $((1024 * 1024 * 3)) --metadata ~/meta/ --install-fonts -} - -main() { - hosts_fixup - local extra_arg="" - if [ $(echo $PRODUCT | grep '^chrome:') ]; then - local channel=$(echo $PRODUCT | grep --only-matching '\w\+$') - if [[ $channel == "dev" ]]; then - # The package name for Google Chrome Dev uses "unstable", not "dev". - channel="unstable" - fi - install_chrome $channel - extra_arg="--binary=$(which google-chrome-$channel)" - fi - test_stability $extra_arg -} - -main diff --git a/testing/web-platform/tests/tools/ci/commands.json b/testing/web-platform/tests/tools/ci/commands.json index 361c9e4f3de8..841fd855c805 100644 --- a/testing/web-platform/tests/tools/ci/commands.json +++ b/testing/web-platform/tests/tools/ci/commands.json @@ -6,20 +6,6 @@ "help": "List test jobs that should run for a set of commits", "virtualenv": false }, - "check-stability": { - "path": "check_stability.py", - "script": "run", - "parser": "get_parser", - "parse_known": true, - "help": "Check test stability", - "virtualenv": true, - "install": [ - "requests" - ], - "requirements": [ - "../wptrunner/requirements.txt" - ] - }, "make-hosts-file": { "path": "make_hosts_file.py", "script": "run", diff --git a/testing/web-platform/tests/tools/ci/start.sh b/testing/web-platform/tests/tools/ci/start.sh index 9f621b2326e7..580bfb937ddc 100644 --- a/testing/web-platform/tests/tools/ci/start.sh +++ b/testing/web-platform/tests/tools/ci/start.sh @@ -28,3 +28,4 @@ then fi sudo Xvfb $DISPLAY -screen 0 ${SCREEN_WIDTH}x${SCREEN_HEIGHT}x${SCREEN_DEPTH} & +sudo fluxbox -display $DISPLAY & diff --git a/testing/web-platform/tests/tools/ci/tag_master.py b/testing/web-platform/tests/tools/ci/tag_master.py index 72bafd3a8663..0ae2801dfe70 100644 --- a/testing/web-platform/tests/tools/ci/tag_master.py +++ b/testing/web-platform/tests/tools/ci/tag_master.py @@ -17,9 +17,9 @@ logging.basicConfig(level=logging.INFO) logger = logging.getLogger(__name__) -def get_pr(repo, owner, sha): +def get_pr(owner, repo, sha): url = ("https://api.github.com/search/issues?q=type:pr+is:merged+repo:%s/%s+sha:%s" % - (repo, owner, sha)) + (owner, repo, sha)) try: resp = urllib2.urlopen(url) body = resp.read() @@ -51,11 +51,11 @@ def get_pr(repo, owner, sha): return pr["number"] -def tag(repo, owner, sha, tag): +def tag(owner, repo, sha, tag): data = json.dumps({"ref": "refs/tags/%s" % tag, "sha": sha}) try: - url = "https://api.github.com/repos/%s/%s/git/refs" % (repo, owner) + url = "https://api.github.com/repos/%s/%s/git/refs" % (owner, repo) req = urllib2.Request(url, data=data) base64string = base64.b64encode(os.environ["GH_TOKEN"]) diff --git a/testing/web-platform/tests/tools/ci/taskcluster-run.py b/testing/web-platform/tests/tools/ci/taskcluster-run.py index f443903786e9..2b3270c17aaa 100755 --- a/testing/web-platform/tests/tools/ci/taskcluster-run.py +++ b/testing/web-platform/tests/tools/ci/taskcluster-run.py @@ -56,7 +56,8 @@ def main(product, commit_range, wpt_args): "--no-pause", "--no-restart-on-unexpected", "--install-fonts", - "--no-headless" + "--no-headless", + "--verify-log-full" ] wpt_args += browser_specific_args.get(product, []) diff --git a/testing/web-platform/tests/tools/conftest.py b/testing/web-platform/tests/tools/conftest.py index 894fe6223ea5..021a49fc2973 100644 --- a/testing/web-platform/tests/tools/conftest.py +++ b/testing/web-platform/tests/tools/conftest.py @@ -6,8 +6,10 @@ from hypothesis import settings, HealthCheck impl = platform.python_implementation() settings.register_profile("ci", settings(max_examples=1000, + deadline=None, suppress_health_check=[HealthCheck.too_slow])) -settings.register_profile("pypy", settings(suppress_health_check=[HealthCheck.too_slow])) +settings.register_profile("pypy", settings(deadline=None, + suppress_health_check=[HealthCheck.too_slow])) settings.load_profile(os.getenv("HYPOTHESIS_PROFILE", "default" if impl != "PyPy" else "pypy")) diff --git a/testing/web-platform/tests/tools/docker/Dockerfile b/testing/web-platform/tests/tools/docker/Dockerfile index 20f6ef26c7ae..0cb2352e5fdf 100644 --- a/testing/web-platform/tests/tools/docker/Dockerfile +++ b/testing/web-platform/tests/tools/docker/Dockerfile @@ -11,6 +11,7 @@ RUN apt-get -qqy update \ ca-certificates \ dbus-x11 \ earlyoom \ + fluxbox \ gdebi \ git \ locales \ @@ -65,9 +66,13 @@ WORKDIR /home/test RUN sudo echo "" RUN mkdir -p /home/test/artifacts +RUN mkdir -p /home/test/bin + +ENV PATH="/home/test/bin:${PATH}" WORKDIR /home/test/ COPY .bashrc /home/test/.bashrc COPY start.sh /home/test/start.sh +COPY retry.py /home/test/bin/retry diff --git a/testing/web-platform/tests/tools/docker/retry.py b/testing/web-platform/tests/tools/docker/retry.py new file mode 100755 index 000000000000..6126b781bfad --- /dev/null +++ b/testing/web-platform/tests/tools/docker/retry.py @@ -0,0 +1,58 @@ +#! /usr/bin/env python +import argparse +import subprocess +import time +import sys + + +def get_args(): + parser = argparse.ArgumentParser() + parser.add_argument("--delay", action="store", type=float, default=3, help="Initial delay before retry, in seconds") + parser.add_argument("--count", action="store", type=int, default=5, help="Total number of tries") + parser.add_argument("--factor", action="store", type=float, default=2, help="Exponential backoff factor") + parser.add_argument("cmd", nargs=argparse.REMAINDER) + return parser + + +def iter_range(n): + i = 0 + while i < n: + yield i + i += 1 + + +def main(): + args = get_args().parse_args() + + if not args.cmd: + print("No command supplied") + sys.exit(1) + + retcode = None + + for n in iter_range(args.count): + try: + print("Running %s [try %d/%d]" % (" ".join(args.cmd), (n+1), args.count)) + subprocess.check_call(args.cmd) + except subprocess.CalledProcessError as e: + retcode = e.returncode + else: + print("Command succeeded") + retcode = 0 + break + + if args.factor == 0: + wait_time = (n+1) * args.delay + else: + wait_time = args.factor**n * args.delay + if n < args.count - 1: + print("Command failed, waiting %s seconds to retry" % wait_time) + time.sleep(wait_time) + else: + print("Command failed, out of retries") + + sys.exit(retcode) + + +if __name__ == "__main__": + main() diff --git a/testing/web-platform/tests/tools/docker/start.sh b/testing/web-platform/tests/tools/docker/start.sh index 52a5127892ca..bfc7e9960abf 100755 --- a/testing/web-platform/tests/tools/docker/start.sh +++ b/testing/web-platform/tests/tools/docker/start.sh @@ -26,13 +26,13 @@ git init git remote add origin ${REMOTE} # Initially we just fetch 50 commits in order to save several minutes of fetching -git fetch --quiet --depth=50 --tags origin ${REF} +retry git fetch --quiet --depth=50 --tags origin ${REF} if [[ ! `git rev-parse --verify -q ${REVISION}` ]]; then # But if for some reason the commit under test isn't in that range, we give in and # fetch everything - git fetch -q --unshallow ${REMOTE} + retry git fetch -q --unshallow ${REMOTE} git rev-parse --verify ${REVISION} fi git checkout -b build ${REVISION} diff --git a/testing/web-platform/tests/tools/manifest/manifest.py b/testing/web-platform/tests/tools/manifest/manifest.py index bcf3de3e091a..127d45dbc666 100644 --- a/testing/web-platform/tests/tools/manifest/manifest.py +++ b/testing/web-platform/tests/tools/manifest/manifest.py @@ -11,8 +11,10 @@ from .utils import from_os_path, to_os_path try: import ujson as json + JSON_LIBRARY = 'ujson' except ImportError: import json + JSON_LIBRARY = 'json' CURRENT_VERSION = 5 @@ -77,7 +79,12 @@ class TypeData(object): return rv def __delitem__(self, key): - del self.data[key] + if key in self.data: + del self.data[key] + elif self.json_data is not None: + del self.json_data[from_os_path(key)] + else: + raise KeyError def __setitem__(self, key, value): self.data[key] = value @@ -277,6 +284,11 @@ class Manifest(object): if old_hash != file_hash: new_type, manifest_items = source_file.manifest_items() hash_changed = True + if new_type != old_type: + try: + del self._data[old_type][rel_path] + except KeyError: + pass else: new_type, manifest_items = old_type, self._data[old_type][rel_path] if old_type in reftest_types and new_type != old_type: @@ -304,10 +316,7 @@ class Manifest(object): _, old_type = self._path_hash[rel_path] if old_type in reftest_types: reftest_changes = True - try: - del self._path_hash[rel_path] - except KeyError: - pass + del self._path_hash[rel_path] try: del self._data[old_type][rel_path] except KeyError: @@ -400,8 +409,16 @@ def load(tests_root, manifest, types=None, meta_filters=None): return _load(logger, tests_root, manifest, types, meta_filters) +__load_cache = {} + + def _load(logger, tests_root, manifest, types=None, meta_filters=None): # "manifest" is a path or file-like object. + manifest_path = (manifest if isinstance(manifest, string_types) + else manifest.name) + if manifest_path in __load_cache: + return __load_cache[manifest_path] + if isinstance(manifest, string_types): if os.path.exists(manifest): logger.debug("Opening manifest at %s" % manifest) @@ -418,12 +435,14 @@ def _load(logger, tests_root, manifest, types=None, meta_filters=None): except ValueError: logger.warning("%r may be corrupted", manifest) return None - return rv + else: + rv = Manifest.from_json(tests_root, + json.load(manifest), + types=types, + meta_filters=meta_filters) - return Manifest.from_json(tests_root, - json.load(manifest), - types=types, - meta_filters=meta_filters) + __load_cache[manifest_path] = rv + return rv def load_and_update(tests_root, @@ -473,5 +492,12 @@ def write(manifest, manifest_path): if not os.path.exists(dir_name): os.makedirs(dir_name) with open(manifest_path, "wb") as f: - json.dump(manifest.to_json(), f, sort_keys=True, indent=1) + if JSON_LIBRARY == 'ujson': + # ujson does not support the separators flag. + json.dump(manifest.to_json(), f, sort_keys=True, indent=1) + else: + # Use ',' instead of the default ', ' separator to prevent trailing + # spaces: https://docs.python.org/2/library/json.html#json.dump + json.dump(manifest.to_json(), f, + sort_keys=True, indent=1, separators=(',', ': ')) f.write("\n") diff --git a/testing/web-platform/tests/tools/manifest/tests/test_manifest.py b/testing/web-platform/tests/tools/manifest/tests/test_manifest.py index f398c7e1d875..8f649f1d0989 100644 --- a/testing/web-platform/tests/tools/manifest/tests/test_manifest.py +++ b/testing/web-platform/tests/tools/manifest/tests/test_manifest.py @@ -66,8 +66,7 @@ def sourcefile_strategy(draw): @h.given(hs.lists(sourcefile_strategy(), - min_size=1, average_size=10, max_size=1000, - unique_by=lambda x: x.rel_path)) + min_size=1, max_size=1000, unique_by=lambda x: x.rel_path)) @h.example([SourceFileWithTest("a", "0"*40, item.ConformanceCheckerTest)]) def test_manifest_to_json(s): m = manifest.Manifest() @@ -83,8 +82,7 @@ def test_manifest_to_json(s): @h.given(hs.lists(sourcefile_strategy(), - min_size=1, average_size=10, - unique_by=lambda x: x.rel_path)) + min_size=1, unique_by=lambda x: x.rel_path)) @h.example([SourceFileWithTest("a", "0"*40, item.TestharnessTest)]) @h.example([SourceFileWithTest("a", "0"*40, item.RefTest, [("/aa", "==")])]) def test_manifest_idempotent(s): @@ -353,13 +351,13 @@ def test_no_update(): assert list(m) == [("testharness", test1.path, {test1}), ("testharness", test2.path, {test2})] - s1_1 = SourceFileWithTest("test1", "1"*40, item.TestharnessTest) + s1_1 = SourceFileWithTest("test1", "1"*40, item.ManualTest) - m.update([(s1, True), (s2.rel_path, False)]) + m.update([(s1_1, True), (s2.rel_path, False)]) test1_1 = s1_1.manifest_items()[1][0] - assert list(m) == [("testharness", test1_1.path, {test1_1}), + assert list(m) == [("manual", test1_1.path, {test1_1}), ("testharness", test2.path, {test2})] @@ -371,10 +369,28 @@ def test_no_update_delete(): m.update([(s1, True), (s2, True)]) - s1_1 = SourceFileWithTest("test1", "1"*40, item.TestharnessTest) + test1 = s1.manifest_items()[1][0] + + s1_1 = SourceFileWithTest("test1", "1"*40, item.ManualTest) + + m.update([(s1_1.rel_path, False)]) + + assert list(m) == [("testharness", test1.path, {test1})] + + +def test_update_from_json(): + m = manifest.Manifest() + + s1 = SourceFileWithTest("test1", "0"*40, item.TestharnessTest) + s2 = SourceFileWithTest("test2", "0"*40, item.TestharnessTest) + + m.update([(s1, True), (s2, True)]) + + json_str = m.to_json() + m = manifest.Manifest.from_json("/", json_str) m.update([(s1, True)]) - test1_1 = s1_1.manifest_items()[1][0] + test1 = s1.manifest_items()[1][0] - assert list(m) == [("testharness", test1_1.path, {test1_1})] + assert list(m) == [("testharness", test1.path, {test1})] diff --git a/testing/web-platform/tests/tools/requirements_flake8.txt b/testing/web-platform/tests/tools/requirements_flake8.txt index d2e7dd64232a..00d182e2d0f5 100644 --- a/testing/web-platform/tests/tools/requirements_flake8.txt +++ b/testing/web-platform/tests/tools/requirements_flake8.txt @@ -1,4 +1,4 @@ flake8==3.6.0 pycodestyle==2.4.0 -pyflakes==2.0.0 +pyflakes==2.1.0 pep8-naming==0.7.0 diff --git a/testing/web-platform/tests/tools/serve/serve.py b/testing/web-platform/tests/tools/serve/serve.py index 6cd4664b6fcb..39a5b9debfdd 100644 --- a/testing/web-platform/tests/tools/serve/serve.py +++ b/testing/web-platform/tests/tools/serve/serve.py @@ -16,6 +16,7 @@ import traceback from six.moves import urllib import uuid from collections import defaultdict, OrderedDict +from itertools import chain, product from multiprocessing import Process, Event from localpaths import repo_root @@ -722,6 +723,9 @@ def build_config(override_path=None, **kwargs): return rv +def _make_subdomains_product(s, depth=2): + return set(u".".join(x) for x in chain(*(product(s, repeat=i) for i in range(1, depth+1)))) + _subdomains = {u"www", u"www1", u"www2", @@ -730,6 +734,10 @@ _subdomains = {u"www", _not_subdomains = {u"nonexistent"} +_subdomains = _make_subdomains_product(_subdomains) + +_not_subdomains = _make_subdomains_product(_not_subdomains) + class ConfigBuilder(config.ConfigBuilder): """serve config @@ -759,7 +767,9 @@ class ConfigBuilder(config.ConfigBuilder): "openssl": { "openssl_binary": "openssl", "base_path": "_certs", + "password": "web-platform-tests", "force_regenerate": False, + "duration": 30, "base_conf_path": None }, "pregenerated": { diff --git a/testing/web-platform/tests/tools/serve/test_serve.py b/testing/web-platform/tests/tools/serve/test_serve.py index 1c089b506738..62a6e74f9804 100644 --- a/testing/web-platform/tests/tools/serve/test_serve.py +++ b/testing/web-platform/tests/tools/serve/test_serve.py @@ -1,6 +1,7 @@ +import json +import os import pickle import platform -import os import pytest @@ -75,3 +76,11 @@ def test_pickle(): # Ensure that the config object can be pickled with ConfigBuilder() as c: pickle.dumps(c) + + +def test_config_json_length(): + # we serialize the config as JSON for pytestrunner and put it in an env + # variable, which on Windows must have a length <= 0x7FFF (int16) + with ConfigBuilder() as c: + data = json.dumps(c.as_dict()) + assert len(data) <= 0x7FFF diff --git a/testing/web-platform/tests/tools/tox.ini b/testing/web-platform/tests/tools/tox.ini index fc66c6c2ac39..975056ea2c27 100644 --- a/testing/web-platform/tests/tools/tox.ini +++ b/testing/web-platform/tests/tools/tox.ini @@ -8,7 +8,6 @@ deps = pytest-cov mock hypothesis - pytest-catchlog commands = pytest --cov {posargs} @@ -16,9 +15,9 @@ passenv = HYPOTHESIS_PROFILE [testenv:py27-flake8] -deps = -r requirements_flake8.txt -commands = flake8 --append-config=py27-flake8.ini {posargs} +deps = -rrequirements_flake8.txt +commands = flake8 --append-config={toxinidir}/py27-flake8.ini {posargs} [testenv:py36-flake8] -deps = -r requirements_flake8.txt -commands = flake8 --append-config=py36-flake8.ini {posargs} +deps = -rrequirements_flake8.txt +commands = flake8 --append-config={toxinidir}/py36-flake8.ini {posargs} diff --git a/testing/web-platform/tests/tools/webdriver/webdriver/client.py b/testing/web-platform/tests/tools/webdriver/webdriver/client.py index c5cb9caa5b2c..29be09bb3c93 100644 --- a/testing/web-platform/tests/tools/webdriver/webdriver/client.py +++ b/testing/web-platform/tests/tools/webdriver/webdriver/client.py @@ -566,7 +566,7 @@ class Session(object): @command def close(self): handles = self.send_session_command("DELETE", "window") - if len(handles) == 0: + if handles is not None and len(handles) == 0: # With no more open top-level browsing contexts, the session is closed. self.session_id = None diff --git a/testing/web-platform/tests/tools/wpt/browser.py b/testing/web-platform/tests/tools/wpt/browser.py index 21a5f183105a..bbb3ce5def47 100644 --- a/testing/web-platform/tests/tools/wpt/browser.py +++ b/testing/web-platform/tests/tools/wpt/browser.py @@ -1,4 +1,3 @@ -import logging import os import platform import re @@ -12,14 +11,15 @@ from distutils.spawn import find_executable from utils import call, get, untar, unzip -logger = logging.getLogger(__name__) - uname = platform.uname() class Browser(object): __metaclass__ = ABCMeta + def __init__(self, logger): + self.logger = logger + @abstractmethod def install(self, dest=None): """Install the browser.""" @@ -124,10 +124,14 @@ class Firefox(Browser): dest = os.path.join(dest, "browsers", channel) - filename = FactoryScraper(scraper[channel], - branch=branch[channel], - version=version[channel], - destination=dest).download() + scraper = FactoryScraper(scraper[channel], + branch=branch[channel], + version=version[channel], + destination=dest) + + self.logger.info("Downloading Firefox from %s" % scraper.url) + + filename = scraper.download() try: mozinstall.install(filename, dest) @@ -234,7 +238,7 @@ class Firefox(Browser): if channel is not None and channel != channel_: # Beta doesn't always seem to have the b in the version string, so allow the # manually supplied value to override the one from the binary - logger.warning("Supplied channel doesn't match binary, using supplied channel") + self.logger.warning("Supplied channel doesn't match binary, using supplied channel") elif channel is None: channel = channel_ if dest is None: @@ -260,7 +264,7 @@ class Firefox(Browser): url = self.get_profile_bundle_url(version, channel) - logger.info("Installing test prefs from %s" % url) + self.logger.info("Installing test prefs from %s" % url) try: extract_dir = tempfile.mkdtemp() unzip(get(url).raw, dest=extract_dir) @@ -272,7 +276,7 @@ class Firefox(Browser): finally: shutil.rmtree(extract_dir) else: - logger.info("Using cached test prefs from %s" % dest) + self.logger.info("Using cached test prefs from %s" % dest) return dest @@ -302,11 +306,11 @@ class Firefox(Browser): if path is not None: return path else: - logger.warning("Nightly webdriver not found; falling back to release") + self.logger.warning("Nightly webdriver not found; falling back to release") version = self._latest_geckodriver_version() format = "zip" if uname[0] == "Windows" else "tar.gz" - logger.debug("Latest geckodriver release %s" % version) + self.logger.debug("Latest geckodriver release %s" % version) url = ("https://github.com/mozilla/geckodriver/releases/download/%s/geckodriver-%s-%s.%s" % (version, version, self.platform_string_geckodriver(), format)) if format == "zip": @@ -318,7 +322,7 @@ class Firefox(Browser): def install_geckodriver_nightly(self, dest): import tarfile import mozdownload - logger.info("Attempting to install webdriver from nightly") + self.logger.info("Attempting to install webdriver from nightly") try: s = mozdownload.DailyScraper(branch="mozilla-central", extension="common.tests.tar.gz", @@ -339,7 +343,7 @@ class Firefox(Browser): member.name = os.path.basename(member.name) f.extractall(members=[member], path=dest) path = os.path.join(dest, member.name) - logger.info("Extracted geckodriver to %s" % path) + self.logger.info("Extracted geckodriver to %s" % path) finally: os.unlink(package_path) @@ -392,7 +396,7 @@ class Chrome(Browser): if uname[0] == "Darwin": return "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" # TODO Windows? - logger.warn("Unable to find the browser binary.") + self.logger.warning("Unable to find the browser binary.") return None def install(self, dest=None, channel=None): @@ -442,14 +446,14 @@ class Chrome(Browser): try: version_string = call(binary, "--version").strip() except subprocess.CalledProcessError: - logger.warn("Failed to call %s", binary) + self.logger.warning("Failed to call %s", binary) return None m = re.match(r"Google Chrome (.*)", version_string) if not m: - logger.warn("Failed to extract version from: s%", version_string) + self.logger.warning("Failed to extract version from: s%", version_string) return None return m.group(1) - logger.warn("Unable to extract version from binary on Windows.") + self.logger.warning("Unable to extract version from binary on Windows.") return None @@ -493,7 +497,7 @@ class Opera(Browser): if uname[0] == "Linux": return "/usr/bin/opera" # TODO Windows, Mac? - logger.warn("Unable to find the browser binary.") + self.logger.warning("Unable to find the browser binary.") return None def install(self, dest=None, channel=None): @@ -547,7 +551,7 @@ class Opera(Browser): try: output = call(binary, "--version") except subprocess.CalledProcessError: - logger.warn("Failed to call %s", binary) + self.logger.warning("Failed to call %s", binary) return None m = re.search(r"[0-9\.]+( [a-z]+)?$", output.strip()) if m: @@ -628,7 +632,7 @@ class Safari(Browser): def version(self, binary=None, webdriver_binary=None): if webdriver_binary is None: - logger.warn("Cannot find Safari version without safaridriver") + self.logger.warning("Cannot find Safari version without safaridriver") return None # Use `safaridriver --version` to get the version. Example output: # "Included with Safari 12.1 (14607.1.11)" @@ -637,11 +641,11 @@ class Safari(Browser): try: version_string = call(webdriver_binary, "--version").strip() except subprocess.CalledProcessError: - logger.warn("Failed to call %s --version", webdriver_binary) + self.logger.warning("Failed to call %s --version", webdriver_binary) return None m = re.match(r"Included with Safari (.*)", version_string) if not m: - logger.warn("Failed to extract version from: s%", version_string) + self.logger.warning("Failed to extract version from: s%", version_string) return None return m.group(1) @@ -752,3 +756,32 @@ class WebKit(Browser): def version(self, binary=None, webdriver_binary=None): return None + + +class Epiphany(Browser): + """Epiphany-specific interface.""" + + product = "epiphany" + requirements = "requirements_epiphany.txt" + + def install(self, dest=None, channel=None): + raise NotImplementedError + + def find_binary(self, venv_path=None, channel=None): + return find_executable("epiphany") + + def find_webdriver(self, channel=None): + return find_executable("WebKitWebDriver") + + def install_webdriver(self, dest=None, channel=None): + raise NotImplementedError + + def version(self, binary=None, webdriver_binary=None): + if binary is None: + return None + output = call(binary, "--version") + if output: + # Stable release output looks like: "Web 3.30.2" + # Tech Preview output looks like "Web 3.31.3-88-g97db4f40f" + return output.split()[1] + return None diff --git a/testing/web-platform/tests/tools/wpt/install.py b/testing/web-platform/tests/tools/wpt/install.py index 16f565e9daa1..be6bf8159862 100644 --- a/testing/web-platform/tests/tools/wpt/install.py +++ b/testing/web-platform/tests/tools/wpt/install.py @@ -73,7 +73,11 @@ def run(venv, **kwargs): install(browser, kwargs["component"], destination, channel) -def install(name, component, destination, channel="nightly"): +def install(name, component, destination, channel="nightly", logger=None): + if logger is None: + import logging + logger = logging.getLogger("install") + if component == 'webdriver': method = 'install_webdriver' else: @@ -81,6 +85,6 @@ def install(name, component, destination, channel="nightly"): subclass = getattr(browser, name.title()) sys.stdout.write('Now installing %s %s...\n' % (name, component)) - path = getattr(subclass(), method)(dest=destination, channel=channel) + path = getattr(subclass(logger), method)(dest=destination, channel=channel) if path: sys.stdout.write('Binary installed as %s\n' % (path,)) diff --git a/testing/web-platform/tests/tools/wpt/run.py b/testing/web-platform/tests/tools/wpt/run.py index 19ab4726081a..df34e5915686 100644 --- a/testing/web-platform/tests/tools/wpt/run.py +++ b/testing/web-platform/tests/tools/wpt/run.py @@ -151,7 +151,7 @@ class BrowserSetup(object): browser_cls = None def __init__(self, venv, prompt=True, sub_product=None): - self.browser = self.browser_cls() + self.browser = self.browser_cls(logger) self.venv = venv self.prompt = prompt self.sub_product = sub_product @@ -171,7 +171,8 @@ class BrowserSetup(object): return self.browser.install(venv.path, channel) def install_requirements(self): - self.venv.install_requirements(os.path.join(wpt_root, "tools", "wptrunner", self.browser.requirements)) + if not self.venv.skip_virtualenv_setup: + self.venv.install_requirements(os.path.join(wpt_root, "tools", "wptrunner", self.browser.requirements)) def setup(self, kwargs): self.setup_kwargs(kwargs) @@ -422,7 +423,7 @@ class Servo(BrowserSetup): binary = self.browser.find_binary(self.venv.path, None) if binary is None: - raise WptrunError("Unable to find servo binary on the PATH") + raise WptrunError("Unable to find servo binary in PATH") kwargs["binary"] = binary @@ -442,6 +443,29 @@ class WebKit(BrowserSetup): pass +class Epiphany(BrowserSetup): + name = "epiphany" + browser_cls = browser.Epiphany + + def install(self, venv, channel=None): + raise NotImplementedError + + def setup_kwargs(self, kwargs): + if kwargs["binary"] is None: + binary = self.browser.find_binary() + + if binary is None: + raise WptrunError("Unable to find epiphany in PATH") + kwargs["binary"] = binary + + if kwargs["webdriver_binary"] is None: + webdriver_binary = self.browser.find_webdriver() + + if webdriver_binary is None: + raise WptrunError("Unable to find WebKitWebDriver in PATH") + kwargs["webdriver_binary"] = webdriver_binary + + product_setup = { "fennec": Fennec, "firefox": Firefox, @@ -456,6 +480,7 @@ product_setup = { "sauce": Sauce, "opera": Opera, "webkit": WebKit, + "epiphany": Epiphany, } @@ -510,11 +535,9 @@ def setup_wptrunner(venv, prompt=True, install_browser=False, **kwargs): files_changed, manifest_path=kwargs.get("manifest_path"), manifest_update=kwargs["manifest_update"]) test_list = tests_changed | tests_affected logger.info("Identified %s affected tests" % len(test_list)) - if not test_list and not kwargs["test_list"]: - logger.info("Quitting because no tests were affected.") - exit() test_list = [os.path.relpath(item, wpt_root) for item in test_list] kwargs["test_list"] += test_list + kwargs["default_exclude"] = True if install_browser and not kwargs["channel"]: logger.info("--install-browser is given but --channel is not set, default to nightly channel") @@ -541,7 +564,8 @@ def setup_wptrunner(venv, prompt=True, install_browser=False, **kwargs): wptrunner_path = os.path.join(wpt_root, "tools", "wptrunner") - venv.install_requirements(os.path.join(wptrunner_path, "requirements.txt")) + if not venv.skip_virtualenv_setup: + venv.install_requirements(os.path.join(wptrunner_path, "requirements.txt")) kwargs['browser_version'] = setup_cls.browser.version(binary=kwargs.get("binary"), webdriver_binary=kwargs.get("webdriver_binary")) diff --git a/testing/web-platform/tests/tools/wpt/testfiles.py b/testing/web-platform/tests/tools/wpt/testfiles.py index 2b20b07694bf..70e695aa0100 100644 --- a/testing/web-platform/tests/tools/wpt/testfiles.py +++ b/testing/web-platform/tests/tools/wpt/testfiles.py @@ -8,8 +8,6 @@ import sys from collections import OrderedDict from six import iteritems -from ..manifest import manifest - here = os.path.dirname(__file__) wpt_root = os.path.abspath(os.path.join(here, os.pardir, os.pardir)) @@ -183,24 +181,15 @@ def _in_repo_root(full_path): return len(path_components) < 2 -def _init_manifest_cache(): - c = {} - - def load(manifest_path=None, manifest_update=True): - if manifest_path is None: - manifest_path = os.path.join(wpt_root, "MANIFEST.json") - if c.get(manifest_path): - return c[manifest_path] - # cache at most one path:manifest - c.clear() - wpt_manifest = manifest.load_and_update(wpt_root, manifest_path, "/", - update=manifest_update) - c[manifest_path] = wpt_manifest - return c[manifest_path] - return load - - -load_manifest = _init_manifest_cache() +def load_manifest(manifest_path=None, manifest_update=True): + # Delay import after localpaths sets up sys.path, because otherwise the + # import path will be "..manifest" and Python will treat it as a different + # manifest module. + from manifest import manifest + if manifest_path is None: + manifest_path = os.path.join(wpt_root, "MANIFEST.json") + return manifest.load_and_update(wpt_root, manifest_path, "/", + update=manifest_update) def affected_testfiles(files_changed, skip_dirs=None, diff --git a/testing/web-platform/tests/tools/wpt/tests/test_browser.py b/testing/web-platform/tests/tools/wpt/tests/test_browser.py index 4ce8606949c2..a2e518a9d07d 100644 --- a/testing/web-platform/tests/tools/wpt/tests/test_browser.py +++ b/testing/web-platform/tests/tools/wpt/tests/test_browser.py @@ -1,11 +1,16 @@ import mock import subprocess +import logging from tools.wpt import browser + +logger = logging.getLogger() + + @mock.patch('subprocess.check_output') def test_safari_version(mocked_check_output): - safari = browser.Safari() + safari = browser.Safari(logger) # Safari mocked_check_output.return_value = 'Included with Safari 12.1 (14607.1.11)' @@ -17,7 +22,7 @@ def test_safari_version(mocked_check_output): @mock.patch('subprocess.check_output') def test_safari_version_errors(mocked_check_output): - safari = browser.Safari() + safari = browser.Safari(logger) # No webdriver_binary assert safari.version() is None diff --git a/testing/web-platform/tests/tools/wpt/tests/test_run.py b/testing/web-platform/tests/tools/wpt/tests/test_run.py index aaff0fa53314..cd70fef5e8bf 100644 --- a/testing/web-platform/tests/tools/wpt/tests/test_run.py +++ b/testing/web-platform/tests/tools/wpt/tests/test_run.py @@ -17,6 +17,7 @@ def venv(): class Virtualenv(virtualenv.Virtualenv): def __init__(self): self.path = tempfile.mkdtemp() + self.skip_virtualenv_setup = False def create(self): return diff --git a/testing/web-platform/tests/tools/wpt/tests/test_wpt.py b/testing/web-platform/tests/tools/wpt/tests/test_wpt.py index c5fd9d96c367..75cedf75ee01 100644 --- a/testing/web-platform/tests/tools/wpt/tests/test_wpt.py +++ b/testing/web-platform/tests/tools/wpt/tests/test_wpt.py @@ -30,27 +30,29 @@ def is_port_8000_in_use(): return False -@pytest.fixture(scope="module") -def manifest_dir(): - def update_manifest(): - with pytest.raises(SystemExit) as excinfo: - wpt.main(argv=["manifest", "--no-download", "--path", os.path.join(path, "MANIFEST.json")]) - assert excinfo.value.code == 0 +def get_persistent_manifest_path(): + directory = ("~/meta" if os.environ.get('TRAVIS') == "true" + else wpt.localpaths.repo_root) + return os.path.join(directory, "MANIFEST.json") - if os.environ.get('TRAVIS') == "true": - path = "~/meta" - update_manifest() + +@pytest.fixture(scope="module", autouse=True) +def init_manifest(): + with pytest.raises(SystemExit) as excinfo: + wpt.main(argv=["manifest", "--no-download", + "--path", get_persistent_manifest_path()]) + assert excinfo.value.code == 0 + + +@pytest.fixture +def manifest_dir(): + try: + path = tempfile.mkdtemp() + shutil.copyfile(get_persistent_manifest_path(), + os.path.join(path, "MANIFEST.json")) yield path - else: - try: - path = tempfile.mkdtemp() - old_path = os.path.join(wpt.localpaths.repo_root, "MANIFEST.json") - if os.path.exists(os.path.join(wpt.localpaths.repo_root, "MANIFEST.json")): - shutil.copyfile(old_path, os.path.join(path, "MANIFEST.json")) - update_manifest() - yield path - finally: - shutil.rmtree(path) + finally: + shutil.rmtree(path) @pytest.fixture @@ -159,51 +161,6 @@ def test_list_tests_invalid_manifest(manifest_dir): assert excinfo.value.code == 0 -@pytest.mark.slow -@pytest.mark.remote_network -@pytest.mark.xfail(sys.platform == "win32", - reason="Tests currently don't work on Windows for path reasons") -def test_run_firefox(manifest_dir): - # TODO: It seems like there's a bug in argparse that makes this argument order required - # should try to work around that - if is_port_8000_in_use(): - pytest.skip("port 8000 already in use") - - if sys.platform == "darwin": - fx_path = os.path.join(wpt.localpaths.repo_root, "_venv", "browsers", "nightly", "Firefox Nightly.app") - else: - fx_path = os.path.join(wpt.localpaths.repo_root, "_venv", "browsers", "nightly", "firefox") - if os.path.exists(fx_path): - shutil.rmtree(fx_path) - with pytest.raises(SystemExit) as excinfo: - wpt.main(argv=["run", "--no-pause", "--install-browser", "--yes", - # The use of `--binary-args` is intentional: it - # demonstrates that internally-managed command-line - # arguments are properly merged with those specified by - # the user. See - # https://github.com/web-platform-tests/wpt/pull/13154 - "--binary-arg=-headless", - "--metadata", manifest_dir, - "firefox", "/dom/nodes/Element-tagName.html"]) - assert os.path.exists(fx_path) - shutil.rmtree(fx_path) - assert excinfo.value.code == 0 - - -@pytest.mark.slow -@pytest.mark.xfail(sys.platform == "win32", - reason="Tests currently don't work on Windows for path reasons") -def test_run_chrome(manifest_dir): - if is_port_8000_in_use(): - pytest.skip("port 8000 already in use") - - with pytest.raises(SystemExit) as excinfo: - wpt.main(argv=["run", "--yes", "--no-pause", "--binary-arg", "headless", - "--metadata", manifest_dir, - "chrome", "/dom/nodes/Element-tagName.html"]) - assert excinfo.value.code == 0 - - @pytest.mark.slow @pytest.mark.remote_network @pytest.mark.xfail(sys.platform == "win32", @@ -400,7 +357,7 @@ def test_tests_affected_idlharness(capsys, manifest_dir): wpt.main(argv=["tests-affected", "--metadata", manifest_dir, "%s~..%s" % (commit, commit)]) assert excinfo.value.code == 0 out, err = capsys.readouterr() - assert "webrtc/idlharness.https.window.js\n" == out + assert "webrtc-stats/idlharness.window.js\nwebrtc/idlharness.https.window.js\n" == out @pytest.mark.slow # this updates the manifest @@ -455,6 +412,5 @@ def test_serve(): # The following commands are slow running and used implicitly in other CI # jobs, so we skip them here: -# wpt check-stability # wpt manifest # wpt lint diff --git a/testing/web-platform/tests/tools/wpt/virtualenv.py b/testing/web-platform/tests/tools/wpt/virtualenv.py index 0ce7054ae222..b27529da7a7e 100644 --- a/testing/web-platform/tests/tools/wpt/virtualenv.py +++ b/testing/web-platform/tests/tools/wpt/virtualenv.py @@ -9,11 +9,13 @@ from tools.wpt.utils import call logger = logging.getLogger(__name__) class Virtualenv(object): - def __init__(self, path): + def __init__(self, path, skip_virtualenv_setup): self.path = path - self.virtualenv = find_executable("virtualenv") - if not self.virtualenv: - raise ValueError("virtualenv must be installed and on the PATH") + self.skip_virtualenv_setup = skip_virtualenv_setup + if not skip_virtualenv_setup: + self.virtualenv = find_executable("virtualenv") + if not self.virtualenv: + raise ValueError("virtualenv must be installed and on the PATH") @property def exists(self): diff --git a/testing/web-platform/tests/tools/wpt/wpt.py b/testing/web-platform/tests/tools/wpt/wpt.py index 55802461553a..909d435b6485 100644 --- a/testing/web-platform/tests/tools/wpt/wpt.py +++ b/testing/web-platform/tests/tools/wpt/wpt.py @@ -43,6 +43,9 @@ def load_commands(): def parse_args(argv, commands): parser = argparse.ArgumentParser() parser.add_argument("--venv", action="store", help="Path to an existing virtualenv to use") + parser.add_argument("--skip-venv-setup", action="store_true", + dest="skip_venv_setup", + help="Whether to use the virtualenv as-is. Must set --venv as well") parser.add_argument("--debug", action="store_true", help="Run the debugger in case of an exception") subparsers = parser.add_subparsers(dest="command") for command, props in iteritems(commands): @@ -77,15 +80,19 @@ def import_command(prog, command, props): return script, parser -def setup_virtualenv(path, props): +def setup_virtualenv(path, skip_venv_setup, props): + if skip_venv_setup and path is None: + raise ValueError("Must set --venv when --skip-venv-setup is used") + should_skip_setup = path is not None and skip_venv_setup if path is None: path = os.path.join(wpt_root, "_venv") - venv = virtualenv.Virtualenv(path) - venv.start() - for name in props["install"]: - venv.install(name) - for path in props["requirements"]: - venv.install_requirements(path) + venv = virtualenv.Virtualenv(path, should_skip_setup) + if not should_skip_setup: + venv.start() + for name in props["install"]: + venv.install(name) + for path in props["requirements"]: + venv.install_requirements(path) return venv @@ -105,7 +112,7 @@ def main(prog=None, argv=None): props = commands[command] venv = None if props["virtualenv"]: - venv = setup_virtualenv(main_args.venv, props) + venv = setup_virtualenv(main_args.venv, main_args.skip_venv_setup, props) script, parser = import_command(prog, command, props) if parser: if props["parse_known"]: diff --git a/testing/web-platform/tests/tools/wptrunner/requirements.txt b/testing/web-platform/tests/tools/wptrunner/requirements.txt index 1fde996a78e8..b220a01b67d5 100644 --- a/testing/web-platform/tests/tools/wptrunner/requirements.txt +++ b/testing/web-platform/tests/tools/wptrunner/requirements.txt @@ -1,5 +1,5 @@ html5lib == 1.0.1 mozinfo == 0.10 -mozlog==3.9 +mozlog==3.10 mozdebug==0.1.1 urllib3[secure]==1.24.1 diff --git a/testing/web-platform/tests/tools/wptrunner/requirements_epiphany.txt b/testing/web-platform/tests/tools/wptrunner/requirements_epiphany.txt new file mode 100644 index 000000000000..9115b7ac4e8f --- /dev/null +++ b/testing/web-platform/tests/tools/wptrunner/requirements_epiphany.txt @@ -0,0 +1 @@ +mozprocess == 0.26 diff --git a/testing/web-platform/tests/tools/wptrunner/requirements_firefox.txt b/testing/web-platform/tests/tools/wptrunner/requirements_firefox.txt index ae8047562268..7e8514324947 100644 --- a/testing/web-platform/tests/tools/wptrunner/requirements_firefox.txt +++ b/testing/web-platform/tests/tools/wptrunner/requirements_firefox.txt @@ -3,7 +3,7 @@ mozprofile==2.1.0 mozprocess == 0.26 mozcrash == 1.0 mozrunner==7.2.0 -mozleak == 0.1 -mozinstall==1.16.0 +mozleak==0.2 +mozinstall==2.0.0 mozdownload==1.25 - +mozversion==1.5 diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/__init__.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/__init__.py index f86792d47410..fdedda44d28d 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/__init__.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/__init__.py @@ -34,4 +34,5 @@ product_list = ["chrome", "servo", "servodriver", "opera", - "webkit"] + "webkit", + "epiphany"] diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/chrome.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/chrome.py index aa44817276f9..5b586bad8c22 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/chrome.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/chrome.py @@ -47,6 +47,8 @@ def executor_kwargs(test_type, server_config, cache_manager, run_info_data, } } }, + "useAutomationExtension": False, + "excludeSwitches": ["enable-automation"], "w3c": True } } @@ -64,10 +66,6 @@ def executor_kwargs(test_type, server_config, cache_manager, run_info_data, if "--headless" not in capabilities["goog:chromeOptions"]["args"]: capabilities["goog:chromeOptions"]["args"].append("--headless") - if test_type == "testharness": - capabilities["goog:chromeOptions"]["useAutomationExtension"] = False - capabilities["goog:chromeOptions"]["excludeSwitches"] = ["enable-automation"] - executor_kwargs["capabilities"] = capabilities return executor_kwargs diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/epiphany.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/epiphany.py new file mode 100644 index 000000000000..599ec9f3110f --- /dev/null +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/epiphany.py @@ -0,0 +1,74 @@ +from .base import get_timeout_multiplier # noqa: F401 +from .webkit import WebKitBrowser +from ..executors import executor_kwargs as base_executor_kwargs +from ..executors.executorwebdriver import (WebDriverTestharnessExecutor, # noqa: F401 + WebDriverRefTestExecutor) # noqa: F401 +from ..executors.executorwebkit import WebKitDriverWdspecExecutor # noqa: F401 + +__wptrunner__ = {"product": "epiphany", + "check_args": "check_args", + "browser": "EpiphanyBrowser", + "browser_kwargs": "browser_kwargs", + "executor": {"testharness": "WebDriverTestharnessExecutor", + "reftest": "WebDriverRefTestExecutor", + "wdspec": "WebKitDriverWdspecExecutor"}, + "executor_kwargs": "executor_kwargs", + "env_extras": "env_extras", + "env_options": "env_options", + "run_info_extras": "run_info_extras", + "timeout_multiplier": "get_timeout_multiplier"} + + +def check_args(**kwargs): + pass + + +def browser_kwargs(test_type, run_info_data, config, **kwargs): + return {"binary": kwargs["binary"], + "webdriver_binary": kwargs["webdriver_binary"], + "webdriver_args": kwargs.get("webdriver_args")} + + +def capabilities(server_config, **kwargs): + args = kwargs.get("binary_args", []) + if "--automation-mode" not in args: + args.append("--automation-mode") + + return { + "browserName": "Epiphany", + "browserVersion": "3.31.4", # First version to support automation + "platformName": "ANY", + "webkitgtk:browserOptions": { + "binary": kwargs["binary"], + "args": args, + "certificates": [ + {"host": server_config["browser_host"], + "certificateFile": kwargs["host_cert_path"]}]}} + + +def executor_kwargs(test_type, server_config, cache_manager, run_info_data, + **kwargs): + executor_kwargs = base_executor_kwargs(test_type, server_config, + cache_manager, run_info_data, **kwargs) + executor_kwargs["close_after_done"] = True + executor_kwargs["capabilities"] = capabilities(server_config, **kwargs) + return executor_kwargs + + +def env_extras(**kwargs): + return [] + + +def env_options(): + return {} + + +def run_info_extras(**kwargs): + return {"webkit_port": "gtk"} + + +class EpiphanyBrowser(WebKitBrowser): + def __init__(self, logger, binary=None, webdriver_binary=None, + webdriver_args=None): + WebKitBrowser.__init__(self, logger, binary, webdriver_binary, + webdriver_args) diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/fennec.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/fennec.py index b8e61a622fee..b8e4ebc4aeb9 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/fennec.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/fennec.py @@ -13,10 +13,11 @@ from .base import (get_free_port, browser_command) from ..executors.executormarionette import (MarionetteTestharnessExecutor, # noqa: F401 MarionetteRefTestExecutor) # noqa: F401 -from .firefox import (get_timeout_multiplier, - update_properties, - executor_kwargs, - FirefoxBrowser) +from .firefox import (get_timeout_multiplier, # noqa: F401 + run_info_browser_version, + update_properties, # noqa: F401 + executor_kwargs, # noqa: F401 + FirefoxBrowser) # noqa: F401 __wptrunner__ = {"product": "fennec", @@ -67,9 +68,11 @@ def env_extras(**kwargs): def run_info_extras(**kwargs): - return {"e10s": False, - "headless": False, - "sw-e10s": False} + rv = {"e10s": False, + "headless": False, + "sw-e10s": False} + rv.update(run_info_browser_version(kwargs["binary"])) + return rv def env_options(): diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py index a4b594ad41ff..dca5836ded2b 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py @@ -7,6 +7,7 @@ import sys import mozinfo import mozleak +import mozversion from mozprocess import ProcessHandler from mozprofile import FirefoxProfile, Preferences from mozrunner import FirefoxRunner @@ -152,11 +153,24 @@ def run_info_extras(**kwargs): return value.lower() in ('true', '1') return False - return {"e10s": kwargs["gecko_e10s"], - "wasm": kwargs.get("wasm", True), - "verify": kwargs["verify"], - "headless": "MOZ_HEADLESS" in os.environ, - "sw-e10s": get_bool_pref("dom.serviceWorkers.parent_intercept"),} + rv = {"e10s": kwargs["gecko_e10s"], + "wasm": kwargs.get("wasm", True), + "verify": kwargs["verify"], + "headless": "MOZ_HEADLESS" in os.environ, + "sw-e10s": get_bool_pref("dom.serviceWorkers.parent_intercept")} + rv.update(run_info_browser_version(kwargs["binary"])) + return rv + + +def run_info_browser_version(binary): + try: + version_info = mozversion.get_version(binary) + except mozversion.errors.VersionError: + version_info = None + if version_info: + return {"browser_build_id": version_info.get("application_buildid", None), + "browser_changeset": version_info.get("application_changeset", None)} + return {} def update_properties(): diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorselenium.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorselenium.py index 75e7b2cc4ae9..fce1a5bc0d98 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorselenium.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorselenium.py @@ -359,8 +359,6 @@ class SeleniumRefTestExecutor(RefTestExecutor): self.close_after_done = close_after_done self.has_window = False - with open(os.path.join(here, "reftest.js")) as f: - self.script = f.read() with open(os.path.join(here, "reftest-wait_webdriver.js")) as f: self.wait_script = f.read() @@ -370,7 +368,11 @@ class SeleniumRefTestExecutor(RefTestExecutor): def do_test(self, test): self.logger.info("Test requires OS-level window focus") - self.protocol.webdriver.set_window_size(600, 600) + width_offset, height_offset = self.protocol.webdriver.execute_script( + """return [window.outerWidth - window.innerWidth, + window.outerHeight - window.innerHeight];""" + ) + self.protocol.webdriver.set_window_size(600 + width_offset, 600 + height_offset) result = self.implementation.run_test(test) diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorservo.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorservo.py index f3a70f03dc67..506c0140d8ab 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorservo.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorservo.py @@ -210,7 +210,7 @@ class ServoRefTestExecutor(ProcessTestExecutor): for pref, value in test.environment.get('prefs', {}).iteritems(): command += ["--pref", "%s=%s" % (pref, value)] - command += ["--resolution", viewport_size or "800x600"] + command += ["--resolution", viewport_size or "600x600"] if self.browser.ca_certificate_path: command += ["--certificate-path", self.browser.ca_certificate_path] diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorservodriver.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorservodriver.py index d015e77b8c72..b9a9c3810dd8 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorservodriver.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorservodriver.py @@ -177,6 +177,8 @@ def timeout_func(timeout): class ServoWebDriverTestharnessExecutor(TestharnessExecutor): + supports_testdriver = True + def __init__(self, browser, server_config, timeout_multiplier=1, close_after_done=True, capabilities=None, debug_info=None, **kwargs): diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py index 0e83118d9ac4..dcab4b045291 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py @@ -394,8 +394,6 @@ class WebDriverRefTestExecutor(RefTestExecutor): self.close_after_done = close_after_done self.has_window = False - with open(os.path.join(here, "reftest.js")) as f: - self.script = f.read() with open(os.path.join(here, "reftest-wait_webdriver.js")) as f: self.wait_script = f.read() @@ -403,7 +401,11 @@ class WebDriverRefTestExecutor(RefTestExecutor): return self.protocol.is_alive() def do_test(self, test): - self.protocol.webdriver.window.size = (600, 600) + width_offset, height_offset = self.protocol.webdriver.execute_script( + """return [window.outerWidth - window.innerWidth, + window.outerHeight - window.innerHeight];""" + ) + self.protocol.webdriver.window.size = (600 + width_offset, 600 + height_offset) result = self.implementation.run_test(test) diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/metadata.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/metadata.py index e4060f38cf43..4368a9d3c1ba 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/metadata.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/metadata.py @@ -509,7 +509,7 @@ class PackedResultList(object): prop = prop_intern.get((packed & 0xF000) >> 12) value_idx = (packed & 0x0F00) >> 8 - if value_idx is 0: + if value_idx == 0: value = self.raw_data[idx] else: value = status_intern.get(value_idx) diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/testloader.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/testloader.py index f8849ebe75e6..ae7fae30d0b0 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/testloader.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/testloader.py @@ -338,15 +338,17 @@ class EqualTimeChunker(TestChunker): class TestFilter(object): - def __init__(self, test_manifests, include=None, exclude=None, manifest_path=None): - if manifest_path is not None and include is None: - self.manifest = manifestinclude.get_manifest(manifest_path) - else: + def __init__(self, test_manifests, include=None, exclude=None, manifest_path=None, explicit=False): + if manifest_path is None or include or explicit: self.manifest = manifestinclude.IncludeManifest.create() self.manifest.set_defaults() + else: + self.manifest = manifestinclude.get_manifest(manifest_path) + + if include or explicit: + self.manifest.set("skip", "true") if include: - self.manifest.set("skip", "true") for item in include: self.manifest.add_include(test_manifests, item) @@ -420,7 +422,6 @@ class TestLoader(object): test_types, run_info, manifest_filters=None, - meta_filters=None, chunk_type="none", total_chunks=1, chunk_number=1, @@ -431,7 +432,6 @@ class TestLoader(object): self.run_info = run_info self.manifest_filters = manifest_filters if manifest_filters is not None else [] - self.meta_filters = meta_filters if meta_filters is not None else [] self.manifests = test_manifests self.tests = None diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/tests/test_update.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/tests/test_update.py index 689ecbdb8fcd..8228abe23123 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/tests/test_update.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/tests/test_update.py @@ -625,7 +625,7 @@ def test_update_leak_total_0(): new_manifest = updated[0][1] assert not new_manifest.is_empty - assert new_manifest.get("leak-threshold") == ['default:110'] + assert new_manifest.get("leak-threshold") == ['default:51200'] def test_update_leak_total_1(): @@ -678,7 +678,7 @@ leak-total: 100""")] new_manifest = updated[0][1] assert not new_manifest.is_empty - assert new_manifest.get("leak-threshold") == ['default:1100'] + assert new_manifest.get("leak-threshold") == ['default:51200'] def test_update_leak_total_4(): diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/wptcommandline.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/wptcommandline.py index 398beb2c2bd5..1d6909daaca6 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/wptcommandline.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/wptcommandline.py @@ -137,6 +137,11 @@ scheme host and port.""") test_selection_group.add_argument("--tag", action="append", dest="tags", help="Labels applied to tests to include in the run. " "Labels starting dir: are equivalent to top-level directories.") + test_selection_group.add_argument("--default-exclude", action="store_true", + default=False, + help="Only run the tests explicitly given in arguments. " + "No tests will run if the list is empty, and the " + "program will exit with status code 0.") debugging_group = parser.add_argument_group("Debugging") debugging_group.add_argument('--debugger', const="__default__", nargs="?", diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py index f5780daacd7f..0d25846f8814 100644 --- a/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py +++ b/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py @@ -57,22 +57,19 @@ def get_loader(test_paths, product, debug=None, run_info_extras=None, **kwargs): manifest_download=kwargs["manifest_download"]).load() manifest_filters = [] - meta_filters = [] - if kwargs["include"] or kwargs["exclude"] or kwargs["include_manifest"]: + if kwargs["include"] or kwargs["exclude"] or kwargs["include_manifest"] or kwargs["default_exclude"]: manifest_filters.append(testloader.TestFilter(include=kwargs["include"], exclude=kwargs["exclude"], manifest_path=kwargs["include_manifest"], - test_manifests=test_manifests)) - if kwargs["tags"]: - meta_filters.append(testloader.TagFilter(tags=kwargs["tags"])) + test_manifests=test_manifests, + explicit=kwargs["default_exclude"])) ssl_enabled = sslutils.get_cls(kwargs["ssl_type"]).ssl_enabled test_loader = testloader.TestLoader(test_manifests, kwargs["test_types"], run_info, manifest_filters=manifest_filters, - meta_filters=meta_filters, chunk_type=kwargs["chunk_type"], total_chunks=kwargs["total_chunks"], chunk_number=kwargs["this_chunk"], @@ -169,7 +166,7 @@ def run_tests(config, test_paths, product, **kwargs): test_total = 0 unexpected_total = 0 - if len(test_loader.test_ids) == 0: + if len(test_loader.test_ids) == 0 and kwargs["test_list"]: logger.error("Unable to find any tests at the path(s):") for path in kwargs["test_list"]: logger.error(" %s" % path) @@ -299,8 +296,12 @@ def run_tests(config, test_paths, product, **kwargs): if skipped_tests > 0: logger.warning("All requested tests were skipped") else: - logger.error("No tests ran") - return False + if kwargs["default_exclude"]: + logger.info("No tests ran") + return True + else: + logger.error("No tests ran") + return False if unexpected_total and not kwargs["fail_on_unexpected"]: logger.info("Tolerating %s unexpected results" % unexpected_total) diff --git a/testing/web-platform/tests/tools/wptserve/docs/pipes.rst b/testing/web-platform/tests/tools/wptserve/docs/pipes.rst index df0746fd0fde..507631c51986 100644 --- a/testing/web-platform/tests/tools/wptserve/docs/pipes.rst +++ b/testing/web-platform/tests/tools/wptserve/docs/pipes.rst @@ -52,6 +52,10 @@ and `}}`. Inside the block the following variables are available: The HTTP headers in the request e.g. `{{headers[X-Test]}}` for a hypothetical `X-Test` header. + `{{header_or_default(header, default)}}` + The value of an HTTP header, or a default value if it is absent. + e.g. `{{header_or_default(X-Test, test-header-absent)}}` + `{{GET[]}}` The query parameters for the request e.g. `{{GET[id]}}` for an id parameter sent with the request. diff --git a/testing/web-platform/tests/tools/wptserve/tests/functional/docroot/sub_header_or_default.sub.txt b/testing/web-platform/tests/tools/wptserve/tests/functional/docroot/sub_header_or_default.sub.txt new file mode 100644 index 000000000000..f1f941aa160d --- /dev/null +++ b/testing/web-platform/tests/tools/wptserve/tests/functional/docroot/sub_header_or_default.sub.txt @@ -0,0 +1,2 @@ +{{header_or_default(X-Present, present-default)}} +{{header_or_default(X-Absent, absent-default)}} diff --git a/testing/web-platform/tests/tools/wptserve/tests/functional/test_pipes.py b/testing/web-platform/tests/tools/wptserve/tests/functional/test_pipes.py index 2ba6f744b228..86b4be6b129d 100644 --- a/testing/web-platform/tests/tools/wptserve/tests/functional/test_pipes.py +++ b/testing/web-platform/tests/tools/wptserve/tests/functional/test_pipes.py @@ -126,6 +126,11 @@ server: http://localhost:{0}""".format(self.server.port).encode("ascii") """ % {"root": root, "sep": os.path.sep} self.assertEqual(resp.read(), expected.encode("utf8")) + def test_sub_header_or_default(self): + resp = self.request("/sub_header_or_default.sub.txt", headers={"X-Present": "OK"}) + expected = b"OK\nabsent-default" + self.assertEqual(resp.read().rstrip(), expected) + class TestTrickle(TestUsingServer): def test_trickle(self): #Actually testing that the response trickles in is not that easy diff --git a/testing/web-platform/tests/tools/wptserve/tests/test_config.py b/testing/web-platform/tests/tools/wptserve/tests/test_config.py index 2ee8287710e9..45f138f131d3 100644 --- a/testing/web-platform/tests/tools/wptserve/tests/test_config.py +++ b/testing/web-platform/tests/tools/wptserve/tests/test_config.py @@ -1,3 +1,4 @@ +import json import logging import pickle @@ -43,6 +44,16 @@ def test_logger_preserved(): assert c.logger is logger +def test_as_dict(): + with config.ConfigBuilder() as c: + assert c.as_dict() is not None + + +def test_as_dict_is_json(): + with config.ConfigBuilder() as c: + assert json.dumps(c.as_dict()) is not None + + def test_init_basic_prop(): with config.ConfigBuilder(browser_host="foo.bar") as c: assert c.browser_host == "foo.bar" diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/config.py b/testing/web-platform/tests/tools/wptserve/wptserve/config.py index 57368f794d23..e11cae137b9c 100644 --- a/testing/web-platform/tests/tools/wptserve/wptserve/config.py +++ b/testing/web-platform/tests/tools/wptserve/wptserve/config.py @@ -75,7 +75,9 @@ def json_types(obj): return {key: json_types(value) for key, value in iteritems(obj)} if (isinstance(obj, string_types) or isinstance(obj, integer_types) or - isinstance(obj, float)): + isinstance(obj, float) or + isinstance(obj, bool) or + obj is None): return obj if isinstance(obj, list) or hasattr(obj, "__iter__"): return [json_types(value) for value in obj] @@ -126,7 +128,9 @@ class ConfigBuilder(object): "openssl": { "openssl_binary": "openssl", "base_path": "_certs", + "password": "web-platform-tests", "force_regenerate": False, + "duration": 30, "base_conf_path": None }, "pregenerated": { @@ -316,7 +320,7 @@ class ConfigBuilder(object): self._ssl_env.__enter__() if self._ssl_env.ssl_enabled: key_path, cert_path = self._ssl_env.host_cert_path(data["domains_set"]) - ca_cert_path = self._ssl_env.ca_cert_path() + ca_cert_path = self._ssl_env.ca_cert_path(data["domains_set"]) return {"key_path": key_path, "ca_cert_path": ca_cert_path, "cert_path": cert_path, diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/pipes.py b/testing/web-platform/tests/tools/wptserve/wptserve/pipes.py index 92b284c93e3f..d1eb7245abdc 100644 --- a/testing/web-platform/tests/tools/wptserve/wptserve/pipes.py +++ b/testing/web-platform/tests/tools/wptserve/wptserve/pipes.py @@ -345,6 +345,11 @@ def sub(request, response, escape_type="html"): includes the leading '?', but other delimiters are omitted. headers A dictionary of HTTP headers in the request. + header_or_default(header, default) + The value of an HTTP header, or a default value if it is absent. + For example: + + {{header_or_default(X-Test, test-header-absent)}} GET A dictionary of query parameters supplied with the request. uuid() @@ -431,6 +436,10 @@ class SubFunctions(object): raise ValueError("Path outside wpt root") return absolute_path + @staticmethod + def header_or_default(request, name, default): + return request.headers.get(name, default) + def template(request, content, escape_type="html"): #TODO: There basically isn't any error handling here tokenizer = ReplacementTokenizer() diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/base.py b/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/base.py index c95b693f3712..63ef45cc869a 100644 --- a/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/base.py +++ b/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/base.py @@ -13,5 +13,5 @@ class NoSSLEnvironment(object): def host_cert_path(self, hosts): return None, None - def ca_cert_path(self): + def ca_cert_path(self, hosts): return None diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/openssl.py b/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/openssl.py index ebbcf68d716d..db188dad70a8 100644 --- a/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/openssl.py +++ b/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/openssl.py @@ -114,16 +114,18 @@ def make_subject(common_name, return "".join(rv) def make_alt_names(hosts): - rv = [] - for name in hosts: - rv.append("DNS:%s" % name) - return ",".join(rv) + return ",".join("DNS:%s" % host for host in hosts) + +def make_name_constraints(hosts): + return ",".join("permitted;DNS:%s" % host for host in hosts) def get_config(root_dir, hosts, duration=30): if hosts is None: san_line = "" + constraints_line = "" else: san_line = "subjectAltName = %s" % make_alt_names(hosts) + constraints_line = "nameConstraints = " + make_name_constraints(hosts) if os.path.sep == "\\": # This seems to be needed for the Shining Light OpenSSL on @@ -213,9 +215,11 @@ basicConstraints = CA:true subjectKeyIdentifier=hash authorityKeyIdentifier=keyid:always,issuer:always keyUsage = keyCertSign +%(constraints_line)s """ % {"root_dir": root_dir, "san_line": san_line, "duration": duration, + "constraints_line": constraints_line, "sep": os.path.sep.replace("\\", "\\\\")} return rv @@ -287,13 +291,13 @@ class OpenSSLEnvironment(object): return OpenSSL(self.logger, self.binary, self.base_path, conf_path, hosts, self.duration, self.base_conf_path) - def ca_cert_path(self): + def ca_cert_path(self, hosts): """Get the path to the CA certificate file, generating a new one if needed""" if self._ca_cert_path is None and not self.force_regenerate: self._load_ca_cert() if self._ca_cert_path is None: - self._generate_ca() + self._generate_ca(hosts) return self._ca_cert_path def _load_ca_cert(self): @@ -326,7 +330,7 @@ class OpenSSLEnvironment(object): #TODO: check the key actually signed the cert. return True - def _generate_ca(self): + def _generate_ca(self, hosts): path = self.path self.logger.info("Generating new CA in %s" % self.base_path) @@ -334,7 +338,7 @@ class OpenSSLEnvironment(object): req_path = path("careq.pem") cert_path = path("cacert.pem") - with self._config_openssl(None) as openssl: + with self._config_openssl(hosts) as openssl: openssl("req", "-batch", "-new", @@ -391,7 +395,7 @@ class OpenSSLEnvironment(object): def _generate_host_cert(self, hosts): host = hosts[0] if self._ca_key_path is None: - self._generate_ca() + self._generate_ca(hosts) ca_key_path = self._ca_key_path assert os.path.exists(ca_key_path) diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/pregenerated.py b/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/pregenerated.py index fc487df3add0..672a10635ed0 100644 --- a/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/pregenerated.py +++ b/testing/web-platform/tests/tools/wptserve/wptserve/sslutils/pregenerated.py @@ -20,7 +20,7 @@ class PregeneratedSSLEnvironment(object): """Return the key and certificate paths for the host""" return self._host_key_path, self._host_cert_path - def ca_cert_path(self): + def ca_cert_path(self, hosts): """Return the certificate path of the CA that signed the host certificates, or None if that isn't known""" return self._ca_cert_path diff --git a/testing/web-platform/tests/trusted-types/TrustedTypePolicy-createXXX.tentative.html b/testing/web-platform/tests/trusted-types/TrustedTypePolicy-createXXX.tentative.html index 6a0151ad9bcf..475a26479048 100644 --- a/testing/web-platform/tests/trusted-types/TrustedTypePolicy-createXXX.tentative.html +++ b/testing/web-platform/tests/trusted-types/TrustedTypePolicy-createXXX.tentative.html @@ -36,7 +36,7 @@ assert_equals(el.title, INPUTS.URL); el.title = policy.createURL(INPUTS.HTML); - assert_equals(el.title, ""); + assert_equals(el.title, INPUTS.HTML); }, "Attributes without type constraints will work as before."); test(t => { @@ -71,14 +71,14 @@ const urlTestCases = [ [ s => s, INPUTS.SCRIPTURL ], - [ s => null, "" ], + [ s => null, "null" ], [ s => s + "#duck", INPUTS.SCRIPTURL + "#duck" ], [ s => { throw new Error() }, new Error() ], [ s => s + "#" + aGlobalVarForSideEffectTesting, INPUTS.SCRIPTURL + "#global" ], [ anotherGlobalFunction.bind(aGlobalObject), INPUTS.SCRIPTURL + "#well," ], [ s => anotherGlobalFunction(s), - INPUTS.SCRIPTURL + "#a%20global%20var%20named%20foo" ], + INPUTS.SCRIPTURL + "#a global var named foo" ], ]; function policyBuilder(trustedMethodName, trustedType, defaultArg) { diff --git a/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-createPolicy-createXYZTests.tentative.html b/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-createPolicy-createXYZTests.tentative.html index a162d84cd820..37e245ee27aa 100644 --- a/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-createPolicy-createXYZTests.tentative.html +++ b/testing/web-platform/tests/trusted-types/TrustedTypePolicyFactory-createPolicy-createXYZTests.tentative.html @@ -165,7 +165,7 @@ }, "script_url = identity function"); test(t => { - createScriptURLTest('TestPolicyScriptURL2', { createScriptURL: s => null }, "", t); + createScriptURLTest('TestPolicyScriptURL2', { createScriptURL: s => null }, "null", t); }, "script_url = null"); var scriptURLstr = '#duck'; @@ -240,7 +240,7 @@ }, "url = identity function"); test(t => { - createURLTest('TestPolicyURL2', { createURL: s => null }, "", t); + createURLTest('TestPolicyURL2', { createURL: s => null }, "null", t); }, "url = null"); var URLstr = '#x'; diff --git a/testing/web-platform/tests/trusted-types/WorkerGlobalScope-importScripts.https.html b/testing/web-platform/tests/trusted-types/WorkerGlobalScope-importScripts.https.html deleted file mode 100644 index 30dea82077c5..000000000000 --- a/testing/web-platform/tests/trusted-types/WorkerGlobalScope-importScripts.https.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - -
    - - - diff --git a/testing/web-platform/tests/trusted-types/WorkerGlobalScope-importScripts.https.js b/testing/web-platform/tests/trusted-types/WorkerGlobalScope-importScripts.https.js deleted file mode 100644 index 4e491b9fe601..000000000000 --- a/testing/web-platform/tests/trusted-types/WorkerGlobalScope-importScripts.https.js +++ /dev/null @@ -1,70 +0,0 @@ - -let test_setup_policy = TrustedTypes.createPolicy("hurrayanythinggoes", { - createScriptURL: x => new URL(x, location.href) -}); -importScripts(test_setup_policy.createScriptURL("/resources/testharness.js")); - - -// Determine worker type (for better logging) -let worker_type = "unknown"; -if (this.DedicatedWorkerGlobalScope !== undefined) { - worker_type = "dedicated worker"; -} else if (this.SharedWorkerGlobalScope !== undefined) { - worker_type = "shared worker"; -} else if (this.ServiceWorkerGlobalScope !== undefined) { - worker_type = "service worker"; -} - -const test_policy = TrustedTypes.createPolicy('xxx', { - createScriptURL: url => new URL(url.replace("play", "work"), this.location.href) }); - -test(t => { - self.result = "Fail"; - let trusted_url = test_policy.createScriptURL(new URL("support/player.js", location.href)); - assert_true(TrustedTypes.isScriptURL(trusted_url)); - importScripts(trusted_url); // support/worker.js modifies self.result. - assert_equals(self.result, "Pass"); -}, "importScripts with TrustedScriptURL works in " + worker_type); - -test(t => { - let untrusted_url = "support/player.js"; - assert_throws(new TypeError(), - function() { importScripts(untrusted_url) }, - "importScripts(untrusted_url)"); -}, "importScripts with untrusted URLs throws in " + worker_type); - -test(t => { - assert_throws(new TypeError(), - function() { importScripts(null) }, - "importScripts(null)"); -}, "null is not a trusted script URL throws in " + worker_type); - -test(t => { - self.result = "Fail"; - let trusted_url = test_policy.createScriptURL( - new URL("support/player.js?variant1", location.href)); - let trusted_url2 = test_policy.createScriptURL( - new URL("support/player.js?variant2", location.href)); - importScripts(trusted_url, trusted_url2); - assert_equals(self.result, "Pass"); -}, "importScripts with two URLs, both trusted, in " + worker_type); - -test(t => { - let untrusted_url = "support/player.js?variant1"; - let untrusted_url2 = "support/player.js?variant2"; - assert_throws(new TypeError(), - function() { importScripts(untrusted_url, untrusted_url2) }, - "importScripts(untrusted_url, untrusted_url2)"); -}, "importScripts with two URLs, both strings, in " + worker_type); - -test(t => { - let untrusted_url = "support/player.js"; - let trusted_url = test_policy.createScriptURL( - new URL(untrusted_url, location.href)); - assert_throws(new TypeError(), - function() { importScripts(untrusted_url, trusted_url) }, - "importScripts(untrusted_url, trusted_url)"); -}, "importScripts with two URLs, one trusted, in " + worker_type); - -done(); - diff --git a/testing/web-platform/tests/trusted-types/WorkerGlobalScope-importScripts.https.js.headers b/testing/web-platform/tests/trusted-types/WorkerGlobalScope-importScripts.https.js.headers deleted file mode 100644 index 1bc33add09b4..000000000000 --- a/testing/web-platform/tests/trusted-types/WorkerGlobalScope-importScripts.https.js.headers +++ /dev/null @@ -1 +0,0 @@ -Content-Security-Policy: trusted-types * diff --git a/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttribute.tentative.html b/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttribute.tentative.html index 4d06f014f293..d77d9dab5868 100644 --- a/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttribute.tentative.html +++ b/testing/web-platform/tests/trusted-types/block-string-assignment-to-Element-setAttribute.tentative.html @@ -9,19 +9,22 @@ diff --git a/testing/web-platform/tests/trusted-types/block-string-assignment-to-HTMLElement-generic.tentative.html b/testing/web-platform/tests/trusted-types/block-string-assignment-to-HTMLElement-generic.tentative.html index 5fce3ff59e6e..fe27d45d08a2 100644 --- a/testing/web-platform/tests/trusted-types/block-string-assignment-to-HTMLElement-generic.tentative.html +++ b/testing/web-platform/tests/trusted-types/block-string-assignment-to-HTMLElement-generic.tentative.html @@ -15,14 +15,15 @@ [ 'a', 'href' ], [ 'area', 'href' ], [ 'base', 'href' ], + [ 'button', 'formAction' ], + [ 'form', 'action' ], [ 'frame', 'src' ], [ 'iframe', 'src' ], [ 'img', 'src' ], + [ 'input', 'formAction' ], [ 'input', 'src' ], [ 'link', 'href' ], [ 'video', 'src' ], - [ 'object', 'data' ], - [ 'object', 'codeBase' ], [ 'source', 'src' ], [ 'track', 'src' ] ]; @@ -38,6 +39,8 @@ // TrustedScriptURL Assignments const scriptURLTestCases = [ [ 'embed', 'src' ], + [ 'object', 'codeBase' ], + [ 'object', 'data' ], [ 'script', 'src' ] ]; @@ -71,14 +74,14 @@ URLTestCases.forEach(c => { test(t => { assert_element_accepts_trusted_type(c[0], c[1], INPUTS.URL, RESULTS.URL); - assert_element_accepts_trusted_type(c[0], c[1], null, "" + window.location); + assert_element_accepts_trusted_type(c[0], c[1], null, window.location.toString().replace(/[^\/]*$/, "null")); }, c[0] + "." + c[1] + " accepts string and null after default policy was created"); }); scriptURLTestCases.forEach(c => { test(t => { assert_element_accepts_trusted_type(c[0], c[1], INPUTS.SCRIPTURL, RESULTS.SCRIPTURL); - assert_element_accepts_trusted_type(c[0], c[1], null, "" + window.location); + assert_element_accepts_trusted_type(c[0], c[1], null, window.location.toString().replace(/[^\/]*$/, "null")); }, c[0] + "." + c[1] + " accepts string and null after default policy was created"); }); diff --git a/testing/web-platform/tests/trusted-types/block-string-assignment-to-Window-open.tentative.html b/testing/web-platform/tests/trusted-types/block-string-assignment-to-Window-open.tentative.html index fd30b6edfbaf..c66a16d5c005 100644 --- a/testing/web-platform/tests/trusted-types/block-string-assignment-to-Window-open.tentative.html +++ b/testing/web-platform/tests/trusted-types/block-string-assignment-to-Window-open.tentative.html @@ -15,9 +15,9 @@ let p = createURL_policy(window, nb); let url = p.createURL(INPUTS.URL); let child_window = win.open(url, "", ""); + t.add_cleanup(_ => child_window.close()); child_window.onload = t.step_func_done(_ => { assert_equals(child_window.location.href, "" + url); - child_window.close(); }); } @@ -25,15 +25,14 @@ let p = createURL_policy(window, nb); assert_throws(new TypeError(), _ => { let child_window = win.open(url, "", ""); - child_window.close(); }); } function testWindowDoesntThrow(t, url, expected, win) { let child_window = win.open(url, "", ""); + t.add_cleanup(_ => child_window.close()); child_window.onload = t.step_func_done(_ => { assert_equals(child_window.location.href, expected); - child_window.close(); }); } diff --git a/testing/web-platform/tests/trusted-types/support/helper.sub.js b/testing/web-platform/tests/trusted-types/support/helper.sub.js index bae9d2dc7aa9..36ee24046ed2 100644 --- a/testing/web-platform/tests/trusted-types/support/helper.sub.js +++ b/testing/web-platform/tests/trusted-types/support/helper.sub.js @@ -121,7 +121,9 @@ function assert_element_accepts_trusted_url_explicit_set(win, c, t, tag, attribu function assert_element_accepts_trusted_type_explicit_set(tag, attribute, value, expected) { let elem = document.createElement(tag); elem.setAttribute(attribute, value); - assert_equals(elem[attribute] + "", expected); + if (!/^on/.test(attribute)) { // "on" attributes are converted to functions. + assert_equals(elem[attribute] + "", expected); + } assert_equals(elem.getAttribute(attribute), expected); } diff --git a/testing/web-platform/tests/upgrade-insecure-requests/animation-worklet-import-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/animation-worklet-import-upgrade.https.html new file mode 100644 index 000000000000..38e89eb8bd6e --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/animation-worklet-import-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: animation-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/animation-worklet-redirect-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/animation-worklet-redirect-upgrade.https.html new file mode 100644 index 000000000000..87d0d2aa2a96 --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/animation-worklet-redirect-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: animation-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/animation-worklet-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/animation-worklet-upgrade.https.html new file mode 100644 index 000000000000..8a68b2d94ab1 --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/animation-worklet-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: animation-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/audio-worklet-import-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/audio-worklet-import-upgrade.https.html new file mode 100644 index 000000000000..56d7259647c3 --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/audio-worklet-import-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: audio-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/audio-worklet-redirect-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/audio-worklet-redirect-upgrade.https.html new file mode 100644 index 000000000000..2e1984f60174 --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/audio-worklet-redirect-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: audio-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/audio-worklet-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/audio-worklet-upgrade.https.html new file mode 100644 index 000000000000..91d52adbdd3e --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/audio-worklet-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: audio-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/iframe-redirect-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/iframe-redirect-upgrade.https.html index 9a79825a450e..72047493f173 100644 --- a/testing/web-platform/tests/upgrade-insecure-requests/iframe-redirect-upgrade.https.html +++ b/testing/web-platform/tests/upgrade-insecure-requests/iframe-redirect-upgrade.https.html @@ -1,37 +1,19 @@ -Upgrade Insecure Requests: IFrames. + +Upgrade Insecure Requests: iframe. + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/iframe-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/iframe-upgrade.https.html index 8c4bb370df60..60c5aaaf95e7 100644 --- a/testing/web-platform/tests/upgrade-insecure-requests/iframe-upgrade.https.html +++ b/testing/web-platform/tests/upgrade-insecure-requests/iframe-upgrade.https.html @@ -1,25 +1,19 @@ -Upgrade Insecure Requests: IFrames. + +Upgrade Insecure Requests: iframe. + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/image-redirect-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/image-redirect-upgrade.https.html index 5ed75109dcd8..69c3f1469e7a 100644 --- a/testing/web-platform/tests/upgrade-insecure-requests/image-redirect-upgrade.https.html +++ b/testing/web-platform/tests/upgrade-insecure-requests/image-redirect-upgrade.https.html @@ -1,39 +1,19 @@ -Upgrade Insecure Requests: Redirected Images. + +Upgrade Insecure Requests: image. + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/image-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/image-upgrade.https.html index 515c67469a12..5ab6306ed461 100644 --- a/testing/web-platform/tests/upgrade-insecure-requests/image-upgrade.https.html +++ b/testing/web-platform/tests/upgrade-insecure-requests/image-upgrade.https.html @@ -1,27 +1,19 @@ -Upgrade Insecure Requests: Images. + +Upgrade Insecure Requests: image. + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/layout-worklet-import-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/layout-worklet-import-upgrade.https.html new file mode 100644 index 000000000000..ffc73afc42ab --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/layout-worklet-import-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: layout-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/layout-worklet-redirect-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/layout-worklet-redirect-upgrade.https.html new file mode 100644 index 000000000000..c9c953170011 --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/layout-worklet-redirect-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: layout-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/layout-worklet-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/layout-worklet-upgrade.https.html new file mode 100644 index 000000000000..7cbdff3902c1 --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/layout-worklet-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: layout-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/module-worker-import-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/module-worker-import-upgrade.https.html new file mode 100644 index 000000000000..0522051ebd49 --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/module-worker-import-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: module-worker. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/module-worker-redirect-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/module-worker-redirect-upgrade.https.html new file mode 100644 index 000000000000..132663e3652b --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/module-worker-redirect-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: module-worker. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/module-worker-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/module-worker-upgrade.https.html new file mode 100644 index 000000000000..a4be5ed45a9d --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/module-worker-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: module-worker. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/paint-worklet-import-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/paint-worklet-import-upgrade.https.html new file mode 100644 index 000000000000..96d68e260bbc --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/paint-worklet-import-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: paint-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/paint-worklet-redirect-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/paint-worklet-redirect-upgrade.https.html new file mode 100644 index 000000000000..0675c6ab0cbe --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/paint-worklet-redirect-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: paint-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/paint-worklet-upgrade.https.html b/testing/web-platform/tests/upgrade-insecure-requests/paint-worklet-upgrade.https.html new file mode 100644 index 000000000000..b4f1aac04dea --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/paint-worklet-upgrade.https.html @@ -0,0 +1,19 @@ + + + + +Upgrade Insecure Requests: paint-worklet. + + + + + + + + + + + diff --git a/testing/web-platform/tests/upgrade-insecure-requests/support/generate.py b/testing/web-platform/tests/upgrade-insecure-requests/support/generate.py new file mode 100644 index 000000000000..2676d0c68dea --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/support/generate.py @@ -0,0 +1,48 @@ +# Usage: execute +# $ python support/generate.py +# at wpt/upgrade-insecure-requests/. +# +# Note: Some tests (link-upgrade.sub.https.html and +# websocket-upgrade.https.html) are not covered by this generator script. + +template = ''' + + + +Upgrade Insecure Requests: %(name)s. + + + + + + + + + + + +''' + +# resourceType is |ResourceType| in testharness-helper.sub.js. +for name, resourceType in [ + ('image', 'IMAGE'), ('iframe', 'FRAME'), + ('animation-worklet', 'WORKLET'), ('audio-worklet', 'WORKLET'), + ('layout-worklet', 'WORKLET'), ('paint-worklet', 'WORKLET'), + ('worker', 'WORKER'), + ('module-worker', 'WORKER'), + ('worker-subresource-xhr', 'IMAGE'), + ('worker-subresource-fetch', 'IMAGE')]: + sameOriginOnly = 'true' if resourceType == 'WORKER' else 'false' + types = [('', 'generateTests'), ('-redirect', 'generateRedirectTests')] + if name == 'module-worker' or resourceType == 'WORKLET': + types.append(('-import', 'generateModuleImportTests')) + for typeName, generatorName in types: + with open('%s%s-upgrade.https.html' % (name, typeName), 'w') as html_file: + html_file.write(template % { + 'name': name, + 'resourceType': resourceType, + 'generatorName': generatorName, + 'sameOriginOnly': sameOriginOnly}) diff --git a/testing/web-platform/tests/upgrade-insecure-requests/support/pass.png.headers b/testing/web-platform/tests/upgrade-insecure-requests/support/pass.png.headers new file mode 100644 index 000000000000..cb762eff8068 --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/support/pass.png.headers @@ -0,0 +1 @@ +Access-Control-Allow-Origin: * diff --git a/testing/web-platform/tests/upgrade-insecure-requests/support/redirect-cors.py b/testing/web-platform/tests/upgrade-insecure-requests/support/redirect-cors.py new file mode 100644 index 000000000000..56493e0056f9 --- /dev/null +++ b/testing/web-platform/tests/upgrade-insecure-requests/support/redirect-cors.py @@ -0,0 +1,5 @@ +def main(request, response): + response.status = 302 + location = request.GET.first("location") + response.headers.set("Location", location) + response.headers.set("Access-Control-Allow-Origin", "*") diff --git a/testing/web-platform/tests/upgrade-insecure-requests/support/testharness-helper.sub.js b/testing/web-platform/tests/upgrade-insecure-requests/support/testharness-helper.sub.js index 383506a14371..8b58eb956042 100644 --- a/testing/web-platform/tests/upgrade-insecure-requests/support/testharness-helper.sub.js +++ b/testing/web-platform/tests/upgrade-insecure-requests/support/testharness-helper.sub.js @@ -11,6 +11,8 @@ const Protocol = { const ResourceType = { IMAGE: "image", FRAME: "frame", + WORKER: "worker", + WORKLET: "worklet", WEBSOCKET: "websocket", }; @@ -31,6 +33,10 @@ function generateURL(host, protocol, resourceType) { url.port = {{ports[wss][0]}}; url.protocol = protocol == Protocol.INSECURE ? "ws" : "wss"; url.pathname = "echo"; + } else if (resourceType == ResourceType.WORKER) { + url.pathname += "worker.js"; + } else if (resourceType == ResourceType.WORKLET) { + url.pathname = "/worklets/resources/empty-worklet-script-with-cors-header.js"; } return { name: protocol + "/" + host + " " + resourceType, @@ -38,16 +44,66 @@ function generateURL(host, protocol, resourceType) { }; } -function generateRedirect(host, protocol, target) { - var url = "http://{{host}}:{{ports[https][0]}}/common/redirect.py?location=" + encodeURIComponent(target.url); +function generateRedirect(host, protocol, finalTest) { + var url = new URL("http://{{host}}:{{ports[https][0]}}/upgrade-insecure-requests/support/redirect-cors.py?location=" + encodeURIComponent(finalTest.url)); url.protocol = protocol == Protocol.INSECURE ? "http" : "https"; url.hostname = host == Host.SAME_ORIGIN ? "{{host}}" : "{{domains[天気の良い日]}}"; return { - name: protocol + "/" + host + " => " + target.name, + name: protocol + "/" + host + " => " + finalTest.name, url: url.toString() }; } +function generateDataImport(finalTest) { + return { + name: "data: =(import)=> " + finalTest.name, + url: workerUrlThatImports(finalTest.url) + }; +} + +function generateTests(target, sameOriginOnly) { + var tests = []; + + tests.push(generateURL(Host.SAME_ORIGIN, Protocol.SECURE, target)); + tests.push(generateURL(Host.SAME_ORIGIN, Protocol.INSECURE, target)); + if (!sameOriginOnly) { + tests.push(generateURL(Host.CROSS_ORIGIN, Protocol.SECURE, target)); + tests.push(generateURL(Host.CROSS_ORIGIN, Protocol.INSECURE, target)); + } + + return tests; +} + +function generateRedirectTests(target, sameOriginOnly) { + const finalTests = generateTests(target, sameOriginOnly); + var tests = []; + + for (const finalTest of finalTests) { + tests.push(generateRedirect(Host.SAME_ORIGIN, Protocol.SECURE, finalTest)); + tests.push(generateRedirect(Host.SAME_ORIGIN, Protocol.INSECURE, finalTest)); + if (!sameOriginOnly) { + tests.push(generateRedirect(Host.CROSS_ORIGIN, Protocol.SECURE, finalTest)); + tests.push(generateRedirect(Host.CROSS_ORIGIN, Protocol.INSECURE, finalTest)); + } + } + return tests; +} + +function generateModuleImportTests(target, sameOriginOnly) { + // |sameOriginOnly| is ignored as the top-level URL (generateDataImport()) + // is always same-origin (as it is data: URL) and import()ed URLs (URLs in + // finalTests) can be cross-origin. + + var finalTests = generateTests(target, false); + finalTests = finalTests.concat(generateRedirectTests(target, false)); + + var tests = []; + for (const finalTest of finalTests) { + tests.push(generateDataImport(finalTest)); + } + return tests; +} + function assert_image_loads(test, url, height, width) { var i = document.createElement('img'); i.onload = test.step_func_done(_ => { @@ -113,3 +169,42 @@ function assert_websocket_loads(test, url) { }); w.onclose = test.unreached_func("WebSocket should not close before open is called."); } + +const testMap = { + "image": test => { + async_test(t => assert_image_loads(t, test.url, 64, 168), test.name); + async_test(t => assert_image_loads_in_srcdoc(t, test.url, 64, 168), test.name + " in