if (!dojo._hasResource["dojox.lang.tests.curry"]) { // _hasResource checks added // by build. Do not use // _hasResource directly in // your code. dojo._hasResource["dojox.lang.tests.curry"] = true; dojo.provide("dojox.lang.tests.curry"); dojo.require("dojox.lang.functional"); (function() { var df = dojox.lang.functional, add5 = df.curry("+")(5), sub3 = df .curry("_-3"), fun = df.lambda("100*a + 10*b + c"); tests.register("dojox.lang.tests.curry", [function testCurry1(t) { t.assertEqual(df.curry("+")(1, 2), 3); }, function testCurry2(t) { t.assertEqual(df.curry("+")(1)(2), 3); }, function testCurry3(t) { t.assertEqual(df.curry("+")(1, 2, 3), 3); }, function testCurry4(t) { t.assertEqual(add5(1), 6); }, function testCurry5(t) { t.assertEqual(add5(3), 8); }, function testCurry6(t) { t.assertEqual(add5(5), 10); }, function testCurry7(t) { t.assertEqual(sub3(1), -2); }, function testCurry8(t) { t.assertEqual(sub3(3), 0); }, function testCurry9(t) { t.assertEqual(sub3(5), 2); }, function testPartial1(t) { t.assertEqual(df.partial(fun, 1, 2, 3)(), 123); }, function testPartial2(t) { t .assertEqual( df.partial(fun, 1, 2, df.arg)(3), 123); }, function testPartial3(t) { t .assertEqual( df.partial(fun, 1, df.arg, 3)(2), 123); }, function testPartial4(t) { t.assertEqual(df.partial(fun, 1, df.arg, df.arg)(2, 3), 123); }, function testPartial5(t) { t .assertEqual( df.partial(fun, df.arg, 2, 3)(1), 123); }, function testPartial6(t) { t.assertEqual(df.partial(fun, df.arg, 2, df.arg)(1, 3), 123); }, function testPartial7(t) { t.assertEqual(df.partial(fun, df.arg, df.arg, 3)(1, 2), 123); }, function testPartial8(t) { t.assertEqual(df.partial(fun, df.arg, df.arg, df.arg)(1, 2, 3), 123); }]); })(); }