1 if(!dojo._hasResource["dojox.dtl.tests.context"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
2 dojo._hasResource["dojox.dtl.tests.context"] = true;
3 dojo.provide("dojox.dtl.tests.context");
5 dojo.require("dojox.dtl");
6 dojo.require("dojox.dtl.Context");
8 doh.register("dojox.dtl.context",
10 function test_context_creation(t){
11 var context = new dojox.dtl.Context({ foo: "foo", bar: "bar" });
12 t.is("foo", context.foo);
13 t.is("bar", context.bar);
15 function test_context_push(t){
16 var context = new dojox.dtl.Context({ foo: "foo", bar: "bar" });
18 for(var key in context._dicts[0]){
19 t.t(key == "foo" || key == "bar");
22 function test_context_pop(t){
23 var context = new dojox.dtl.Context({ foo: "foo", bar: "bar" });
25 t.is("undefined", typeof context.foo);
26 t.is("undefined", typeof context.bar);
28 t.is("foo", context.foo);
29 t.is("bar", context.bar);
31 function test_context_overpop(t){
32 var context = new dojox.dtl.Context();
37 t.is("pop() called on empty Context", e.message);
40 function test_context_filter(t){
41 var context = new dojox.dtl.Context({ foo: "one", bar: "two", baz: "three" });
42 var filtered = context.filter("foo", "bar");
43 t.is(filtered.foo, "one");
44 t.is(filtered.bar, "two");
47 filtered = context.filter({ bar: true, baz: true });
49 t.is(filtered.bar, "two");
50 t.is(filtered.baz, "three");
52 filtered = context.filter(new dojox.dtl.Context({ foo: true, baz: true }));
53 t.is(filtered.foo, "one");
55 t.is(filtered.baz, "three");
57 function test_context_extend(t){
58 var context = new dojox.dtl.Context({ foo: "one" });
59 var extended = context.extend({ bar: "two", baz: "three" });
60 t.is(extended.foo, "one");
61 t.is(extended.bar, "two");
62 t.is(extended.baz, "three");
64 extended = context.extend({ barr: "two", bazz: "three" });
65 t.is(extended.foo, "one");
68 t.is(extended.barr, "two");
69 t.is(extended.bazz, "three");