@yathomasi/cypress-parallel
Version:
[](https://github.com/yathomasi/cypress-parallel/actions/workflows/build.yml) [ || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseAndValidateNodeConfiguration = exports.NodeConfigurationParseError = void 0;
const util_1 = __importDefault(require("util"));
const error_1 = require("./error");
const NUMBER_EXPR = /^\d+$/;
class NodeConfigurationParseError extends error_1.CypressParallelError {
}
exports.NodeConfigurationParseError = NodeConfigurationParseError;
function parseAndValidateNodeConfiguration(unparsedIndex, unparsedCount) {
if (!NUMBER_EXPR.test(unparsedIndex)) {
throw new NodeConfigurationParseError(`Expected a number for node index, but got ${util_1.default.inspect(unparsedIndex)}`);
}
if (!NUMBER_EXPR.test(unparsedCount)) {
throw new NodeConfigurationParseError(`Expected a number for node count, but got ${util_1.default.inspect(unparsedCount)}`);
}
const index = parseInt(unparsedIndex, 10);
const count = parseInt(unparsedCount, 10);
if (!(index > 0)) {
throw new NodeConfigurationParseError("Expected node index > 0");
}
if (!(count > 0)) {
throw new NodeConfigurationParseError("Expected node count > 0");
}
if (!(count >= index)) {
throw new NodeConfigurationParseError("Expected node count >= node index");
}
return {
index,
count,
};
}
exports.parseAndValidateNodeConfiguration = parseAndValidateNodeConfiguration;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbmZpZ3VyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsZ0RBQXdCO0FBRXhCLG1DQUErQztBQW9CL0MsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDO0FBRTVCLE1BQWEsMkJBQTRCLFNBQVEsNEJBQW9CO0NBQUc7QUFBeEUsa0VBQXdFO0FBRXhFLFNBQWdCLGlDQUFpQyxDQUMvQyxhQUFxQixFQUNyQixhQUFxQjtJQUVyQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRTtRQUNwQyxNQUFNLElBQUksMkJBQTJCLENBQ25DLDZDQUE2QyxjQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQzNFLENBQUM7S0FDSDtJQUVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFO1FBQ3BDLE1BQU0sSUFBSSwyQkFBMkIsQ0FDbkMsNkNBQTZDLGNBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FDM0UsQ0FBQztLQUNIO0lBRUQsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMxQyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRTFDLElBQUksQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRTtRQUNoQixNQUFNLElBQUksMkJBQTJCLENBQUMseUJBQXlCLENBQUMsQ0FBQztLQUNsRTtJQUVELElBQUksQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRTtRQUNoQixNQUFNLElBQUksMkJBQTJCLENBQUMseUJBQXlCLENBQUMsQ0FBQztLQUNsRTtJQUVELElBQUksQ0FBQyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsRUFBRTtRQUNyQixNQUFNLElBQUksMkJBQTJCLENBQUMsbUNBQW1DLENBQUMsQ0FBQztLQUM1RTtJQUVELE9BQU87UUFDTCxLQUFLO1FBQ0wsS0FBSztLQUNOLENBQUM7QUFDSixDQUFDO0FBbkNELDhFQW1DQyJ9