UNPKG

homebridge-config-ui-x

Version:

A web based management, configuration and control platform for Homebridge

47 lines (41 loc) 1.35 kB
"use strict"; var startsWith = require("es5-ext/string/#/starts-with") , spawn = require("child_process").spawn , resolve = require("path").resolve; var pg = resolve(__dirname, "__playground"); module.exports = { "": function (a, d) { var t = spawn("node", [resolve(pg, "throbber.js")]), out = [], err = ""; t.stdout.on("data", function (data) { out.push(data); }); t.stderr.on("data", function (data) { err += data; }); t.on("exit", function () { a.ok(out.length > 4, "Interval"); a(startsWith.call(out.join(""), "START-\b\\\b|\b/\b-\b"), true, "Output"); a(err, "", "No stderr output"); d(); }); }, "Formatted": function (a, d) { var t = spawn("node", [resolve(pg, "throbber.formatted.js")]), out = [], err = ""; t.stdout.on("data", function (data) { out.push(data); }); t.stderr.on("data", function (data) { err += data; }); t.on("exit", function () { a.ok(out.length > 4, "Interval"); var isNoColor = Boolean(process.env.NO_COLOR); if (isNoColor) { a(startsWith.call(out.join(""), "START"), true, "Output"); } else { a( startsWith.call( out.join(""), "START\x1b[31m-\x1b[39m\x1b[31m\b\\\x1b" + "[39m\x1b[31m\b|\x1b[39m\x1b[31m\b/\x1b[39m\x1b[31m\b-\x1b[39m" ), true, "Output" ); } a(err, "", "No stderr output"); d(); }); } };