1<!DOCTYPE html>
2<html>
3<head>
4<style>
5#error {
6  display: none;
7}
8</style>
9<link rel="stylesheet" href="/domui/css/button.css">
10<link rel="stylesheet" href="/domui/css/chrome_shared.css">
11<link rel="stylesheet" href="/domui/css/list.css">
12<link rel="stylesheet" href="/domui/css/select.css">
13
14<link rel="stylesheet" href="/options/css/list.css">
15
16<link rel="stylesheet" href="/css/plugin_list.css">
17<link rel="stylesheet" href="/css/rule_list.css">
18
19<script src="http://closure-library.googlecode.com/svn/trunk/closure/goog/base.js"></script>
20<script src="/domui/js/cr.js"></script>
21<script src="/domui/js/cr/event_target.js"></script>
22<script src="/domui/js/cr/ui.js"></script>
23<script src="/domui/js/cr/ui/array_data_model.js"></script>
24<script src="/domui/js/cr/ui/list_item.js"></script>
25<script src="/domui/js/cr/ui/list_selection_controller.js"></script>
26<script src="/domui/js/cr/ui/list_selection_model.js"></script>
27<script src="/domui/js/cr/ui/list_single_selection_model.js"></script>
28<script src="/domui/js/cr/ui/list.js"></script>
29<script src="/domui/js/util.js"></script>
30
31<script src="/options/js/deletable_item_list.js"></script>
32<script src="/options/js/inline_editable_list.js"></script>
33
34<script src="plugin_list.js" type="text/javascript"></script>
35<script src="plugin_settings.js" type="text/javascript"></script>
36<script src="rule_list.js" type="text/javascript"></script>
37
38<script>
39goog.require('goog.testing.jsunit');
40</script>
41<script src="chrome_stubs.js" type="text/javascript"></script>
42</head>
43<body>
44<div id="error"></div>
45<script>
46function testConstruction() {
47  var pluginList = document.createElement('list');
48  document.body.appendChild(pluginList);
49  pluginSettings.ui.PluginList.decorate(pluginList);
50  var plugins = [
51    {
52      'id': 'myplugin',
53      'description': 'My Plugin'
54    }
55  ];
56  var rules = {
57    'http://example.com/*': 'block',
58    'http://moose.org/*': 'allow',
59  };
60  createSettings(rules);
61  pluginList.dataModel = new cr.ui.ArrayDataModel(plugins);
62  assertEquals('My Plugin',
63               pluginList.querySelector('.plugin-name').textContent);
64  assertEquals('(2 rules)', pluginList.querySelector('.num-rules').textContent);
65}
66</script>
67</body>
68</html>
69