Index: webrtc/tools/rtcbot/main.js |
diff --git a/webrtc/tools/rtcbot/main.js b/webrtc/tools/rtcbot/main.js |
deleted file mode 100644 |
index 665f6e88e8c7697f5d0b23bb5a447c48b1350c93..0000000000000000000000000000000000000000 |
--- a/webrtc/tools/rtcbot/main.js |
+++ /dev/null |
@@ -1,102 +0,0 @@ |
-// Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. |
-// |
-// Use of this source code is governed by a BSD-style license |
-// that can be found in the LICENSE file in the root of the source |
-// tree. An additional intellectual property rights grant can be found |
-// in the file PATENTS. All contributing project authors may |
-// be found in the AUTHORS file in the root of the source tree. |
-// |
-// This script loads all the test/* files into a very small context that |
-// only exposes a minimal set of functions that allows to register tests. |
-// |
-// Once all files are loaded it runs the specific test on the command line. |
-// If no arguments are given it lists all the registered tests. |
-// |
-// Note: the small context where the scripts are loaded is intended to keep |
-// nodejs-isms away from the test code and isolate implementation details away |
-// from them. |
-var fs = require('fs'); |
-var vm = require('vm'); |
-var Test = require('./test.js'); |
- |
-var testSuites = {}; |
- |
-function registerTest(name, func) { |
- testSuites[name] = func; |
-} |
- |
-function registerBotTest(name, func, bots) { |
- registerTest(name, bootstrap); |
- |
- function bootstrap(test) { |
- var callbacks = []; |
- for (var i = 0; i != bots.length; ++i) |
- callbacks.push(test.spawnBot.bind(test, "", bots[i])); |
- |
- test.wait(callbacks, func.bind(test, test)); |
- } |
-} |
- |
-function loadTestFile(filename, doneCallback) { |
- var loadTestContext = { |
- setTimeout: setTimeout, |
- registerTest: registerTest, |
- registerBotTest: registerBotTest |
- }; |
- var script = vm.createScript(fs.readFileSync(filename), filename); |
- script.runInNewContext(loadTestContext); |
- doneCallback(); |
-} |
- |
-function iterateOverTestFiles(foreachCallback, doneCallback) { |
- fs.readdir('test', function (error, list) { |
- function iterateNextFile() { |
- if (list.length === 0) { |
- doneCallback(); |
- } else { |
- var filename = list.pop(); |
- if (filename[0] === '.' || filename.slice(-3) !== '.js') { |
- // Skip hidden and non .js files on that directory. |
- iterateNextFile(); |
- } else { |
- foreachCallback('test/' + filename, iterateNextFile); |
- } |
- } |
- } |
- |
- if (error !== null) { |
- throw error; |
- } |
- iterateNextFile(); |
- }); |
-} |
- |
-function runTest(testname) { |
- if (testname in testSuites) { |
- console.log("Running test: " + testname); |
- var test = new Test(); |
- testSuites[testname](test); |
- } else { |
- console.log("Unknown test: " + testname); |
- } |
-} |
- |
-function printUsage() { |
- console.log('Run as:\n $ ' |
- + process.argv[0] + ' ' + process.argv[1] |
- + ' <testname>'); |
- console.log('These are the existent ones:'); |
- for (var testname in testSuites) |
- console.log(' ' + testname); |
-} |
- |
-function main() { |
- // TODO(andresp): support multiple tests. |
- var testList = process.argv.slice(2); |
- if (testList.length === 1) |
- runTest(testList[0]); |
- else |
- printUsage(); |
-} |
- |
-iterateOverTestFiles(loadTestFile, main); |