mirror of
https://github.com/Feodor2/Mypal68.git
synced 2025-06-18 14:55:44 -04:00
68.13.9 - testing
This commit is contained in:
parent
36910f9058
commit
8ed7e5e7f4
@ -23,6 +23,7 @@ skip-if = os != 'win'
|
||||
[TestEnumTypeTraits]
|
||||
[TestFastBernoulliTrial]
|
||||
[TestFloatingPoint]
|
||||
[TestFunctionRef]
|
||||
[TestFunctionTypeTraits]
|
||||
[TestIntegerPrintfMacros]
|
||||
[TestIntegerRange]
|
||||
|
@ -22,7 +22,7 @@ regex = "1.0"
|
||||
serde = "1.0"
|
||||
serde_json = "1.0"
|
||||
serde_derive = "1.0"
|
||||
uuid = { version = "0.7", features = ["v4"] }
|
||||
uuid = { version = "0.8", features = ["v4"] }
|
||||
webdriver = { path = "../webdriver" }
|
||||
zip = "0.4"
|
||||
|
||||
|
@ -172,7 +172,7 @@ if not on_rtd:
|
||||
# html_show_sphinx = True
|
||||
|
||||
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
|
||||
# html_show_copyright = True
|
||||
html_show_copyright = False
|
||||
|
||||
# If true, an OpenSearch description file will be output, and all pages will
|
||||
# contain a <link> tag referring to it. The value of this option must be the
|
||||
|
@ -9,12 +9,7 @@
|
||||
<title>Marionette tests for AccessibleCaret in selection mode (iframe)</title>
|
||||
</head>
|
||||
<body>
|
||||
<style>
|
||||
*
|
||||
{
|
||||
-moz-user-select:none;
|
||||
}
|
||||
</style>
|
||||
<iframe id="frame" src="test_carets_longtext.html" style="width: 10em; height: 8em;"></iframe>
|
||||
<input id="input" value="ABC DEF GHI">
|
||||
</body>
|
||||
</html>
|
||||
|
@ -9,16 +9,10 @@
|
||||
<title>Bug 1019441: Marionette tests for AccessibleCaret (multiple lines)</title>
|
||||
</head>
|
||||
<body>
|
||||
<style>
|
||||
*
|
||||
{
|
||||
-moz-user-select:none;
|
||||
}
|
||||
</style>
|
||||
<div><textarea id="textarea2" style="width: 10em; height: 6em; overflow: auto;">First Line Second Line Third Line</textarea></div>
|
||||
<br>
|
||||
<div style="width: 10em; height: 6em; overflow: auto; -moz-user-select:text" id="contenteditable2" contenteditable="true">First Line<br><br>Second Line<br><br>Third Line</div>
|
||||
<div style="width: 10em; height: 6em; overflow: auto;" id="contenteditable2" contenteditable="true">First Line<br><br>Second Line<br><br>Third Line</div>
|
||||
<br>
|
||||
<div style="width: 10em; height: 6em; overflow: auto; -moz-user-select:text" id="content2">First Line<br><br>Second Line<br><br>Third Line</div>
|
||||
<div style="width: 10em; height: 6em; overflow: auto;" id="content2">First Line<br><br>Second Line<br><br>Third Line</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -179,7 +179,7 @@ html_static_path = ['_static']
|
||||
# html_show_sphinx = True
|
||||
|
||||
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
|
||||
# html_show_copyright = True
|
||||
html_show_copyright = False
|
||||
|
||||
# If true, an OpenSearch description file will be output, and all pages will
|
||||
# contain a <link> tag referring to it. The value of this option must be the
|
||||
|
@ -261,7 +261,7 @@ function sendDragEvent(aEvent, aTarget, aWindow = window) {
|
||||
}
|
||||
|
||||
var utils = _getDOMWindowUtils(aWindow);
|
||||
return utils.dispatchDOMEventViaPresShell(aTarget, event);
|
||||
return utils.dispatchDOMEventViaPresShellForTesting(aTarget, event);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -2207,18 +2207,23 @@ function createDragEventObject(aType, aDestElement, aDestWindow, aDataTransfer,
|
||||
}
|
||||
|
||||
// Wrap only in plain mochitests
|
||||
let dataTransfer = _EU_maybeUnwrap(_EU_maybeWrap(aDataTransfer).mozCloneForEvent(aType));
|
||||
let dataTransfer;
|
||||
if (aDataTransfer) {
|
||||
dataTransfer = _EU_maybeUnwrap(
|
||||
_EU_maybeWrap(aDataTransfer).mozCloneForEvent(aType)
|
||||
);
|
||||
|
||||
// Copy over the drop effect. This isn't copied over by Clone, as it uses more
|
||||
// complex logic in the actual implementation (see
|
||||
// nsContentUtils::SetDataTransferInEvent for actual impl).
|
||||
dataTransfer.dropEffect = aDataTransfer.dropEffect;
|
||||
// Copy over the drop effect. This isn't copied over by Clone, as it uses
|
||||
// more complex logic in the actual implementation (see
|
||||
// nsContentUtils::SetDataTransferInEvent for actual impl).
|
||||
dataTransfer.dropEffect = aDataTransfer.dropEffect;
|
||||
}
|
||||
|
||||
return Object.assign({
|
||||
type: aType,
|
||||
screenX: destScreenX, screenY: destScreenY,
|
||||
clientX: destClientX, clientY: destClientY,
|
||||
dataTransfer: dataTransfer,
|
||||
dataTransfer,
|
||||
_domDispatchOnly: aDragEvent._domDispatchOnly,
|
||||
}, aDragEvent);
|
||||
}
|
||||
@ -2374,7 +2379,24 @@ function synthesizeDrop(aSrcElement, aDestElement, aDragData, aDropEffect, aWind
|
||||
var ds = _EU_Cc["@mozilla.org/widget/dragservice;1"]
|
||||
.getService(_EU_Ci.nsIDragService);
|
||||
|
||||
ds.startDragSession();
|
||||
let dropAction;
|
||||
switch (aDropEffect) {
|
||||
case null:
|
||||
case undefined:
|
||||
case "move":
|
||||
dropAction = _EU_Ci.nsIDragService.DRAGDROP_ACTION_MOVE;
|
||||
break;
|
||||
case "copy":
|
||||
dropAction = _EU_Ci.nsIDragService.DRAGDROP_ACTION_COPY;
|
||||
break;
|
||||
case "link":
|
||||
dropAction = _EU_Ci.nsIDragService.DRAGDROP_ACTION_LINK;
|
||||
break;
|
||||
default:
|
||||
throw new Error(`${aDropEffect} is an invalid drop effect value`);
|
||||
}
|
||||
|
||||
ds.startDragSessionForTests(dropAction);
|
||||
|
||||
try {
|
||||
var [result, dataTransfer] = synthesizeDragOver(aSrcElement, aDestElement,
|
||||
@ -2393,14 +2415,23 @@ function synthesizeDrop(aSrcElement, aDestElement, aDragData, aDropEffect, aWind
|
||||
* and firing events dragenter, dragover, drop, and dragend.
|
||||
* This does not modify dataTransfer and tries to emulate the plain drag and
|
||||
* drop as much as possible, compared to synthesizeDrop.
|
||||
* Note that if synthesized dragstart is canceled, this throws an exception
|
||||
* because in such case, Gecko does not start drag session.
|
||||
*
|
||||
* @param aParams
|
||||
* {
|
||||
* srcElement: The element to start dragging
|
||||
* dragEvent: The DnD events will be generated with modifiers
|
||||
* specified with this.
|
||||
* srcElement: The element to start dragging. If srcSelection is
|
||||
* set, this is computed for element at focus node.
|
||||
* srcSelection: The selection to start to drag, set null if
|
||||
* srcElement is set.
|
||||
* destElement: The element to drop on. Pass null to emulate
|
||||
* a drop on an invalid target.
|
||||
* srcX: The initial x coordinate inside srcElement
|
||||
* srcY: The initial y coordinate inside srcElement
|
||||
* srcX: The initial x coordinate inside srcElement or
|
||||
* ignored if srcSelection is set.
|
||||
* srcY: The initial y coordinate inside srcElement or
|
||||
* ignored if srcSelection is set.
|
||||
* stepX: The x-axis step for mousemove inside srcElement
|
||||
* stepY: The y-axis step for mousemove inside srcElement
|
||||
* finalX: The final x coordinate inside srcElement
|
||||
@ -2409,12 +2440,16 @@ function synthesizeDrop(aSrcElement, aDestElement, aDragData, aDropEffect, aWind
|
||||
* defaults to the current window object
|
||||
* destWindow: The window for dispatching event on destElement,
|
||||
* defaults to the current window object
|
||||
* expectCancelDragStart: Set to true if the test cancels "dragstart"
|
||||
* logFunc: Set function which takes one argument if you need
|
||||
* to log rect of target. E.g., `console.log`.
|
||||
* }
|
||||
*/
|
||||
async function synthesizePlainDragAndDrop(aParams)
|
||||
{
|
||||
async function synthesizePlainDragAndDrop(aParams) {
|
||||
let {
|
||||
dragEvent = {},
|
||||
srcElement,
|
||||
srcSelection,
|
||||
destElement,
|
||||
srcX = 2,
|
||||
srcY = 2,
|
||||
@ -2424,72 +2459,348 @@ async function synthesizePlainDragAndDrop(aParams)
|
||||
finalY = srcY + stepY * 2,
|
||||
srcWindow = window,
|
||||
destWindow = window,
|
||||
expectCancelDragStart = false,
|
||||
logFunc,
|
||||
} = aParams;
|
||||
// Don't modify given dragEvent object because we modify dragEvent below and
|
||||
// callers may use the object multiple times so that callers must not assume
|
||||
// that it'll be modified.
|
||||
if (aParams.dragEvent !== undefined) {
|
||||
dragEvent = Object.assign({}, aParams.dragEvent);
|
||||
}
|
||||
|
||||
const ds = _EU_Cc["@mozilla.org/widget/dragservice;1"]
|
||||
.getService(_EU_Ci.nsIDragService);
|
||||
ds.startDragSession();
|
||||
function rectToString(aRect) {
|
||||
return `left: ${aRect.left}, top: ${aRect.top}, right: ${
|
||||
aRect.right
|
||||
}, bottom: ${aRect.bottom}`;
|
||||
}
|
||||
|
||||
if (logFunc) {
|
||||
logFunc("synthesizePlainDragAndDrop() -- START");
|
||||
}
|
||||
|
||||
if (srcSelection) {
|
||||
srcElement = srcSelection.focusNode;
|
||||
while (_EU_maybeWrap(srcElement).isNativeAnonymous) {
|
||||
srcElement = _EU_maybeUnwrap(
|
||||
_EU_maybeWrap(srcElement).flattenedTreeParentNode
|
||||
);
|
||||
}
|
||||
if (srcElement.nodeType !== Node.NODE_TYPE_ELEMENT) {
|
||||
srcElement = srcElement.parentElement;
|
||||
}
|
||||
let srcElementRect = srcElement.getBoundingClientRect();
|
||||
if (logFunc) {
|
||||
logFunc(
|
||||
`srcElement.getBoundingClientRect(): ${rectToString(srcElementRect)}`
|
||||
);
|
||||
}
|
||||
// Use last selection client rect because nsIDragSession.sourceNode is
|
||||
// initialized from focus node which is usually in last rect.
|
||||
let selectionRectList = srcSelection.getRangeAt(0).getClientRects();
|
||||
let lastSelectionRect = selectionRectList[selectionRectList.length - 1];
|
||||
if (logFunc) {
|
||||
logFunc(
|
||||
`srcSelection.getRangeAt(0).getClientRects()[${selectionRectList.length -
|
||||
1}]: ${rectToString(lastSelectionRect)}`
|
||||
);
|
||||
}
|
||||
// Click at center of last selection rect.
|
||||
srcX = Math.floor(
|
||||
lastSelectionRect.left + lastSelectionRect.width / 2
|
||||
);
|
||||
srcY = Math.floor(
|
||||
lastSelectionRect.top + lastSelectionRect.height / 2
|
||||
);
|
||||
// Then, adjust srcX and srcY for making them offset relative to
|
||||
// srcElementRect because they will be used when we call synthesizeMouse()
|
||||
// with srcElement.
|
||||
srcX = Math.floor(
|
||||
srcX - srcElementRect.left
|
||||
);
|
||||
srcY = Math.floor(
|
||||
srcY - srcElementRect.top
|
||||
);
|
||||
// Finally, recalculate finalX and finalY with new srcX and srcY if they
|
||||
// are not specified by the caller.
|
||||
if (aParams.finalX === undefined) {
|
||||
finalX = srcX + stepX * 2;
|
||||
}
|
||||
if (aParams.finalY === undefined) {
|
||||
finalY = srcY + stepY * 2;
|
||||
}
|
||||
} else if (logFunc) {
|
||||
logFunc(
|
||||
`srcElement.getBoundingClientRect(): ${rectToString(
|
||||
srcElement.getBoundingClientRect()
|
||||
)}`
|
||||
);
|
||||
}
|
||||
|
||||
const ds = _EU_Cc["@mozilla.org/widget/dragservice;1"].getService(
|
||||
_EU_Ci.nsIDragService
|
||||
);
|
||||
|
||||
try {
|
||||
let dataTransfer = null;
|
||||
function trapDrag(aEvent) {
|
||||
dataTransfer = aEvent.dataTransfer;
|
||||
}
|
||||
srcElement.addEventListener("dragstart", trapDrag, true);
|
||||
_getDOMWindowUtils().disableNonTestMouseEvents(true);
|
||||
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
|
||||
synthesizeMouse(srcElement, srcX, srcY, { type: "mousedown" }, srcWindow);
|
||||
if (logFunc) {
|
||||
logFunc(`mousedown at ${srcX}, ${srcY}`);
|
||||
}
|
||||
|
||||
// Wait for the next event tick after each event dispatch, so that UI elements
|
||||
// (e.g. menu) work like the real user input.
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
let dragStartEvent;
|
||||
function onDragStart(aEvent) {
|
||||
dragStartEvent = aEvent;
|
||||
if (logFunc) {
|
||||
logFunc(`"${aEvent.type}" event is fired`);
|
||||
}
|
||||
if (!srcElement.contains(aEvent.target)) {
|
||||
// If srcX and srcY does not point in one of rects in srcElement,
|
||||
// "dragstart" target is not in srcElement. Such case must not
|
||||
// be expected by this API users so that we should throw an exception
|
||||
// for making debug easier.
|
||||
throw new Error(
|
||||
'event target of "dragstart" is not srcElement nor its descendant'
|
||||
);
|
||||
}
|
||||
}
|
||||
let dragEnterEvent;
|
||||
function onDragEnterGenerated(aEvent) {
|
||||
dragEnterEvent = aEvent;
|
||||
}
|
||||
srcWindow.addEventListener("dragstart", onDragStart, { capture: true });
|
||||
srcWindow.addEventListener("dragenter", onDragEnterGenerated, {
|
||||
capture: true,
|
||||
});
|
||||
try {
|
||||
// Wait for the next event tick after each event dispatch, so that UI
|
||||
// elements (e.g. menu) work like the real user input.
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
|
||||
srcX += stepX; srcY += stepY;
|
||||
synthesizeMouse(srcElement, srcX, srcY, { type: "mousemove" }, srcWindow);
|
||||
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
|
||||
srcX += stepX; srcY += stepY;
|
||||
synthesizeMouse(srcElement, srcX, srcY, { type: "mousemove" }, srcWindow);
|
||||
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
|
||||
srcElement.removeEventListener("dragstart", trapDrag, true);
|
||||
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
|
||||
let event;
|
||||
if (destElement) {
|
||||
// dragover and drop are only fired to a valid drop target. If the
|
||||
// destElement parameter is null, this function is being used to
|
||||
// simulate a drag'n'drop over an invalid drop target.
|
||||
event = createDragEventObject("dragover", destElement, destWindow,
|
||||
dataTransfer, {});
|
||||
sendDragEvent(event, destElement, destWindow);
|
||||
srcX += stepX;
|
||||
srcY += stepY;
|
||||
synthesizeMouse(srcElement, srcX, srcY, { type: "mousemove" }, srcWindow);
|
||||
if (logFunc) {
|
||||
logFunc(`first mousemove at ${srcX}, ${srcY}`);
|
||||
}
|
||||
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
|
||||
event = createDragEventObject("drop", destElement, destWindow,
|
||||
dataTransfer, {});
|
||||
sendDragEvent(event, destElement, destWindow);
|
||||
srcX += stepX;
|
||||
srcY += stepY;
|
||||
synthesizeMouse(srcElement, srcX, srcY, { type: "mousemove" }, srcWindow);
|
||||
if (logFunc) {
|
||||
logFunc(`second mousemove at ${srcX}, ${srcY}`);
|
||||
}
|
||||
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
|
||||
if (!dragStartEvent) {
|
||||
throw new Error('"dragstart" event is not fired');
|
||||
}
|
||||
} finally {
|
||||
srcWindow.removeEventListener("dragstart", onDragStart, {
|
||||
capture: true,
|
||||
});
|
||||
srcWindow.removeEventListener("dragenter", onDragEnterGenerated, {
|
||||
capture: true,
|
||||
});
|
||||
}
|
||||
|
||||
// dragend is fired, by definition, on the srcElement
|
||||
event = createDragEventObject("dragend", srcElement, srcWindow,
|
||||
dataTransfer, {clientX: finalX, clientY: finalY});
|
||||
sendDragEvent(event, srcElement, srcWindow);
|
||||
let session = ds.getCurrentSession();
|
||||
if (!session) {
|
||||
if (expectCancelDragStart) {
|
||||
synthesizeMouse(srcElement, srcX, srcY, { type: "mouseup" }, srcWindow);
|
||||
return;
|
||||
}
|
||||
throw new Error("drag hasn't been started by the operation");
|
||||
} else if (expectCancelDragStart) {
|
||||
throw new Error("drag has been started by the operation");
|
||||
}
|
||||
|
||||
if (destElement) {
|
||||
if (
|
||||
(srcElement != destElement && !dragEnterEvent) ||
|
||||
destElement != dragEnterEvent.target
|
||||
) {
|
||||
if (logFunc) {
|
||||
logFunc(
|
||||
`destElement.getBoundingClientRect(): ${rectToString(
|
||||
destElement.getBoundingClientRect()
|
||||
)}`
|
||||
);
|
||||
}
|
||||
|
||||
function onDragEnter(aEvent) {
|
||||
dragEnterEvent = aEvent;
|
||||
if (logFunc) {
|
||||
logFunc(`"${aEvent.type}" event is fired`);
|
||||
}
|
||||
if (aEvent.target != destElement) {
|
||||
throw new Error('event target of "dragenter" is not destElement');
|
||||
}
|
||||
}
|
||||
destWindow.addEventListener("dragenter", onDragEnter, {
|
||||
capture: true,
|
||||
});
|
||||
try {
|
||||
let event = createDragEventObject(
|
||||
"dragenter",
|
||||
destElement,
|
||||
destWindow,
|
||||
null,
|
||||
dragEvent
|
||||
);
|
||||
sendDragEvent(event, destElement, destWindow);
|
||||
if (!dragEnterEvent && !destElement.disabled) {
|
||||
throw new Error('"dragenter" event is not fired');
|
||||
}
|
||||
if (dragEnterEvent && destElement.disabled) {
|
||||
throw new Error(
|
||||
'"dragenter" event should not be fired on disable element'
|
||||
);
|
||||
}
|
||||
} finally {
|
||||
destWindow.removeEventListener("dragenter", onDragEnter, {
|
||||
capture: true,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
let dragOverEvent;
|
||||
function onDragOver(aEvent) {
|
||||
dragOverEvent = aEvent;
|
||||
if (logFunc) {
|
||||
logFunc(`"${aEvent.type}" event is fired`);
|
||||
}
|
||||
if (aEvent.target != destElement) {
|
||||
throw new Error('event target of "dragover" is not destElement');
|
||||
}
|
||||
}
|
||||
destWindow.addEventListener("dragover", onDragOver, { capture: true });
|
||||
try {
|
||||
// dragover and drop are only fired to a valid drop target. If the
|
||||
// destElement parameter is null, this function is being used to
|
||||
// simulate a drag'n'drop over an invalid drop target.
|
||||
let event = createDragEventObject(
|
||||
"dragover",
|
||||
destElement,
|
||||
destWindow,
|
||||
null,
|
||||
dragEvent
|
||||
);
|
||||
sendDragEvent(event, destElement, destWindow);
|
||||
if (!dragOverEvent && !destElement.disabled) {
|
||||
throw new Error('"dragover" event is not fired');
|
||||
}
|
||||
if (dragEnterEvent && destElement.disabled) {
|
||||
throw new Error(
|
||||
'"dragover" event should not be fired on disable element'
|
||||
);
|
||||
}
|
||||
} finally {
|
||||
destWindow.removeEventListener("dragover", onDragOver, {
|
||||
capture: true,
|
||||
});
|
||||
}
|
||||
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
|
||||
// If there is not accept to drop the data, "drop" event shouldn't be
|
||||
// fired.
|
||||
// XXX nsIDragSession.canDrop is different only on Linux. It must be
|
||||
// a bug of gtk/nsDragService since it manages `mCanDrop` by itself.
|
||||
// Thus, we should use nsIDragSession.dragAction instead.
|
||||
if (session.dragAction != _EU_Ci.nsIDragService.DRAGDROP_ACTION_NONE) {
|
||||
let dropEvent;
|
||||
function onDrop(aEvent) {
|
||||
dropEvent = aEvent;
|
||||
if (logFunc) {
|
||||
logFunc(`"${aEvent.type}" event is fired`);
|
||||
}
|
||||
if (!destElement.contains(aEvent.target)) {
|
||||
throw new Error(
|
||||
'event target of "drop" is not destElement nor its descendant'
|
||||
);
|
||||
}
|
||||
}
|
||||
destWindow.addEventListener("drop", onDrop, { capture: true });
|
||||
try {
|
||||
let event = createDragEventObject(
|
||||
"drop",
|
||||
destElement,
|
||||
destWindow,
|
||||
null,
|
||||
dragEvent
|
||||
);
|
||||
sendDragEvent(event, destElement, destWindow);
|
||||
if (!dropEvent && session.canDrop) {
|
||||
throw new Error('"drop" event is not fired');
|
||||
}
|
||||
} finally {
|
||||
destWindow.removeEventListener("drop", onDrop, { capture: true });
|
||||
}
|
||||
return;
|
||||
};
|
||||
}
|
||||
|
||||
// Since we don't synthesize drop event, we need to set drag end point
|
||||
// explicitly for "dragEnd" event which will be fired by
|
||||
// endDragSession().
|
||||
dragEvent.clientX = finalX;
|
||||
dragEvent.clientY = finalY;
|
||||
let event = createDragEventObject(
|
||||
"dragend",
|
||||
destElement || srcElement,
|
||||
destElement ? srcWindow : destWindow,
|
||||
null,
|
||||
dragEvent
|
||||
);
|
||||
session.setDragEndPointForTests(event.screenX, event.screenY);
|
||||
} finally {
|
||||
await new Promise(r => setTimeout(r, 0));
|
||||
|
||||
} finally {
|
||||
ds.endDragSession(true, 0);
|
||||
if (ds.getCurrentSession()) {
|
||||
let dragEndEvent;
|
||||
function onDragEnd(aEvent) {
|
||||
dragEndEvent = aEvent;
|
||||
if (logFunc) {
|
||||
logFunc(`"${aEvent.type}" event is fired`);
|
||||
}
|
||||
if (!srcElement.contains(aEvent.target)) {
|
||||
throw new Error(
|
||||
'event target of "dragend" is not srcElement not its descendant'
|
||||
);
|
||||
}
|
||||
}
|
||||
srcWindow.addEventListener("dragend", onDragEnd, { capture: true });
|
||||
try {
|
||||
ds.endDragSession(true, _parseModifiers(dragEvent));
|
||||
if (!dragEndEvent) {
|
||||
// eslint-disable-next-line no-unsafe-finally
|
||||
throw new Error(
|
||||
'"dragend" event is not fired by nsIDragService.endDragSession()'
|
||||
);
|
||||
}
|
||||
} finally {
|
||||
srcWindow.removeEventListener("dragend", onDragEnd, { capture: true });
|
||||
}
|
||||
}
|
||||
_getDOMWindowUtils().disableNonTestMouseEvents(false);
|
||||
if (logFunc) {
|
||||
logFunc("synthesizePlainDragAndDrop() -- END");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var PluginUtils =
|
||||
{
|
||||
withTestPlugin : function(callback)
|
||||
{
|
||||
var ph = _EU_Cc["@mozilla.org/plugin/host;1"]
|
||||
.getService(_EU_Ci.nsIPluginHost);
|
||||
var PluginUtils = {
|
||||
withTestPlugin: function(callback) {
|
||||
var ph = _EU_Cc["@mozilla.org/plugin/host;1"].getService(
|
||||
_EU_Ci.nsIPluginHost
|
||||
);
|
||||
var tags = ph.getPluginTags();
|
||||
|
||||
// Find the test plugin
|
||||
|
@ -171,7 +171,7 @@ html_static_path = ['_static']
|
||||
# html_show_sphinx = True
|
||||
|
||||
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
|
||||
# html_show_copyright = True
|
||||
html_show_copyright = False
|
||||
|
||||
# If true, an OpenSearch description file will be output, and all pages will
|
||||
# contain a <link> tag referring to it. The value of this option must be the
|
||||
|
@ -42,11 +42,3 @@ want to do then dive in!
|
||||
servingcontent
|
||||
loggingreporting
|
||||
devicemanagement
|
||||
|
||||
Indices and tables
|
||||
==================
|
||||
|
||||
* :ref:`genindex`
|
||||
* :ref:`modindex`
|
||||
* :ref:`search`
|
||||
|
||||
|
@ -121,11 +121,13 @@ def read_ini(fp, variables=None, default='DEFAULT', defaults_only=False,
|
||||
value = value.strip()
|
||||
key_indent = line_indent
|
||||
|
||||
# make sure this key isn't already in the section
|
||||
if key and current_section is not variables:
|
||||
assert key not in current_section
|
||||
|
||||
if strict:
|
||||
# make sure this key isn't already in the section or empty
|
||||
# make sure this key isn't empty
|
||||
assert key
|
||||
if current_section is not variables:
|
||||
assert key not in current_section
|
||||
|
||||
current_section[key] = value
|
||||
break
|
||||
@ -133,13 +135,6 @@ def read_ini(fp, variables=None, default='DEFAULT', defaults_only=False,
|
||||
# something bad happened!
|
||||
raise IniParseError(fp, linenum, "Unexpected line '{}'".format(stripped))
|
||||
|
||||
# server-root is a special os path declared relative to the manifest file.
|
||||
# inheritance demands we expand it as absolute
|
||||
if 'server-root' in variables:
|
||||
root = os.path.join(os.path.dirname(fp.name),
|
||||
variables['server-root'])
|
||||
variables['server-root'] = os.path.abspath(root)
|
||||
|
||||
# return the default section only if requested
|
||||
if defaults_only:
|
||||
return [(default, variables)]
|
||||
|
@ -1,5 +0,0 @@
|
||||
[DEFAULT]
|
||||
server-root = ../root
|
||||
other-root = ../root
|
||||
|
||||
[test_1]
|
@ -1,3 +0,0 @@
|
||||
[parent:../level_1_server-root.ini]
|
||||
|
||||
[test_2]
|
@ -1,3 +0,0 @@
|
||||
[parent:../level_2_server-root.ini]
|
||||
|
||||
[test_3]
|
@ -342,26 +342,6 @@ yellow = submarine
|
||||
self.assertEqual(parser.get('name', disabled='NO'),
|
||||
['testSecond.js'])
|
||||
|
||||
def test_server_root(self):
|
||||
"""
|
||||
Test server_root properly expands as an absolute path
|
||||
"""
|
||||
server_example = os.path.join(here, 'parent', 'level_1', 'level_2',
|
||||
'level_3', 'level_3_server-root.ini')
|
||||
parser = ManifestParser(manifests=(server_example,))
|
||||
|
||||
# A regular variable will inherit its value directly
|
||||
self.assertEqual(parser.get('name', **{'other-root': '../root'}),
|
||||
['test_3'])
|
||||
|
||||
# server-root will expand its value as an absolute path
|
||||
# we will not find anything for the original value
|
||||
self.assertEqual(parser.get('name', **{'server-root': '../root'}), [])
|
||||
|
||||
# check that the path has expanded
|
||||
self.assertEqual(parser.get('server-root')[0],
|
||||
os.path.join(here, 'parent', 'root'))
|
||||
|
||||
def test_copy(self):
|
||||
"""Test our ability to copy a set of manifests"""
|
||||
|
||||
|
@ -21,11 +21,11 @@ import mozunit
|
||||
|
||||
class IniParserTest(unittest.TestCase):
|
||||
|
||||
def parse_manifest(self, string):
|
||||
def parse_manifest(self, string, **kwargs):
|
||||
buf = StringIO()
|
||||
buf.write(string)
|
||||
buf.seek(0)
|
||||
return read_ini(buf)
|
||||
return read_ini(buf, **kwargs)
|
||||
|
||||
def test_inline_comments(self):
|
||||
result = self.parse_manifest("""
|
||||
@ -59,6 +59,18 @@ birds=nope
|
||||
self.assertEqual(result[1][1]['dogs'].split(), ['yep', 'yep'])
|
||||
self.assertEqual(result[1][1]['birds'].split(), ['nope', 'fish=nope'])
|
||||
|
||||
def test_dupes_error(self):
|
||||
dupes = """
|
||||
[test_dupes.py]
|
||||
foo = bar
|
||||
foo = baz
|
||||
"""
|
||||
with self.assertRaises(AssertionError):
|
||||
self.parse_manifest(dupes, strict=True)
|
||||
|
||||
with self.assertRaises(AssertionError):
|
||||
self.parse_manifest(dupes, strict=False)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
mozunit.main()
|
||||
|
@ -171,7 +171,7 @@ html_static_path = ['_static']
|
||||
#html_show_sphinx = True
|
||||
|
||||
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
|
||||
#html_show_copyright = True
|
||||
html_show_copyright = False
|
||||
|
||||
# If true, an OpenSearch description file will be output, and all pages will
|
||||
# contain a <link> tag referring to it. The value of this option must be the
|
||||
|
@ -151,3 +151,5 @@ htmlhelp_basename = 'Pastedoc'
|
||||
|
||||
# If false, no module index is generated.
|
||||
#latex_use_modindex = True
|
||||
|
||||
html_show_copyright = False
|
||||
|
@ -150,13 +150,13 @@ class DesktopUnittestOutputParser(OutputParser):
|
||||
self.known_fail_count = int(summary_match_list[-1])
|
||||
self.log(message, log_level)
|
||||
return # skip harness check and base parse_single_line
|
||||
harness_match = self.harness_error_re.match(line)
|
||||
harness_match = self.harness_error_re.search(line)
|
||||
if harness_match:
|
||||
self.warning(' %s' % line)
|
||||
self.worst_log_level = self.worst_level(WARNING, self.worst_log_level)
|
||||
self.tbpl_status = self.worst_level(TBPL_WARNING, self.tbpl_status,
|
||||
levels=TBPL_WORST_LEVEL_TUPLE)
|
||||
full_harness_match = self.full_harness_error_re.match(line)
|
||||
full_harness_match = self.full_harness_error_re.search(line)
|
||||
if full_harness_match:
|
||||
r = full_harness_match.group(1)
|
||||
if r == "application crashed":
|
||||
|
@ -54,5 +54,7 @@ user_pref("media.autoplay.enabled.user-gestures-needed", true);
|
||||
user_pref("media.autoplay.ask-permission", false);
|
||||
user_pref("media.autoplay.block-webaudio", false);
|
||||
user_pref("media.allowed-to-play.enabled", true);
|
||||
// Ensure media can always play without delay
|
||||
user_pref("media.block-autoplay-until-in-foreground", false);
|
||||
user_pref("toolkit.telemetry.coverage.endpoint.base", "http://localhost");
|
||||
user_pref("layout.css.moz-binding.content.enabled", true); // Le sad
|
||||
|
@ -8,8 +8,6 @@
|
||||
/* globals user_pref */
|
||||
// Enable w3c touch events for testing
|
||||
user_pref("dom.w3c_touch_events.enabled", 1);
|
||||
// Enable CSS 'contain' for testing
|
||||
user_pref("layout.css.contain.enabled", true);
|
||||
// Enable CSS Grid 'subgrid' feature for testing
|
||||
user_pref("layout.css.grid-template-subgrid-value.enabled", true);
|
||||
// Enable CSS initial-letter for testing
|
||||
|
@ -117,7 +117,6 @@ SpecialPowersObserverAPI.prototype = {
|
||||
aSubject = aSubject.QueryInterface(Ci.nsIPropertyBag2);
|
||||
if (aTopic == "plugin-crashed") {
|
||||
addDumpIDToMessage("pluginDumpID");
|
||||
addDumpIDToMessage("browserDumpID");
|
||||
|
||||
let pluginID = aSubject.getPropertyAsAString("pluginDumpID");
|
||||
let extra = this._getExtraData(pluginID);
|
||||
|
@ -2484,8 +2484,23 @@ SpecialPowersAPI.prototype = {
|
||||
});
|
||||
},
|
||||
|
||||
doCommand(window, cmd) {
|
||||
return this._getDocShell(window).doCommand(cmd);
|
||||
doCommand(window, cmd, param) {
|
||||
switch (cmd) {
|
||||
case "cmd_align":
|
||||
case "cmd_backgroundColor":
|
||||
case "cmd_fontColor":
|
||||
case "cmd_fontFace":
|
||||
case "cmd_fontSize":
|
||||
case "cmd_highlight":
|
||||
case "cmd_insertImageNoUI":
|
||||
case "cmd_insertLinkNoUI":
|
||||
case "cmd_paragraphState":
|
||||
let params = Cu.createCommandParams();
|
||||
params.setStringValue("state_attribute", param);
|
||||
return this._getDocShell(window).doCommandWithParams(cmd, params);
|
||||
default:
|
||||
return this._getDocShell(window).doCommand(cmd);
|
||||
}
|
||||
},
|
||||
|
||||
isCommandEnabled(window, cmd) {
|
||||
|
@ -1,4 +0,0 @@
|
||||
[2d.text.measure.actualBoundingBox.html]
|
||||
[Testing actualBoundingBox]
|
||||
expected: FAIL
|
||||
|
@ -1,4 +1,5 @@
|
||||
[2d.text.draw.baseline.hanging.html]
|
||||
[Canvas test: 2d.text.draw.baseline.hanging]
|
||||
expected: FAIL
|
||||
expected:
|
||||
if os == "android": FAIL
|
||||
|
||||
|
@ -1,7 +0,0 @@
|
||||
[crypto-subtle-non-secure-context-not-available.sub.html]
|
||||
[Non-secure context window does not have access to crypto.subtle]
|
||||
expected: FAIL
|
||||
|
||||
[Non-secure context worker does not have access to crypto.subtle]
|
||||
expected: FAIL
|
||||
|
@ -1,4 +0,0 @@
|
||||
[webkit-text-fill-color-property-002.html]
|
||||
expected:
|
||||
if (os == "android") and not e10s: FAIL
|
||||
if (os == "android") and e10s: FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-applies-to-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-applies-to-002.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-applies-to-003.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-applies-to-004.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-applies-to-005.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-applies-to-007.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-applies-to-013.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-applies-to-014.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-color-applies-to-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-color-applies-to-002.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-color-applies-to-003.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-color-applies-to-004.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-color-applies-to-005.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-color-applies-to-007.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-color-applies-to-013.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-color-applies-to-014.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-image-applies-to-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-image-applies-to-002.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-image-applies-to-003.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-image-applies-to-004.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-image-applies-to-005.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-image-applies-to-007.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-image-applies-to-013.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-image-applies-to-014.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-position-applies-to-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-position-applies-to-002.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-position-applies-to-003.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-position-applies-to-005.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-position-applies-to-006.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-position-applies-to-007.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-position-applies-to-013.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-position-applies-to-014.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-repeat-applies-to-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-repeat-applies-to-002.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-repeat-applies-to-003.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-repeat-applies-to-005.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-repeat-applies-to-013.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[background-repeat-applies-to-014.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-applies-to-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-applies-to-002.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-applies-to-003.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-applies-to-005.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-applies-to-013.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-applies-to-014.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-color-applies-to-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-color-applies-to-002.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-color-applies-to-003.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-color-applies-to-005.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-color-applies-to-013.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[border-color-applies-to-014.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[root-canvas-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,4 +1,3 @@
|
||||
[floats-142.xht]
|
||||
expected:
|
||||
if (os == "win"): FAIL
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
||||
|
@ -1,4 +1,3 @@
|
||||
[floats-143.xht]
|
||||
expected:
|
||||
if (os == "win"): FAIL
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
||||
|
@ -1,3 +0,0 @@
|
||||
[floats-147.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[fonts-012.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,4 +1,3 @@
|
||||
[empty-inline-003.xht]
|
||||
expected:
|
||||
if os == "win": FAIL
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
||||
|
@ -1,3 +0,0 @@
|
||||
[margin-collapse-039.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -14,6 +14,5 @@
|
||||
if not debug and not webrender and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): 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 not debug and webrender and e10s and (os == "win") and (version == "10.0.17134") and (processor == "x86_64") and (bits == 64): PASS
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS
|
||||
if (os == "mac") and (version == "OS X 10.14") and (processor == "x86_64") and (bits == 64): PASS
|
||||
if (os == "win") and (processor == "aarch64"): PASS
|
||||
|
@ -1,3 +0,0 @@
|
||||
[max-height-applies-to-005.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[max-height-applies-to-006.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[max-height-applies-to-013.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[max-height-applies-to-014.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[max-width-applies-to-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[max-width-applies-to-002.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[max-width-applies-to-003.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[max-width-applies-to-004.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[width-applies-to-001.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[width-applies-to-002.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[width-applies-to-003.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[width-applies-to-004.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,2 +0,0 @@
|
||||
[width-applies-to-006.xht]
|
||||
expected: FAIL
|
@ -1,3 +0,0 @@
|
||||
[width-applies-to-007.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[width-applies-to-013.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
@ -1,3 +0,0 @@
|
||||
[width-applies-to-014.xht]
|
||||
expected:
|
||||
if (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user