UNPKG

relu-core

Version:
53 lines (52 loc) 1.2 kB
var should = require("should"); var rp = require("../"); var checkRefs = require("./checkRefs"); describe("handled", function() { it("should not depend on a handled variable", checkRefs(function() { var x = rp.variable("test"); var y = rp.variable(1); var z = rp.variable([1, 2, 3]); var h = rp.computed(function() { var handled = []; return { value: x() + y.getHandled(function(v) { handled.push(v); }) + z.getHandled(function(v) { handled.push(v); }, function(idx, item) { handled.push({added: item}); }, function(idx, item) { handled.push({removed: item}); }).join(""), handled: handled }; }); h().should.be.eql({ value: "test1123", handled: [] }); y.set(2); z.push(4); h().should.be.eql({ value: "test1123", handled: [2, {added:4}] }); var oldH = h(); x.set("TEST"); h().should.be.eql({ value: "TEST21234", handled: [] }); z.pop(); z.set([0, 1, 2]); h().should.be.eql({ value: "TEST21234", handled: [{removed:4}, [0, 1, 2]] }); oldH.should.be.eql({ value: "test1123", handled: [2, {added:4}] }); })); });