Index: sky/tests/events/custom-event.sky |
diff --git a/sky/tests/events/custom-event.sky b/sky/tests/events/custom-event.sky |
new file mode 100644 |
index 0000000000000000000000000000000000000000..4a86eb2831aa5fd0733fe1ebbf607b16f9686d90 |
--- /dev/null |
+++ b/sky/tests/events/custom-event.sky |
@@ -0,0 +1,35 @@ |
+<script> |
+import "../resources/third_party/unittest/unittest.dart"; |
+import "../resources/unit.dart"; |
+ |
+import "dart:sky"; |
+ |
+class MyEvent extends Event { |
+ MyEvent() : super("awesome", bubbles: true); |
+ |
+ bool get isCustom => true; |
+} |
+ |
+void main() { |
+ initUnit(); |
+ |
+ test("should be able to dispatch", () { |
+ var event = new MyEvent(); |
+ expect(event.isCustom, isTrue); |
+ expect(event.type, equals("awesome")); |
+ expect(event.bubbles, isTrue); |
+ expect(event.cancelable, isFalse); |
+ expect(event.isCustom, isTrue); |
+ |
+ bool gotEvent = false; |
+ var element = document.createElement("div"); |
+ element.addEventListener("awesome", (e) { |
+ expect(e, equals(event)); |
+ expect(event.isCustom, isTrue); |
+ gotEvent = true; |
+ }); |
+ element.dispatchEvent(event); |
+ expect(gotEvent, isTrue); |
+ }); |
+} |
+</script> |