aboutsummaryrefslogtreecommitdiff
path: root/contexts/data/lib/closure-library/closure/goog/demos/editor/helloworlddialogplugin_test.html
diff options
context:
space:
mode:
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/demos/editor/helloworlddialogplugin_test.html')
-rw-r--r--contexts/data/lib/closure-library/closure/goog/demos/editor/helloworlddialogplugin_test.html198
1 files changed, 0 insertions, 198 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/demos/editor/helloworlddialogplugin_test.html b/contexts/data/lib/closure-library/closure/goog/demos/editor/helloworlddialogplugin_test.html
deleted file mode 100644
index 3bcb29c..0000000
--- a/contexts/data/lib/closure-library/closure/goog/demos/editor/helloworlddialogplugin_test.html
+++ /dev/null
@@ -1,198 +0,0 @@
-<!DOCTYPE html>
-<!--
-
--->
-<html>
-<!--
-Copyright 2008 The Closure Library Authors. All Rights Reserved.
-
-Use of this source code is governed by the Apache License, Version 2.0.
-See the COPYING file for details.
--->
-<head>
-<meta http-equiv="X-UA-Compatible" content="IE=edge">
-<title>Closure Unit Tests - goog.demos.editor.HelloWorldDialogPlugin</title>
-<script src="../../base.js"></script>
-<script src="deps.js"></script>
-<script>
- goog.require('goog.demos.editor.HelloWorldDialog');
- goog.require('goog.demos.editor.HelloWorldDialog.OkEvent');
- goog.require('goog.demos.editor.HelloWorldDialogPlugin');
- goog.require('goog.demos.editor.HelloWorldDialogPlugin.Command');
- goog.require('goog.dom');
- goog.require('goog.dom.NodeType');
- goog.require('goog.testing.ExpectedFailures');
- goog.require('goog.testing.MockControl');
- goog.require('goog.testing.MockRange');
- goog.require('goog.testing.PropertyReplacer');
- goog.require('goog.testing.editor.FieldMock');
- goog.require('goog.testing.editor.TestHelper');
- goog.require('goog.testing.editor.dom');
- goog.require('goog.testing.events');
- goog.require('goog.testing.jsunit');
- goog.require('goog.testing.mockmatchers.ArgumentMatcher');
- goog.require('goog.userAgent');
-</script>
-<link rel="stylesheet" href="../css/dialog.css"/>
-</head>
-<body>
-
-<div id="myField"></div>
-
-<script>
-
- var plugin;
- var mockCtrl;
- var mockField;
- var mockRange;
- var mockPlaceCursorNextTo;
- var stubs = new goog.testing.PropertyReplacer();
-
- var fieldObj;
-
- var CUSTOM_MESSAGE = 'Hello, cruel world...';
-
- var expectedFailures = new goog.testing.ExpectedFailures();
-
-
- function setUp() {
- mockCtrl = new goog.testing.MockControl();
-
- mockRange = new goog.testing.MockRange();
- mockCtrl.addMock(mockRange);
-
- mockField =
- new goog.testing.editor.FieldMock(undefined, undefined, mockRange);
- mockCtrl.addMock(mockField);
-
- mockPlaceCursorNextTo = mockCtrl.createFunctionMock('placeCursorNextTo');
- }
-
- function tearDown() {
- plugin.dispose();
- tearDownRealEditableField();
- expectedFailures.handleTearDown();
- stubs.reset();
- goog.dom.getElement('myField').innerHTML = '';
- }
-
- /**
- * Tests that the plugin's dialog is properly created.
- */
- function testCreateDialog() {
- mockField.$replay();
-
- plugin = new goog.demos.editor.HelloWorldDialogPlugin();
- plugin.registerFieldObject(mockField);
-
- var dialog = plugin.createDialog(goog.dom.getDomHelper());
- assertTrue('Dialog should be of type goog.demos.editor.HelloWorldDialog',
- dialog instanceof goog.demos.editor.HelloWorldDialog);
-
- mockField.$verify();
- }
-
- /**
- * Tests that when the OK event fires the editable field is properly updated.
- */
- function testOk() {
- mockField.focus();
- mockField.dispatchBeforeChange();
- mockRange.removeContents();
- // Tests that an argument is a span with the custom message.
- var createdNodeMatcher = new goog.testing.mockmatchers.ArgumentMatcher(
- function(arg) {
- return arg.nodeType == goog.dom.NodeType.ELEMENT &&
- arg.tagName == goog.dom.TagName.SPAN &&
- goog.dom.getRawTextContent(arg) == CUSTOM_MESSAGE;
- });
- mockRange.insertNode(createdNodeMatcher, false);
- mockRange.$does(function(node, before) {
- return node;
- });
- mockPlaceCursorNextTo(createdNodeMatcher, false);
- stubs.set(goog.editor.range, 'placeCursorNextTo', mockPlaceCursorNextTo);
- mockField.dispatchSelectionChangeEvent();
- mockField.dispatchChange();
- mockCtrl.$replayAll();
-
- plugin = new goog.demos.editor.HelloWorldDialogPlugin();
- plugin.registerFieldObject(mockField);
- var dialog = plugin.createDialog(goog.dom.getDomHelper());
-
- // Mock of execCommand + clicking OK without actually opening the dialog.
- dialog.dispatchEvent(
- new goog.demos.editor.HelloWorldDialog.OkEvent(CUSTOM_MESSAGE));
-
- mockCtrl.$verifyAll();
- }
-
- /**
- * Setup a real editable field (instead of a mock) and register the plugin to
- * it.
- */
- function setUpRealEditableField() {
- fieldObj = new goog.editor.Field('myField', document);
- fieldObj.makeEditable();
- // Register the plugin to that field.
- plugin = new goog.demos.editor.HelloWorldDialogPlugin();
- fieldObj.registerPlugin(plugin);
- }
-
- /**
- * Tear down the real editable field.
- */
- function tearDownRealEditableField() {
- if (fieldObj) {
- fieldObj.makeUneditable();
- fieldObj.dispose();
- }
- }
-
- /**
- * Tests that the selection is cleared when the dialog opens and is
- * correctly restored after ok is clicked.
- */
- function testRestoreSelectionOnOk() {
- setUpRealEditableField();
-
- fieldObj.setHtml(false, '12345');
- var elem = fieldObj.getElement();
- var helper = new goog.testing.editor.TestHelper(elem);
- helper.select('12345', 1, '12345', 4); // Selects '234'.
-
- assertEquals('Incorrect text selected before dialog is opened',
- '234',
- fieldObj.getRange().getText());
- plugin.execCommand(
- goog.demos.editor.HelloWorldDialogPlugin.Command.HELLO_WORLD_DIALOG);
-
- // TODO(user): IE returns some bogus range when field doesn't have
- // selection. Remove the expectedFailure when robbyw fixes the issue.
- // NOTE(user): You can't remove the selection from a field in Opera without
- // blurring it.
- elem.parentNode.blur();
- expectedFailures.expectFailureFor(goog.userAgent.IE ||
- goog.userAgent.OPERA);
- try {
- assertNull('There should be no selection while dialog is open',
- fieldObj.getRange());
- } catch (e) {
- expectedFailures.handleException(e);
- }
-
- goog.testing.events.fireClickSequence(
- plugin.dialog_.getOkButtonElement());
- assertEquals('No text should be selected after clicking ok',
- '',
- fieldObj.getRange().getText());
-
- // Test that the caret is placed after the custom message.
- goog.testing.editor.dom.assertRangeBetweenText(
- 'Hello, world!', '5', fieldObj.getRange());
- }
-
-
-</script>
-</body>
-</html>