update test cases

This commit is contained in:
Hiroyasu Nishiyama
2019-01-28 23:14:49 +09:00
parent f88a4b1791
commit 0881c6a20b
3 changed files with 36 additions and 24 deletions

View File

@@ -208,39 +208,37 @@ class Subflow extends Flow {
}
return null;
}
function lookupFlow0(env, name) {
if (flow.subflowInstance) {
var vi = lookup(flow.subflowInstance.env, name);
if (vi) {
return vi;
function lookupFlow0(flow, name) {
if (flow.subflowInstance && flow.subflowInstance.env) {
var val = lookup(flow.subflowInstance.env, name);
if (val) {
return val;
}
}
if (flow.subflowDef) {
var vt = lookup(flow.subflowDef.env, name);
if (vt) {
return vt;
if (flow.subflowDef && flow.subflowDef.env) {
var val = lookup(flow.subflowDef.env, name);
if (val) {
return val;
}
}
return null;
}
function lookupFlow(env, name) {
function lookupFlow(flow, name) {
var prefix = name.substring(0, name.length -5); // len("_{type,info}")==5
if (name.endsWith("_type")) {
var vname = name.substring(0, 5); // len("_type")==5
var val = lookupFlow0(env, vname);
var val = lookupFlow0(flow, prefix);
if (val) {
return val.type;
}
}
else if (name.endsWith("_info")) {
var vname = name.substring(0, 5); // len("_info")==5
var val = lookupFlow0(env, vname);
var val = lookupFlow0(flow, prefix);
if (val) {
return val.info;
}
}
else {
var val = lookupFlow0(env, name);
var val = lookupFlow0(flow, name);
if (val) {
return val.value;
}
@@ -252,9 +250,9 @@ class Subflow extends Flow {
if (node) {
var flow = node._flow;
if (flow) {
var v = lookupFlow(flow, name);
if (v) {
return v;
var val = lookupFlow(flow, name);
if (val) {
return val;
}
}
}