1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- // Copyright 2008 The Closure Library Authors. All Rights Reserved.
- // Use of this source code is governed by the Apache License, Version 2.0.
- goog.provide('goog.demos.editor.HelloWorldDialogTest');
- goog.setTestOnly('goog.demos.editor.HelloWorldDialogTest');
- 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');
- 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.
- }
|