1<!doctype html>
2<!--
3Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
4This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
5The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
6The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
7Code distributed by Google as part of the polymer project is also
8subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
9-->
10<html>
11<head>
12  <meta charset="UTF-8">
13  <title>paper-icon-button a11y tests</title>
14  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
15
16  <script src="../../webcomponentsjs/webcomponents.js"></script>
17  <script src="../../web-component-tester/browser.js"></script>
18
19  <link href="../../core-icons/core-icons.html" rel="import">
20  <link href="../paper-icon-button.html" rel="import">
21
22</head>
23<body>
24
25  <paper-icon-button id="fab1" icon="add"></paper-icon-button>
26
27  <paper-icon-button id="fab2" icon="add" disabled></paper-icon-button>
28
29  <paper-icon-button id="fab3" icon="add" aria-label="custom"></paper-icon-button>
30
31  <script>
32
33    var f1 = document.getElementById('fab1');
34    var f2 = document.getElementById('fab2');
35    var f3 = document.getElementById('fab3');
36
37    test('aria role is a button', function() {
38      assert.strictEqual(f1.getAttribute('role'), 'button');
39    });
40
41    test('aria-disabled is set', function(done) {
42      assert.ok(f2.hasAttribute('aria-disabled'));
43      flush(function() {
44        f2.removeAttribute('disabled');
45        flush(function() {
46          assert.ok(!f2.hasAttribute('aria-disabled'));
47          done();
48        });
49      });
50    });
51
52    test('aria-label is set', function() {
53      assert.strictEqual(f1.getAttribute('aria-label'), 'add');
54    });
55
56    test('user-defined aria-label is preserved', function(done) {
57      assert.strictEqual(f3.getAttribute('aria-label'), 'custom');
58      f3.icon = 'arrow-forward';
59      flush(function() {
60        assert.strictEqual(f3.getAttribute('aria-label'), 'custom');
61        done();
62      });
63    });
64
65  </script>
66
67</body>
68</html>
69