| <!DOCTYPE html> | |
| <html> | |
| <body> | |
| <script src="../../resources/js-test-pre.js"></script> | |
| <input type="number" id="testNumber" value="0"> | |
| <table id="testTable"> | |
| <thead id="testTableSection"> | |
| <tr></tr> | |
| </thead> | |
| <tr id="testRow"> | |
| <td id="testCell"></td | |
| </tr> | |
| </table> | |
| <canvas id="testCanvas" width="100" height="100"> | |
| <script> | |
| description("Checks the behavior of passing undefined for optional parameters that have default values"); | |
| debug("* HTMLInputElement.stepUp(optional long n = 1)"); | |
| var testNumber = document.getElementById("testNumber"); | |
| shouldBeEqualToString("testNumber.value", "0"); | |
| evalAndLog("testNumber.stepUp()"); | |
| shouldBeEqualToString("testNumber.value", "1"); | |
| evalAndLog("testNumber.stepUp(undefined)"); | |
| shouldBeEqualToString("testNumber.value", "2"); | |
| debug(""); | |
| debug("* HTMLInputElement.stepDown(optional long n = 1)"); | |
| evalAndLog("testNumber.stepDown()"); | |
| shouldBeEqualToString("testNumber.value", "1"); | |
| evalAndLog("testNumber.stepDown(undefined)"); | |
| shouldBeEqualToString("testNumber.value", "0"); | |
| debug(""); | |
| debug("* HTMLTableElement.insertRow(optional long index = -1)"); | |
| // Should append the row if index is missing or undefined. | |
| var testTable = document.getElementById("testTable"); | |
| var newRow1; | |
| evalAndLog("newRow1 = testTable.insertRow()"); | |
| shouldBe("testTable.rows[testTable.rows.length - 1]", "newRow1"); | |
| var newRow2 | |
| evalAndLog("newRow2 = testTable.insertRow(undefined)"); | |
| shouldBe("testTable.rows[testTable.rows.length - 1]", "newRow2"); | |
| debug(""); | |
| debug("* HTMLTableRowElement.insertCell(optional long index = -1)"); | |
| // Should append the cell if index is missing or undefined. | |
| var testRow = document.getElementById("testRow"); | |
| var newCell1; | |
| evalAndLog("newCell1 = testRow.insertCell()"); | |
| shouldBe("testRow.cells[testRow.cells.length - 1]", "newCell1"); | |
| var newCell2; | |
| evalAndLog("newCell2 = testRow.insertCell(undefined)"); | |
| shouldBe("testRow.cells[testRow.cells.length - 1]", "newCell2"); | |
| debug(""); | |
| debug("* HTMLTableSectionElement.insertRow(optional long index = -1)"); | |
| // Should append the row if index is missing or undefined. | |
| var testTableSection = document.getElementById("testTableSection"); | |
| var newRow3; | |
| evalAndLog("newRow3 = testTableSection.insertRow()"); | |
| shouldBe("testTable.rows[testTableSection.rows.length - 1]", "newRow3"); | |
| var newRow4; | |
| evalAndLog("newRow4 = testTableSection.insertRow(undefined)"); | |
| shouldBe("testTable.rows[testTableSection.rows.length - 1]", "newRow4"); | |
| debug(""); | |
| debug("* CanvasRenderingContext2D.fill(optional CanvasWindingRule winding = 'nonzero')"); | |
| var ctx = document.getElementById("testCanvas").getContext("2d"); | |
| ctx.rect(0, 0, 150, 100); | |
| ctx.fillStyle = "red"; | |
| shouldNotThrow("ctx.fill(undefined)"); | |
| debug(""); | |
| debug("* CanvasRenderingContext2D.fill(Path2D path, optional CanvasWindingRule winding = 'nonzero')"); | |
| var path = new Path2D(); | |
| shouldNotThrow("ctx.fill(path, undefined)"); | |
| debug(""); | |
| debug("* CanvasRenderingContext2D.clip(optional CanvasWindingRule winding = 'nonzero')"); | |
| shouldNotThrow("ctx.clip(undefined)"); | |
| debug(""); | |
| debug("* CanvasRenderingContext2D.clip(Path2D path, optional CanvasWindingRule winding = 'nonzero')"); | |
| shouldNotThrow("ctx.clip(path, undefined)"); | |
| debug(""); | |
| </script> | |
| <script src="../../resources/js-test-post.js"></script> | |
| </body> | |
| </html> |