Commit Graph

1078 Commits

Author SHA1 Message Date
Nick O'Leary 294696daf5
Merge branch 'dev' into groups 2020-03-30 23:42:52 +01:00
Nick O'Leary 05fc3c5eca
Merge branch 'master' into dev 2020-03-30 23:41:33 +01:00
Nick O'Leary 84771f5864
Flows/subflows must preinitialise their context objects
Fixes #2513

If a node inside a subflow accessed its context object in its
constructor, the subflow-instance flow context would not yet
have been created. This would cause a place holder context
to get created on its behalf, but that place holder doesn't
have its parent set properly. This then breaks the usage
of $parent inside such a subflow.

This fix has changed it so flows (and subflows) create their
flow context as part of their initial creation. That ensures
it exists when individual nodes from the subflow are created,
allowing them to safely access their context.

This has also fixed a related issue where any attempt to use
$parent to access beyond the root parent would seemingly hang
as the callback was never being called. This would cause
messages to get stuck in flows. The fix ensures the callback
is used in the root context objects and undefined is returned.
2020-03-27 23:47:12 +00:00
Dave Conway-Jones b5ed018bae
csv node - add tests for blank columns and null values 2020-03-18 16:18:16 +00:00
Nick O'Leary 5cd2791506
[groups] Add groups to flow util unit tests 2020-03-16 23:01:57 +00:00
Nick O'Leary 6912dec166
Merge pull request #2479 from node-red-hitachi/dev-admin-api-auth
Add admin api authentication function
2020-03-13 13:36:53 +00:00
Kazuhito Yokoi 421b5846f2
Add page objects for UI testing (#2501)
* Update page object of change node

* Support multiple node outputs in UI testing

* Add page object of switch node

* Add page objects of trigger and exec nodes

* Remove unnecessary code

* Update page object of trigger node to select time unit

* Add page objects of websocket nodes

* Support boolean as value in selectWithWait()

* Update page object of split node

* Merge page objects of mqtt nodes to make them same as original mqtt node file path
2020-03-13 13:20:16 +00:00
Nick O'Leary 1c63d7ff31
Merge pull request #2489 from kazuhitoyokoi/master-fixuitest
Fix XPath in page objects for UI tests
2020-03-09 11:17:49 +00:00
Hiroyasu Nishiyama 84d2b8ad6d add support of initialization & finalization to function node 2020-03-07 01:55:45 +09:00
Dave Conway-Jones 5090b01b8e
Ensure join node handles missing buffer joiner when not in string mode
and add tests
to close #2491
2020-03-02 19:50:39 +00:00
Kazuhito Yokoi 491812fac5 Fix XPath in UI tests 2020-03-02 05:07:48 +00:00
KAZUHIRO ITO 95982ad464 Update adminAuth tokensStrategy test spec 2020-02-27 19:20:08 +09:00
KAZUHIRO ITO bba6855872 Add admin api authentication function 2020-02-26 12:59:40 +09:00
Dave Conway-Jones 1868289b71
Better fix for trigegr 2nd message in last payload mode
Now works correctly in multiple topics mode.
And update tests
2020-02-25 22:15:53 +00:00
Kazuhito Yokoi 00477fd67a Add UI test case for error handling 2020-02-25 19:56:48 +09:00
Kazuhito Yokoi 21c57f968a Add page object code for nodes 2020-02-25 19:02:46 +09:00
Kazuhito Yokoi f7d2314d64 Add page object code for split node and remove duplicated code 2020-02-25 19:01:17 +09:00
Kazuhito Yokoi 5ecf8c83db Support to input JSON path in debug node property 2020-02-25 18:46:02 +09:00
Dave Conway-Jones 01a143cd5a
Emsure trigger complete 2nd msg when set to send latest
and add test
to close #2474
2020-02-24 21:28:40 +00:00
Dave Conway-Jones 8405826fab
Ensure trigger sends complete 2nd msg if set to send latest msg
and add test
to close #2474
2020-02-24 21:17:54 +00:00
Nick O'Leary 1830478ec3
Merge pull request #2461 from node-red/set-flow-with-creds
Allow credentials to be provided as part of /flows api
2020-02-24 16:22:57 +00:00
Kazuhito Yokoi a53d0c091e Merge split and join node objects 2020-02-17 19:03:45 +09:00
Kazuhito Yokoi f88bfa059d Make scenario structures same as cookbook 2020-02-17 14:17:13 +09:00
Kazuhito Yokoi 2e38999506 Add UI test cases for data formats 2020-02-17 13:57:01 +09:00
Kazuhito Yokoi 42b841cb78 Update XPath to the latest 2020-02-17 13:29:06 +09:00
Dave Conway-Jones 127b361979
change PR to only use a single property for the 2nd output 2020-02-14 20:13:37 -05:00
Nick O'Leary d6b5494625
Allow credentials to be provided as part of /flows api 2020-02-13 16:44:48 +00:00
Kazuhito Yokoi 5c199d3bb4
Fix garbled characters in library (#2457)
* update getFileBody

* add suitable unit tests

Co-authored-by: Hiroyuki Okada <ok.okada.hiroyuki@gmail.com>
2020-02-12 16:35:33 +00:00
Nick O'Leary 1f8ed9dcb9
Merge branch 'master' into dev 2020-02-10 11:07:50 +00:00
Nick O'Leary 0f1ca1c7cf
cloneMessage should handle undefined without throwing err
Fixes #2399
2020-02-06 10:05:32 +00:00
Dave Conway-Jones 87aacb4270
change property name to leave space if we want to also do main payload property 2020-01-30 22:20:55 +00:00
Dave Conway-Jones 3f756aac21
Allow trigger node to use other than msg.topic to separate streams
and add test
2020-01-30 21:39:34 +00:00
Dave Conway-Jones bb12ec702a
Add second output to trigger node
and add tests
2020-01-24 18:20:14 +00:00
Nick O'Leary 6b52206186
Merge branch 'master' into dev 2020-01-22 11:54:24 +00:00
Kazuhito Yokoi b49835c72f
Support BrowserStack in UI testing 2020-01-21 09:49:19 +09:00
Nick O'Leary ee6f6ae391
Fixup debug tests 2020-01-17 20:57:13 +00:00
Nick O'Leary e2c3b35391
Merge pull request #2408 from onozuka/remove-runtime-deploy-event
UI-test: fix memory leak. runtime-deploy event in deploy()
2020-01-17 10:21:34 +00:00
Kazuhito Yokoi 44a07c74fd Click tab instead of workspace 2020-01-15 10:42:59 +09:00
Kazuhito Yokoi 214d788029 Use enter key to open node property instead of double click 2020-01-14 19:24:50 +09:00
Kazuhito Yokoi 530bf22bd5 Use palette search when selecting nodes 2020-01-14 18:02:27 +09:00
Kazuhito Yokoi ccc98370eb Use ephemeral port number for MQTT broker 2020-01-14 17:44:56 +09:00
Kazuhito Yokoi 7640bc029c Add handling to remove unused file and directories in UI testing 2020-01-14 17:24:16 +09:00
Kazuhito Yokoi 3f72eb51a0 Fix shortcut key handling 2020-01-14 17:18:46 +09:00
Kazuhito Yokoi 8801ace247 Remain .payload in debug node property 2020-01-14 16:56:39 +09:00
Kazuhito Yokoi faf46e4447 Improve node files for UI testing 2020-01-14 16:37:43 +09:00
Kazuhito Yokoi 63978e226b Move node files for UI testing to v1.0 directory structures 2020-01-14 15:42:56 +09:00
Yukio Onozuka b22a4f94ab when call event. remove runtime event. 2019-12-13 07:52:34 +09:00
Kazuhito Yokoi a364d4950d Fix test cases for UI 2019-12-02 12:43:13 +09:00
Nick O'Leary d45274494d
Merge branch 'master' into dev 2019-11-21 21:57:58 +00:00
Nick O'Leary 83c1e44925
Merge pull request #2371 from btsimonh/projects-flowsFile-absolute
flows file absolute path plus non-existent folder creation.
2019-11-21 10:44:20 +00:00
Nick O'Leary 1f5ff0c6d3
Merge pull request #2366 from btsimonh/fix-encodeObjecterror
Catches bad objects being encoded, returning instead the error.
2019-11-13 09:33:20 +00:00
KAZUHIRO ITO ff96773295 Add node installation from other than public site 2019-11-11 18:25:36 +09:00
Kazuhito Yokoi 4f6023e44c Support UI testing on the latest Google Chrome 2019-11-05 11:40:20 +09:00
Simon Hailes 6931cb9895 Added test for both UNC path and flow in non-existent subfolder. 2019-11-03 10:42:50 +00:00
Simon Hailes 5e9e523d4c add one line of coverage in log tests. 2019-11-02 13:21:58 +00:00
Simon Hailes c54509df3d additional test to cover last line in encodeObject 2019-11-02 13:03:37 +00:00
Simon Hailes 63cc9adeaa small update to log - if toString() causes exception, then note and use util.inspect instead - prevents log from causing processes to abort through exception.
Add tests.
2019-11-02 12:38:40 +00:00
Simon Hailes 74d760a46d add util.inspect data to 'type not printable'. Add test to cover these lines (no existing test). 2019-11-02 12:37:07 +00:00
Simon Hailes d46531def8 add unit tests for encode Object changes. 2019-11-02 11:27:08 +00:00
Nick O'Leary 000765fb77
Increase timeouts in Subflow tests to minimise false positives 2019-10-25 21:15:59 +01:00
Nick O'Leary 6026da867b
Fix timings of Delay node tests 2019-10-25 11:48:12 +01:00
Nick O'Leary c1c694035d
Allow node.status() to be passed number/bool types
Adds to the existing support for string types. Also
adds unit tests for all three cases
2019-10-14 13:06:59 +01:00
Dave Conway-Jones b763e0b0cb
Let switch node between rule work both ways round
and add test
2019-10-02 09:52:26 +01:00
Nick O'Leary f0839571d0
Clone the first message passed to node.send in Function
Also introduces an optional second arg to node.send in the Function
node that can disable that cloning
2019-09-12 22:09:35 +01:00
Nick O'Leary 69b781419f
Move io to network 2019-08-21 14:23:24 +01:00
Nick O'Leary da6db24f9e
Reorganise nodes into new categories 2019-08-21 14:23:23 +01:00
Nick O'Leary a17325f028
Update Function catch tests to handle async receive 2019-08-21 11:39:34 +01:00
Nick O'Leary b734097d16
Merge pull request #2227 from node-red/node-done
Adds Done callback to Input event handler
2019-08-21 11:15:00 +01:00
Dave Conway-Jones bf14af6a1f
Function node - handle things thrown that aren't proper Error types
and add tests
to close #2269
2019-08-19 10:42:14 +01:00
Nick O'Leary 83932e1725
Fix Flow test for updated node.done api 2019-08-14 22:55:46 +01:00
Nick O'Leary 880757fb5d
Rework Subflow Instance property UI (#2236)
* Add support of Subflow UI definition

* new UI definition for env var

* fix label

* fixed value obtaining

* fixed label width

* fix checkbox

* fix subflow info

* remove old subflow ui tests

* add tests

* merge ui new changes

* fix initial open button

* fix environment variable edit tab

* WIP: cp-1

* Rework subflow ui property

* Restrict SF value type according to input selection

* Move subflow property UI code to subflow.js

* Update subflow ui type select appearance

* Present subflow instance properties as table rather than generated UI

* Move subflow instance properties to separate tab

* Fix subflow property ui element layout issues
2019-08-12 15:01:54 +01:00
Nick O'Leary e2db958510
Fix up admin nodes test for audit log changes 2019-08-09 17:27:32 +01:00
Nick O'Leary 16440072fb
Add audit log to project spec tests 2019-08-09 17:09:03 +01:00
Nick O'Leary a376d6e361
Merge pull request #2226 from node-red/add-has_key-to-switch
Add "has key" rule to  switch node + tests
2019-07-30 23:06:44 +01:00
Nick O'Leary f1855174f0
Merge branch 'dev' into pr_2165 2019-07-10 09:30:48 +01:00
Dave Conway-Jones a2dedba0ef
change internal type to hask 2019-07-09 21:04:53 +01:00
Nick O'Leary f52289b2c3
Add send to input handler signature 2019-07-09 11:40:55 +01:00
Nick O'Leary 3b5ea0f15f
Add node done API 2019-07-08 23:23:33 +01:00
Dave Conway-Jones 238bcb8698
Add "has key" rule to switch node + tests 2019-07-08 15:54:31 +01:00
Nick O'Leary 944f3bd329
Merge branch 'master' into dev 2019-07-07 21:48:13 +01:00
Nick O'Leary aab0b0b4bf
Bump for 0.20.7 2019-07-05 11:12:26 +01:00
Nick O'Leary 0b204de5a9
Fix up tests for svg changes 2019-06-21 22:01:24 +01:00
Nick O'Leary d623848c87
Update all node icons to SVG
When listing icons provided by a module, if there is a png and svg
with the same name, only the svg will be listed.

If a node asks for a png icon which is not known, but there is a
corresponding svg, that will be used instead.
2019-06-21 12:36:20 +01:00
Dave Conway-Jones f3fc083330
Fix join node reset issue with merging objects
and add tests
to close #2188
2019-06-20 19:47:53 +01:00
Dave Conway-Jones 92cb57eb7b
Fix join node reset issue with merging objects
and add tests
to close #2188
2019-06-20 18:14:46 +01:00
Nick O'Leary f106019938
Add runtime test for disabled nodes 2019-06-18 11:02:31 +01:00
Nick O'Leary 8cf5ec9e5a
Update UI tests for new editor css 2019-06-11 17:12:31 +01:00
Hiroyasu Nishiyama f8dd68ecc4 Add support for env var propety in switch node 2019-06-07 21:35:36 +09:00
Dave Conway-Jones dc75a5812f
Handle webscoket item being parseable but not an object better
and add test
2019-05-29 12:49:35 +01:00
Nick O'Leary 245e06f026
Merge branch 'master' into dev 2019-05-24 10:22:14 +01:00
Dave Conway-Jones 85a438a40f
remove pi, twitter, email and feedparser from packages
remove tests from core
2019-05-17 14:14:17 +01:00
Dave Conway-Jones 83d99043a8
Add "don't parse numbers" option to csv node
and add test
2019-05-17 13:46:26 +01:00
Nick O'Leary 5bb2bc7077
Merge pull request #2158 from node-red/statusbar
⚠️ Standardise CSS class names through-out the editor
2019-05-17 10:43:48 +01:00
Nick O'Leary 094c92ed85
Fix ui tests for new css classes 2019-05-16 13:43:42 +01:00
Dave Conway-Jones e4f6694223
Fix CSV regex to treat strings starting e as text
rather than part of exponential, add tests
2019-05-08 22:43:41 +01:00
Nick O'Leary d251a30cb8
Update ui tests for palette css namespace 2019-04-29 22:41:31 +01:00
Nick O'Leary 6d8ea2b6a4
Merge branch 'dev' into new-export-dialog 2019-04-25 11:42:33 +01:00
Nick O'Leary b581e33611
Update runtime apis to support multiple libraries 2019-04-25 11:32:09 +01:00
Nathanaël Lécaudé c1e3b0d971 http request node: warn user if msg.requestTimeout == 0 2019-04-02 15:00:25 -04:00
Hiroki Uchikawa f7c87e26db Add test cases for context runtime API 2019-03-27 12:54:02 +09:00
Hiroki Uchikawa f98f4085bf Add test cases for context admin API 2019-03-27 12:54:01 +09:00
Hiroki Uchikawa 543519d055 Add test cases to ensure context API routes are correctly mounted. 2019-03-27 12:54:01 +09:00
Nick O'Leary 28e08ebaf5
Add envVarExcludes setting to block named env vars 2019-03-07 22:54:20 +00:00
Hiroyasu Nishiyama dc89218702 add encoding support to file in/out node (#2066)
* add encoding support to file in/out node

* update package.json

* change default encoding label: 'none' -> 'utf8[default]'

* add a missing message catalogue entry

* change default encoding label
2019-03-06 22:28:33 +00:00
Nick O'Leary 3c013b3533
Add file upload test for http request node 2019-03-06 21:21:35 +00:00
Nick O'Leary a046b357da
Tidy up registry/loader api used by unit tests
Fixes #2073
2019-03-05 13:25:44 +00:00
Nick O'Leary fab796e4e4
Modify trigger spec timings to reduce false-positive test runs 2019-03-05 09:48:43 +00:00
Nick O'Leary 8fb6bc059e
Pass complete status to Status node and filter to editor 2019-03-04 10:23:10 +00:00
Nick O'Leary a04337a270
Merge branch 'master' into dev 2019-02-25 14:46:25 +00:00
Dave Conway-Jones 2ebdd6c5cb
let join node handle merged objects with repeated properties and honour parts
to close issue from slack re repeated {"d":"d","d":"d","d":"d"}  messages
2019-02-20 00:11:31 +00:00
Dave Conway-Jones 0748dff355
And fix the JSON node test 2019-02-15 17:16:27 +00:00
Dave Conway-Jones 28d4084aa0
ensure JSON node handles single booleans and numbers 2019-02-15 17:07:11 +00:00
Nick O'Leary 6e944485f0
Merge pull request #2030 from node-red-hitachi/scope-parent
Allow access of scope parent
2019-02-06 14:10:57 +00:00
Nick O'Leary d48a09e68b
Add env type to subflow env var types
Also remove date and regex types
2019-02-06 13:58:31 +00:00
Hiroyasu Nishiyama 1db1ec7b5e fix encoding of file node from binary to utf8 2019-02-06 21:53:23 +09:00
Nick O'Leary 79f3669fac
Add 'catch uncaught only' mode to Catch node
Closes #1747

This was inspired by a PR from @mauriciom75 but implemented in a different way
due to some of the internal reworking done to Flow and Subflow in the dev branch
2019-02-05 14:29:50 +00:00
Hiroyasu Nishiyama 723e9b3cba make $parent access without key return undefined 2019-02-05 14:47:30 +09:00
Nick O'Leary 4de1056d82
Tidy up HTTP Request payload to GET params work 2019-02-04 21:30:11 +00:00
Nick O'Leary 044ad77a4b
Merge pull request #2044 from node-red-hitachi/cookie_encoding
Allow http request node to avoid encoding cookie
2019-02-04 20:39:05 +00:00
Nick O'Leary 5110eaff96
Merge branch 'dev' into pr_2042 2019-02-04 14:39:00 +00:00
Nick O'Leary 3bcff91328
Add Status Node to Subflow to allow subflow-specific status
Closes #597
2019-02-01 23:44:50 +00:00
Hiroyasu Nishiyama e843f192ec convert subflow env vars to dict 2019-02-02 08:34:33 +09:00
Hiroki Uchikawa f3d2053878 Make the encode option a boolean value to determine whether to encode 2019-02-01 17:15:07 +09:00
Hiroyasu Nishiyama ce507b3b52 simplified meta-data 2019-01-30 20:57:51 +09:00
Hiroki Uchikawa 7c6eb7c794 Allow http request node to change cookie value encoding 2019-01-30 19:33:23 +09:00
Nick O'Leary d534a8952d
Do not propagate Flow.getNode to parent when called from outside flow 2019-01-29 21:49:20 +00:00
Hiroyasu Nishiyama 0b05b883cb add test cases 2019-01-30 00:04:41 +09:00
Hiroyasu Nishiyama 8f6b24e0aa fixed to access last variable with same name 2019-01-29 21:46:50 +09:00
Hiroyasu Nishiyama 0881c6a20b update test cases 2019-01-28 23:14:49 +09:00
Hiroyasu Nishiyama a413f3cded Add support of subflow env var 2019-01-26 23:15:20 +09:00
Nick O'Leary c99b35428b
Ensure status/error events are propagated to parent properly 2019-01-25 13:35:02 +00:00
Nick O'Leary 490903ca25
Tidy up when usage in Flow and Node 2019-01-17 13:18:26 +00:00
Nick O'Leary 6286b34d00
Add Flow.getSetting for resolving env-var properties
This lays the groundwork for subflow-specific settings
2019-01-16 22:38:04 +00:00
Nick O'Leary 81f4e0de56
Refactor Subflow logic into own class 2019-01-16 16:27:19 +00:00
Hiroyasu Nishiyama 596fbfb517 allow $parent access of flow context 2019-01-16 23:10:03 +09:00
Nick O'Leary 81ae552e69
Project ui code using incorrect error property 2019-01-09 17:03:17 +00:00
Yuma Matsuura 715cc77e76 Update UI test for mac os 2018-12-18 09:29:46 +09:00
Hiroyasu Nishiyama 0e2d0e1b6f merge dev 2018-12-11 19:02:49 +09:00
Nathanaël Lécaudé 6d771da9a9 JSON node: delete msg.schema before sending msg to avoid conflicts 2018-12-10 13:47:55 -05:00
Hiroyasu Nishiyama 8198132ca7 use output selector for specifying JSONata expression 2018-12-09 20:30:35 +09:00
Hiroyasu Nishiyama 987dbf8a92 Merge branch 'dev' into debug-node-with-jsonata 2018-12-08 17:43:29 +09:00
Nick O'Leary 43530d4a5f
Remove tail/sentiment node tests 2018-12-07 16:45:06 +00:00
Nick O'Leary 72c78fe3ad
Merge pull request #1996 from node-red-hitachi/http-redirectList
Add redirectList property in msg of http-request node
2018-12-05 14:01:36 +00:00
Nick O'Leary ee47646cf7
Fix up unit tests 2018-12-04 15:59:43 +00:00
nakanishi 32d9acdaa5 minor fix 2018-12-04 15:46:46 +00:00
nakanishi 4eb3bd496b Add redirectList property in msg of http-request node 2018-12-04 15:39:01 +00:00
Hiroyasu Nishiyama 3c4f4d27d6 Support output editting of DEBUG node using JSONata 2018-12-01 18:03:04 +01:00
Nathanaël Lécaudé 6934a2d5c3 http request: add msg.requestTimeout parameter 2018-11-01 17:27:04 -04:00
nakanishi d033c24fe5 Fixed UI test problems caused by timing 2018-10-31 09:27:33 +09:00
Dave Conway-Jones 8dba0dac9e
Fix UDP in test 2018-10-29 22:23:03 +00:00