]> git.pond.sub.org Git - eow/blobdiff - static/dojo-release-1.1.1/dojox/dtl/tests/context.js
add Dojo 1.1.1
[eow] / static / dojo-release-1.1.1 / dojox / dtl / tests / context.js
diff --git a/static/dojo-release-1.1.1/dojox/dtl/tests/context.js b/static/dojo-release-1.1.1/dojox/dtl/tests/context.js
new file mode 100644 (file)
index 0000000..a366098
--- /dev/null
@@ -0,0 +1,79 @@
+if(!dojo._hasResource["dojox.dtl.tests.context"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
+dojo._hasResource["dojox.dtl.tests.context"] = true;
+dojo.provide("dojox.dtl.tests.context");
+
+dojo.require("dojox.dtl");
+dojo.require("dojox.dtl.Context");
+
+doh.register("dojox.dtl.context", 
+       [
+               function test_context_creation(t){
+                       var context = new dojox.dtl.Context({ foo: "foo", bar: "bar" });
+                       t.is("foo", context.foo);
+                       t.is("bar", context.bar);
+               },
+               function test_context_push(t){
+                       var context = new dojox.dtl.Context({ foo: "foo", bar: "bar" });
+                       context.push();
+                       for(var key in context._dicts[0]){
+                               t.t(key == "foo" || key == "bar");
+                       }
+               },
+               function test_context_pop(t){
+                       var context = new dojox.dtl.Context({ foo: "foo", bar: "bar" });
+                       context.push();
+                       t.is("undefined", typeof context.foo);
+                       t.is("undefined", typeof context.bar);
+                       context.pop();
+                       t.is("foo", context.foo);
+                       t.is("bar", context.bar);
+               },
+               function test_context_overpop(t){
+                       var context = new dojox.dtl.Context();
+                       try{
+                               context.pop();
+                               t.t(false);
+                       }catch(e){
+                               t.is("pop() called on empty Context", e.message);
+                       }
+               },
+               function test_context_filter(t){
+                       var context = new dojox.dtl.Context({ foo: "one", bar: "two", baz: "three" });
+                       var filtered = context.filter("foo", "bar");
+                       t.is(filtered.foo, "one");
+                       t.is(filtered.bar, "two");
+                       t.f(filtered.baz);
+
+                       filtered = context.filter({ bar: true, baz: true });
+                       t.f(filtered.foo);
+                       t.is(filtered.bar, "two");
+                       t.is(filtered.baz, "three");
+
+                       filtered = context.filter(new dojox.dtl.Context({ foo: true, baz: true }));
+                       t.is(filtered.foo, "one");
+                       t.f(filtered.bar);
+                       t.is(filtered.baz, "three");
+               },
+               function test_context_extend(t){
+                       var context = new dojox.dtl.Context({ foo: "one" });
+                       var extended = context.extend({ bar: "two", baz: "three" });
+                       t.is(extended.foo, "one");
+                       t.is(extended.bar, "two");
+                       t.is(extended.baz, "three");
+
+                       extended = context.extend({ barr: "two", bazz: "three" });
+                       t.is(extended.foo, "one");
+                       t.f(extended.bar);
+                       t.f(extended.baz);
+                       t.is(extended.barr, "two");
+                       t.is(extended.bazz, "three");
+
+                       t.f(context.bar)
+                       t.f(context.baz);
+                       t.f(context.barr);
+                       t.f(context.bazz);
+               }
+       ]
+);
+
+}