aboutsummaryrefslogtreecommitdiff
path: root/contexts/data/lib/closure-library/closure/goog/ui/colormenubuttonrenderer_test.html
blob: 04f3200a7625eae9a71a9ff65ec11dc0760a012b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<!DOCTYPE html>
<html>
<!--
Copyright 2009 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.
-->
<!--

  @author nicksantos@google.com (Nick Santos)
-->
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Closure Unit Tests for ColorMenuButtonRenderer</title>
<script src="../base.js"></script>
<script>
  goog.require('goog.dom');
  goog.require('goog.dom.classes');
  goog.require('goog.events');
  goog.require('goog.events.Event');
  goog.require('goog.testing.events');
  goog.require('goog.testing.jsunit');
  goog.require('goog.testing.ui.RendererHarness');
  goog.require('goog.testing.ui.rendererasserts');
  goog.require('goog.ui.ColorMenuButton');
  goog.require('goog.userAgent');
</script>
</head>
<body>

<div id='root'>
  <!-- A parent to attach rendered buttons to -->
  <div id='parent'></div>

  <!-- A button to decorate -->
  <div id='decoratedButton'><div>Foo</div></div>
</div>

<script>

var harness;

function setUp() {
  harness = new goog.testing.ui.RendererHarness(
      goog.ui.ColorMenuButtonRenderer.getInstance(),
      goog.dom.getElement('parent'),
      goog.dom.getElement('decoratedButton'));
}

function tearDown() {
  harness.dispose();
}

function testEquality() {
  harness.attachControlAndRender(
      new goog.ui.ColorMenuButton('Foo'));
  harness.attachControlAndDecorate(
      new goog.ui.ColorMenuButton());
  harness.assertDomMatches();
}

function testWrapCaption() {
  var caption = goog.dom.createDom('div', null, 'Foo');
  var wrappedCaption = goog.ui.ColorMenuButtonRenderer.wrapCaption(caption,
      goog.dom.getDomHelper());
  assertNotEquals('Caption should have been wrapped', caption, wrappedCaption);
  assertEquals('Wrapped caption should have indicator css class',
      'goog-color-menu-button-indicator', wrappedCaption.className);
}

function testSetCaptionValue() {
  var caption = goog.dom.createDom('div', null, 'Foo');
  var wrappedCaption = goog.ui.ColorMenuButtonRenderer.wrapCaption(caption,
      goog.dom.getDomHelper());
  goog.ui.ColorMenuButtonRenderer.setCaptionValue(wrappedCaption, 'red');

  var expectedColor = goog.userAgent.IE ? '#ff0000' : 'rgb(255, 0, 0)';
  assertEquals(expectedColor, caption.style.borderBottomColor);
}

function testDoesntCallGetCssClassInConstructor() {
  goog.testing.ui.rendererasserts.
      assertNoGetCssClassCallsInConstructor(goog.ui.ColorMenuButtonRenderer);
}
</script>
</body>
</html>