pico-engine-core
Advanced tools
Comparing version 0.14.4 to 0.14.5
{ | ||
"name": "pico-engine-core", | ||
"version": "0.14.4", | ||
"version": "0.14.5", | ||
"description": "The core javascript api for the pico-engine. (no http, logging, process management etc...)", | ||
@@ -5,0 +5,0 @@ "main": "src/index.js", |
@@ -55,2 +55,3 @@ var _ = require("lodash"); | ||
var ctx = mkCTX({ | ||
rid: rs.rid, | ||
scope: rs.scope | ||
@@ -74,2 +75,3 @@ }); | ||
var ctx = mkCTX({ | ||
rid: dep_rs.rid, | ||
scope: SymbolTable()//or dep_rs.scope.push() ??? TODO | ||
@@ -76,0 +78,0 @@ }); |
@@ -577,44 +577,71 @@ var _ = require("lodash"); | ||
λ.curry(pe.db.addRuleset, {pico_id: "id0", rid: "io.picolabs.module-used"}), | ||
// Test overiding module configurations | ||
[ | ||
signal("module_used", "say_hello", { | ||
name: "Bob" | ||
}), | ||
[{name: "say_hello", options: { | ||
something: "Hello Bob", | ||
configured: "Greetings Bob" | ||
}}] | ||
signal("module_used", "dflt_name"), | ||
[{name: "dflt_name", options: {name: "Bob"}}] | ||
], | ||
[ | ||
signal("module_defined", "hello"), | ||
[] | ||
signal("module_used", "conf_name"), | ||
[{name: "conf_name", options: {name: "Jim"}}] | ||
], | ||
// Test using provided functions that use `ent` vars | ||
// NOTE: the dependent ruleset is NOT added to the pico | ||
[ | ||
signal("module_used", "dflt_info"), | ||
[{name: "dflt_info", options: {info: { | ||
name: "Bob", | ||
memo: void 0,//there is nothing stored in that `ent` var | ||
//TODO should this be an error? | ||
privateFn: "privateFn = name: Bob memo: undefined" | ||
}}}] | ||
], | ||
[ | ||
signal("module_used", "conf_info"), | ||
[{name: "conf_info", options: {info: { | ||
name: "Jim", | ||
memo: void 0,//there is nothing stored in that `ent` var | ||
//TODO should this be an error? | ||
privateFn: "privateFn = name: Jim memo: undefined" | ||
}}}] | ||
], | ||
// Assert dependant module is not added to the pico | ||
[ | ||
signal("module_defined", "store_memo", {memo: "foo"}), | ||
[]//should not respond to this event | ||
], | ||
λ.curry(pe.db.addRuleset, {pico_id: "id0", rid: "io.picolabs.module-defined"}), | ||
[ | ||
signal("module_defined", "hello"), | ||
[{name: "module_defined - should_not_handle_events !", options: {}}] | ||
signal("module_defined", "store_memo", {memo: "foo"}), | ||
[{name: "store_memo", options: { | ||
name: "Bob",//the default is used when a module is added to a pico | ||
memo_to_store: "foo" | ||
}}] | ||
], | ||
[ | ||
query("queryFn", {obj: "Jim"}), | ||
"Query: Private: Hello Jim" | ||
query("getInfo"), | ||
{ | ||
name: "Bob", | ||
memo: "[\"foo\" by Bob]", | ||
privateFn: "privateFn = name: Bob memo: [\"foo\" by Bob]" | ||
} | ||
], | ||
//test non-shared fn can't be queried | ||
function(next){ | ||
query("hello", {obj: "Jim"})(function(err, data){ | ||
t.ok(/Error: Not shared/i.test(err + "")); | ||
query("privateFn", {obj: "Jim"})(function(err, data){ | ||
t.ok(/Error: Not shared/i.test(err + "")); | ||
next(); | ||
}); | ||
}); | ||
}, | ||
//test non-provides fn can't be used | ||
function(next){ | ||
signal("module_used", "privateFn")(function(err, data){ | ||
t.ok(/Error: Not defined/i.test(err + "")); | ||
signal("module_used", "queryFn")(function(err, data){ | ||
t.ok(/Error: Not defined/i.test(err + "")); | ||
next(); | ||
}); | ||
}); | ||
} | ||
[ | ||
signal("module_used", "dflt_info"), | ||
[{name: "dflt_info", options: {info: { | ||
name: "Bob", | ||
memo: "[\"foo\" by Bob]", | ||
privateFn: "privateFn = name: Bob memo: [\"foo\" by Bob]" | ||
}}}] | ||
], | ||
[ | ||
signal("module_used", "conf_info"), | ||
[{name: "conf_info", options: {info: { | ||
name: "Jim",//the overrided config is used here | ||
memo: "[\"foo\" by Bob]",//the memo was stored on the pico ruleset with default config | ||
privateFn: "privateFn = name: Jim memo: [\"foo\" by Bob]" | ||
}}}] | ||
] | ||
], t.end); | ||
@@ -621,0 +648,0 @@ }); |
@@ -6,2 +6,3 @@ var _ = require("lodash"); | ||
return fn(_.assign({}, ctx2, { | ||
rid: ctx.rid,//keep your original rid | ||
scope: ctx.scope.push(), | ||
@@ -8,0 +9,0 @@ args: args |
49157
1586