From f8dd68ecc4ac0260b248ceebfeb47bd2128aa62d Mon Sep 17 00:00:00 2001 From: Hiroyasu Nishiyama Date: Fri, 7 Jun 2019 21:35:36 +0900 Subject: [PATCH 1/2] Add support for env var propety in switch node --- .../@node-red/nodes/core/logic/10-switch.html | 2 +- test/nodes/core/logic/10-switch_spec.js | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/node_modules/@node-red/nodes/core/logic/10-switch.html b/packages/node_modules/@node-red/nodes/core/logic/10-switch.html index 45ee7a8ad..fa3046c0f 100644 --- a/packages/node_modules/@node-red/nodes/core/logic/10-switch.html +++ b/packages/node_modules/@node-red/nodes/core/logic/10-switch.html @@ -128,7 +128,7 @@ var node = this; var previousValueType = {value:"prev",label:this._("inject.previous"),hasValue:false}; - $("#node-input-property").typedInput({default:this.propertyType||'msg',types:['msg','flow','global','jsonata']}); + $("#node-input-property").typedInput({default:this.propertyType||'msg',types:['msg','flow','global','jsonata','env']}); var outputCount = $("#node-input-outputs").val("{}"); var andLabel = this._("switch.and"); diff --git a/test/nodes/core/logic/10-switch_spec.js b/test/nodes/core/logic/10-switch_spec.js index b33f436fc..899e6edef 100644 --- a/test/nodes/core/logic/10-switch_spec.js +++ b/test/nodes/core/logic/10-switch_spec.js @@ -818,6 +818,14 @@ describe('switch Node', function() { }); }); + it('should handle env var expression', function(done) { + var flow = [{id:"switchNode1",type:"switch",name:"switchNode",property:"VAR",propertyType:"env",rules:[{"t":"eq","v":"VAL"}],checkall:true,outputs:1,wires:[["helperNode1"]]}, + {id:"helperNode1", type:"helper", wires:[]}]; + process.env.VAR = "VAL"; + customFlowSwitchTest(flow, true, "OK", done); + }); + + it('should take head of message sequence (no repair)', function(done) { var flow = [{id:"switchNode1",type:"switch",name:"switchNode",property:"payload",rules:[{"t":"head","v":3}],checkall:false,repair:false,outputs:1,wires:[["helperNode1"]]}, {id:"helperNode1", type:"helper", wires:[]}]; From 6587d12fbd014c6dc352a26332db60b969b321fd Mon Sep 17 00:00:00 2001 From: Hiroyasu Nishiyama Date: Fri, 7 Jun 2019 21:39:12 +0900 Subject: [PATCH 2/2] update info text --- .../@node-red/nodes/locales/en-US/logic/10-switch.html | 2 +- .../@node-red/nodes/locales/ja/logic/10-switch.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/node_modules/@node-red/nodes/locales/en-US/logic/10-switch.html b/packages/node_modules/@node-red/nodes/locales/en-US/logic/10-switch.html index 2513b68e9..fb9af2a77 100644 --- a/packages/node_modules/@node-red/nodes/locales/en-US/logic/10-switch.html +++ b/packages/node_modules/@node-red/nodes/locales/en-US/logic/10-switch.html @@ -22,7 +22,7 @@

Optionally, the node can be set to stop evaluating rules once it finds one that matches.

The rules can be evaluated against an individual message property, a flow or global - context property or the result of a JSONata expression.

+ context property, environment variable or the result of a JSONata expression.

Rules

There are four types of rule:

    diff --git a/packages/node_modules/@node-red/nodes/locales/ja/logic/10-switch.html b/packages/node_modules/@node-red/nodes/locales/ja/logic/10-switch.html index 8b73203a5..91ed9a717 100644 --- a/packages/node_modules/@node-red/nodes/locales/ja/logic/10-switch.html +++ b/packages/node_modules/@node-red/nodes/locales/ja/logic/10-switch.html @@ -19,7 +19,7 @@

    詳細

    受信したメッセージに対し、指定されたルールを順に評価し、マッチしたルールに対応する出力ポートにメッセージを送出します。

    最初にルールがマッチしたところで評価を止めることも可能です。

    -

    評価ルールには、メッセージプロパティ、フローコンテキスト/グローバルコンテキストのプロパティ、JSONata式の評価結果が利用できます。

    +

    評価ルールには、メッセージプロパティ、フローコンテキスト/グローバルコンテキストのプロパティ、環境変数、JSONata式の評価結果が利用できます。

    ルール

    振り分けルールは以下の4つに分類されます。