UNPKG

closure-builder

Version:

Simple Closure, Soy and JavaScript Build system

102 lines (87 loc) 2.74 kB
<!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"> <meta charset="UTF-8" /> <title>Closure Unit Tests - goog.demos.editor.HelloWorldDialog</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.dom.DomHelper'); goog.require('goog.events.EventHandler'); goog.require('goog.testing.LooseMock'); goog.require('goog.testing.events'); goog.require('goog.testing.jsunit'); goog.require('goog.testing.mockmatchers.ArgumentMatcher'); goog.require('goog.ui.editor.AbstractDialog.EventType'); </script> <link rel="stylesheet" href="../css/dialog.css"/> </head> <body> <script> var dialog; var mockOkHandler; var CUSTOM_MESSAGE = 'Hello, cruel world...'; function setUp() { mockOkHandler = new goog.testing.LooseMock(goog.events.EventHandler); } function tearDown() { dialog.dispose(); } /** * Creates and shows the dialog to be tested. */ function createAndShow() { dialog = new goog.demos.editor.HelloWorldDialog(new goog.dom.DomHelper()); dialog.addEventListener(goog.ui.editor.AbstractDialog.EventType.OK, mockOkHandler); dialog.show(); } /** * Sets up the mock event handler to expect an OK event with the given * message. * @param {string} message Hello world message the OK event is expected to * carry. */ function expectOk(message) { mockOkHandler.handleEvent(new goog.testing.mockmatchers.ArgumentMatcher( function(arg) { return arg.type == goog.ui.editor.AbstractDialog.EventType.OK && arg.message == message; })); } /** * Tests that when you show the dialog, the input field has the correct * sample text in it. */ function testShow() { mockOkHandler.$replay(); createAndShow(); assertEquals('Input field has incorrect sample text', 'Hello, world!', dialog.input_.value); mockOkHandler.$verify(); } /** * Tests that clicking OK dispatches an event carying the entered message. */ function testOk() { expectOk(CUSTOM_MESSAGE); mockOkHandler.$replay(); createAndShow(); dialog.input_.value = CUSTOM_MESSAGE; goog.testing.events.fireClickSequence(dialog.getOkButtonElement()); mockOkHandler.$verify(); // Verifies OK is dispatched with correct message. } </script> </body> </html>