| <head> |
| <link rel="stylesheet" href="../fast/js/resources/js-test-style.css"> |
| <script src="../fast/js/resources/js-test-pre.js"></script> |
| </head> |
| <body> |
| <p id="description"></p> |
| <div id="console"></div> |
| <script> |
| function main() |
| { |
| if (!window.layoutTestController) { |
| debug("This test can only run from within DumpRenderTree because it requires TestNetscapePlugin.\n"); |
| return; |
| } |
| |
| layoutTestController.waitUntilDone(); |
| } |
| main(); |
| |
| function testNPInvoke() |
| { |
| argumentsLength = arguments.length; |
| |
| shouldBe("argumentsLength", "7"); |
| |
| undefinedArgument = arguments[0]; |
| shouldBe("typeof(undefinedArgument)", "'undefined'") |
| |
| nullArgument = arguments[1]; |
| shouldBe("typeof(nullArgument)", "'object'") |
| shouldBe("nullArgument", "null"); |
| |
| booleanArgument = arguments[2]; |
| shouldBe("typeof(booleanArgument)", "'boolean'"); |
| shouldBe("booleanArgument", "true"); |
| |
| intArgument = arguments[3]; |
| shouldBe("typeof(intArgument)", "'number'"); |
| shouldBe("intArgument", "242"); |
| |
| doubleArgument = arguments[4]; |
| shouldBe("typeof(doubleArgument)", "'number'"); |
| shouldBe("doubleArgument", "242.242"); |
| |
| stringArgument = arguments[5]; |
| shouldBe("typeof(stringArgument)", "'string'"); |
| shouldBe("stringArgument", "'Hello, World'"); |
| |
| objectArgument = arguments[6]; |
| shouldBe("typeof(objectArgument)", "'object'"); |
| |
| shouldBeTrue("successfullyParsed"); |
| debug('<br><span class="pass">TEST COMPLETE</span>'); |
| |
| layoutTestController.notifyDone(); |
| } |
| |
| </script> |
| <embed id="plugin" |
| type="application/x-webkit-test-netscape" |
| style="width:0; height:0" |
| testnpruntime="1"> |
| </embed> |
| |
| <script> |
| description("Tests that the NPRuntime implementation works as expected"); |
| |
| |
| successfullyParsed = true; |
| </script> |