| <!DOCTYPE html> | |
| <!-- Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | |
| for details. All rights reserved. Use of this source code is governed by a | |
| BSD-style license that can be found in the LICENSE file. --> | |
| <html> | |
| <head> | |
| <meta charset="utf-8"> | |
| <title>dart:js test</title> | |
| </head> | |
| <body> | |
| See console for test results... | |
| <script> | |
| var x = 42; | |
| var _x = 123; | |
| var myArray = ["value1"]; | |
| var foreignDoc = (function(){ | |
| var doc = document.implementation.createDocument("", "root", null); | |
| var element = doc.createElement('element'); | |
| element.setAttribute('id', 'abc'); | |
| doc.documentElement.appendChild(element); | |
| return doc; | |
| })(); | |
| function razzle() { | |
| return x; | |
| } | |
| function returnThis() { | |
| return this; | |
| } | |
| function getTypeOf(o) { | |
| return typeof(o); | |
| } | |
| function varArgs() { | |
| var args = arguments; | |
| var sum = 0; | |
| for (var i = 0; i < args.length; ++i) { | |
| sum += args[i]; | |
| } | |
| return sum; | |
| } | |
| function Foo(a) { | |
| this.a = a; | |
| } | |
| Foo.b = 38; | |
| Foo.prototype.bar = function() { | |
| return this.a; | |
| }; | |
| Foo.prototype.toString = function() { | |
| return "I'm a Foo a=" + this.a; | |
| }; | |
| var container = new Object(); | |
| container.Foo = Foo; | |
| function isArray(a) { | |
| return a instanceof Array; | |
| } | |
| function checkMap(m, key, value) { | |
| if (m.hasOwnProperty(key)) | |
| return m[key] == value; | |
| else | |
| return false; | |
| } | |
| function invokeCallback() { | |
| return callback(); | |
| } | |
| function invokeCallbackWith11params() { | |
| return callbackWith11params(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11); | |
| } | |
| function returnElement(element) { | |
| return element; | |
| } | |
| function getElementAttribute(element, attr) { | |
| return element.getAttribute(attr); | |
| } | |
| function addClassAttributes(list) { | |
| var result = ""; | |
| for (var i=0; i < list.length; i++) { | |
| result += list[i].getAttribute("class"); | |
| } | |
| return result; | |
| } | |
| function getNewDate() { | |
| return new Date(1995, 11, 17); | |
| } | |
| function getNewDivElement() { | |
| return document.createElement("div"); | |
| } | |
| function getNewEvent() { | |
| return new CustomEvent('test'); | |
| } | |
| function getNewBlob() { | |
| var fileParts = ['<a id="a"><b id="b">hey!</b></a>']; | |
| return new Blob(fileParts, {type : 'text/html'}); | |
| } | |
| function getNewIDBKeyRange() { | |
| return IDBKeyRange.only(1); | |
| } | |
| function getNewImageData() { | |
| var canvas = document.createElement('canvas'); | |
| var context = canvas.getContext('2d'); | |
| return context.createImageData(1, 1); | |
| } | |
| function getNewInt32Array() { | |
| return new Int32Array([1, 2, 3, 4, 5, 6, 7, 8]); | |
| } | |
| function getNewArrayBuffer() { | |
| return new ArrayBuffer(8); | |
| } | |
| function isPropertyInstanceOf(property, type) { | |
| return window[property] instanceof type; | |
| } | |
| function testJsMap(callback) { | |
| var result = callback(); | |
| return result['value']; | |
| } | |
| function addTestProperty(o) { | |
| o.testProperty = "test"; | |
| } | |
| function fireClickEvent(w) { | |
| var event = w.document.createEvent('Events'); | |
| event.initEvent('click', true, false); | |
| w.document.dispatchEvent(event); | |
| } | |
| function Bar() { | |
| return "ret_value"; | |
| } | |
| Bar.foo = "property_value"; | |
| function Baz(p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11) { | |
| this.f1 = p1; | |
| this.f2 = p2; | |
| this.f3 = p3; | |
| this.f4 = p4; | |
| this.f5 = p5; | |
| this.f6 = p6; | |
| this.f7 = p7; | |
| this.f8 = p8; | |
| this.f9 = p9; | |
| this.f10 = p10; | |
| this.f11 = p11; | |
| } | |
| function Liar(){} | |
| Liar.prototype.toString = function() { | |
| return 1; | |
| }; | |
| function identical(o1, o2) { | |
| return o1 === o2; | |
| } | |
| var someProto = { role: "proto" }; | |
| var someObject = Object.create(someProto); | |
| someObject.role = "object"; | |
| </script> | |
| <script type="application/dart" src="js_test.dart"></script> | |
| </body> | |
| </html> |