UNPKG

deepjs

Version:

Atomic tools for better programming

59 lines (51 loc) 1.64 kB
/** * @author Gilles Coomans <gilles.coomans@gmail.com> */ if (typeof define !== 'function') { var define = require('amdefine')(module); } define(["require","../deep", "../lib/unit"], function (require, deep, Unit) { //_______________________________________________________________ GENERIC STORE TEST CASES var unit = { title:"deepjs/units/deepload", stopOnError:false, clean:function(){ delete deep.protocols.test; }, tests : { deeploadObject_NonDestructive:function(){ var store = new deep.Collection("test", [{id:"e1", title:"hello"}]); var a = { how:"test::e1" }; return deep.nodes(a) .deepLoad(null, false) .done(function(r){ return [r,a]; }) .equal([{ how:{id:"e1", title:"hello"} },{ how:"test::e1" }]); }, deeploadObject_Destructive:function(){ var store = new deep.Collection("test", [{id:"e1", title:"hello"}]); var a = { how:"test::e1" }; return deep.nodes(a) .deepLoad(null, true) .done(function(r){ return [r,a]; }) .equal([{ how:{id:"e1", title:"hello"} },{ how:{id:"e1", title:"hello"} }]); }, deepLoadWithQuery_NonDestructive:function(){ var obj = { how:'dummy::bloup' }; return deep.nodes(obj) .query("./how") .deepLoad(null, false) .done(function(){ return obj.how; }) .equal("dummy::bloup"); } } }; return unit; });