summaryrefslogtreecommitdiffstats
path: root/dgbuilder/test/nodes/helper.js
diff options
context:
space:
mode:
Diffstat (limited to 'dgbuilder/test/nodes/helper.js')
-rw-r--r--dgbuilder/test/nodes/helper.js128
1 files changed, 0 insertions, 128 deletions
diff --git a/dgbuilder/test/nodes/helper.js b/dgbuilder/test/nodes/helper.js
deleted file mode 100644
index 9b371ca4..00000000
--- a/dgbuilder/test/nodes/helper.js
+++ /dev/null
@@ -1,128 +0,0 @@
-/**
- * Copyright 2014 IBM Corp.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- **/
-
-var should = require("should");
-var when = require("when");
-var request = require('supertest');
-var nock;
-if (!process.version.match(/^v0\.[0-9]\./)) {
- // only set nock for node >= 0.10
- try {
- nock = require('nock');
- } catch (err) {
- // nevermind, will skip nock tests
- nock = null;
- }
-}
-var RED = require("../../red/red.js");
-var redNodes = require("../../red/nodes");
-var flows = require("../../red/nodes/flows");
-var credentials = require("../../red/nodes/credentials");
-var comms = require("../../red/comms.js");
-
-var http = require('http');
-var express = require('express');
-var app = express();
-
-var address = '127.0.0.1';
-var listenPort = 0; // use ephemeral port
-var port;
-var url;
-
-var server;
-
-function helperNode(n) {
- RED.nodes.createNode(this, n);
-}
-
-module.exports = {
- load: function(testNode, testFlows, testCredentials, cb) {
- if (typeof testCredentials === 'function') {
- cb = testCredentials;
- testCredentials = {};
- }
-
- var storage = {
- getFlows: function() {
- var defer = when.defer();
- defer.resolve(testFlows);
- return defer.promise;
- },
- getCredentials: function() {
- var defer = when.defer();
- defer.resolve(testCredentials);
- return defer.promise;
- },
- saveCredentials: function() {
- // do nothing
- },
- };
- var settings = {
- available: function() { return false; }
- };
-
- redNodes.init(settings, storage);
- credentials.init(storage);
- RED.nodes.registerType("helper", helperNode);
- testNode(RED);
- flows.load().then(function() {
- should.deepEqual(testFlows, flows.getFlows());
- cb();
- });
- },
- unload: function() {
- // TODO: any other state to remove between tests?
- redNodes.clearRegistry();
- return flows.stopFlows();
- },
-
- getNode: function(id) {
- return flows.get(id);
- },
-
- credentials: credentials,
-
- clearFlows: function() {
- return flows.clear();
- },
-
- request: function() {
- return request(RED.httpAdmin);
- },
-
- startServer: function(done) {
- server = http.createServer(function(req,res){app(req,res);});
- RED.init(server, {});
- server.listen(listenPort, address);
- server.on('listening', function() {
- port = server.address().port;
- url = 'http://' + address + ':' + port;
- comms.start();
- done();
- });
- },
- //TODO consider saving TCP handshake/server reinit on start/stop/start sequences
- stopServer: function(done) {
- if(server) {
- server.close(done);
- }
- },
-
- url: function() { return url; },
-
- nock: nock,
-
-};