Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(156)

Unified Diff: LayoutTests/fast/events/constructors/clipboard-event-constructor.html

Issue 1178683007: Introducing ClipboardEvent Constructor Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/fast/events/constructors/clipboard-event-constructor.html
diff --git a/LayoutTests/fast/events/constructors/clipboard-event-constructor.html b/LayoutTests/fast/events/constructors/clipboard-event-constructor.html
new file mode 100644
index 0000000000000000000000000000000000000000..56c3b06db7b650e6629a8c03c5f354f1b8875983
--- /dev/null
+++ b/LayoutTests/fast/events/constructors/clipboard-event-constructor.html
@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<script src="../../../resources/js-test.js"></script>
+<body>
+<script>
+description("This tests the constructor for the ClipboardEvent DOM class.");
+
+//No Initializer is passed
+shouldBe("new ClipboardEvent('eventType').bubbles", "false");
+shouldBe("new ClipboardEvent('eventType').cancelable", "false");
+
+// bubbles is passed.
+shouldBe("new ClipboardEvent('eventType', { bubbles: false }).bubbles", "false");
+shouldBe("new ClipboardEvent('eventType', { bubbles: true }).bubbles", "true");
+
+// cancelable is passed.
+shouldBe("new ClipboardEvent('eventType', { cancelable: false }).cancelable", "false");
+shouldBe("new ClipboardEvent('eventType', { cancelable: true }).cancelable", "true");
+
+//text data is passed
+shouldBeEqualToString("new ClipboardEvent('cut', { data: 'hellodata', dataType: 'text' }).clipboardData.getData('text')", "hellodata");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: 'hellodata', dataType: 'text' }).clipboardData.getData('text')", "hellodata");
+shouldBeEqualToString("new ClipboardEvent('paste', { data: 'hellodata', dataType: 'text' }).clipboardData.getData('text')", "hellodata");
+
+//url data is passed
+shouldBeEqualToString("new ClipboardEvent('cut', { data: 'http://www.google.com/', dataType: 'url' }).clipboardData.getData('url')", "http://www.google.com/");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: 'http://www.google.com/', dataType: 'url' }).clipboardData.getData('url')", "http://www.google.com/");
+shouldBeEqualToString("new ClipboardEvent('paste', { data: 'http://www.google.com/', dataType: 'url' }).clipboardData.getData('url')", "http://www.google.com/");
+
+//html data is passed
+shouldBeEqualToString("new ClipboardEvent('cut', { data: '<em>Markup</em>', dataType: 'html' }).clipboardData.getData('html')", "<em>Markup</em>");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: '<em>Markup</em>', dataType: 'html' }).clipboardData.getData('html')", "<em>Markup</em>");
+shouldBeEqualToString("new ClipboardEvent('paste', { data: '<em>Markup</em>', dataType: 'html' }).clipboardData.getData('html')", "<em>Markup</em>");
+
+//no dataType is passed
+shouldBeEqualToString("new ClipboardEvent('copy', { data: '<em>Markup</em>'}).clipboardData.getData('html')", "");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: '<em>Markup</em>'}).clipboardData.getData('html')", "");
+
+// Non-strings.
+shouldBeEqualToString("new ClipboardEvent('copy', { data: undefined, dataType: 'text' }).clipboardData.getData('text')", "");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: null, dataType: 'text' }).clipboardData.getData('text')", "null");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: false, dataType: 'text' }).clipboardData.getData('text')", "false");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: true, dataType: 'text' }).clipboardData.getData('text')", "true");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: 12345, dataType: 'text' }).clipboardData.getData('text')", "12345");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: 18446744073709551615, dataType: 'text' }).clipboardData.getData('text')", "18446744073709552000");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: NaN, dataType: 'text' }).clipboardData.getData('text')", "NaN");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: [], dataType: 'text' }).clipboardData.getData('text')", "");
+shouldBeEqualToString("new ClipboardEvent('copy', { data: [1, 2, 3], dataType: 'text' }).clipboardData.getData('text')", "1,2,3");
+
+// All initializers are passed.
+shouldBe("new ClipboardEvent('eventType', { bubbles: true, cancelable: true, data: 'http://www.google.com/', dataType: 'url' }).bubbles", "true");
+shouldBe("new ClipboardEvent('eventType', { bubbles: true, cancelable: true, data: 'http://www.google.com/', dataType: 'url' }).cancelable", "true");
+shouldBeEqualToString("new ClipboardEvent('copy', { bubbles: true, cancelable: true, data: 'http://www.google.com/', dataType: 'url' }).clipboardData.getData('url')", "http://www.google.com/");
+
+//invalid eventType
+shouldBeEqualToString("new ClipboardEvent('invalid', { bubbles: true, cancelable: true, data: 'http://www.google.com/', dataType: 'url' }).clipboardData.getData('url')", "");
+//no eventType specified
+shouldBeEqualToString("new ClipboardEvent({ bubbles: true, cancelable: true, data: 'http://www.google.com/', dataType: 'url' }).clipboardData.getData('url')", "");
+</script>
+</body>

Powered by Google App Engine
This is Rietveld 408576698