summaryrefslogtreecommitdiff
path: root/includes/js/dojo/tests/AdapterRegistry.js
blob: 4565e27e5d75ae77d1180d0ec357a6b5f86bfe26 (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
if(!dojo._hasResource["tests.AdapterRegistry"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
dojo._hasResource["tests.AdapterRegistry"] = true;
dojo.provide("tests.AdapterRegistry");
dojo.require("dojo.AdapterRegistry");

doh.register("tests.AdapterRegistry", 
	[
		function ctor(t){
			var taa = new dojo.AdapterRegistry();
			t.is(0, taa.pairs.length);
			t.f(taa.returnWrappers);

			var taa = new dojo.AdapterRegistry(true);
			t.t(taa.returnWrappers);
		},

		function register(t){
			var taa = new dojo.AdapterRegistry();
			taa.register("blah", 
				function(str){ return str == "blah"; },
				function(){ return "blah"; }
			);
			t.is(1, taa.pairs.length);
			t.is("blah", taa.pairs[0][0]);

			taa.register("thinger");
			taa.register("prepend", null, null, true, true);
			t.is("prepend", taa.pairs[0][0]);
			t.t(taa.pairs[0][3]);
		},

		/*
		function match(t){
		},
		*/

		function noMatch(t){
			var taa = new dojo.AdapterRegistry();
			var threw = false;
			try{
				taa.match("blah");
			}catch(e){
				threw = true;
			}
			t.t(threw);
		},

		function returnWrappers(t){
			var taa = new dojo.AdapterRegistry();
			taa.register("blah", 
				function(str){ return str == "blah"; },
				function(){ return "blah"; }
			);
			t.is("blah", taa.match("blah"));

			taa.returnWrappers = true;
			t.is("blah", taa.match("blah")());
		},

		function unregister(t){
			var taa = new dojo.AdapterRegistry();
			taa.register("blah", 
				function(str){ return str == "blah"; },
				function(){ return "blah"; }
			);
			taa.register("thinger");
			taa.register("prepend", null, null, true, true);
			taa.unregister("prepend");
			t.is(2, taa.pairs.length);
			t.is("blah", taa.pairs[0][0]);
		}
	]
);

}