UNPKG

@opentext/sdp-sdm-tests-to-run-conversion

Version:

JavaScript-based tool that converts the testsToRun parameter for running automated tests from OpenText Core Software Delivery Platform and OpenText Software Delivery Management.

94 lines (83 loc) 3.1 kB
#!/usr/bin/env node /* * Copyright 2016-2025 Open Text. * * The only warranties for products and services of Open Text and * its affiliates and licensors (“Open Text”) are as may be set forth * in the express warranty statements accompanying such products and services. * Nothing herein should be construed as constituting an additional warranty. * Open Text shall not be liable for technical or editorial errors or * omissions contained herein. The information contained herein is subject * to change without notice. * * Except as specifically indicated otherwise, this document contains * confidential information and a valid license is required for possession, * use or copying. If this work is provided to the U.S. Government, * consistent with FAR 12.211 and 12.212, Commercial Computer Software, * Computer Software Documentation, and Technical Data for Commercial Items are * licensed to the U.S. Government under vendor's standard commercial license. * * 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. */ import yargs from "yargs"; import { hideBin } from "yargs/helpers"; import Logger from "./utils/logger"; import { initConfig } from "./config/config"; import convertTestsToRun from "./testsToRunConverter"; import parseTestsToRun from "./testsToRunParser"; import Arguments from "./utils/arguments"; const LOGGER: Logger = new Logger("main.ts"); let args: Arguments; const main = () => { try { loadArguments(); initConfig(args); const parsedTestsToRun = parseTestsToRun(args.testsToRun); if (parseTestsToRun.length === 0) { LOGGER.info("No tests to run have been found."); return; } const convertedTestsToRun = convertTestsToRun(parsedTestsToRun); console.log(convertedTestsToRun); LOGGER.info("Successfully converted the tests to run."); } catch (error) { if (error instanceof Error) { LOGGER.error(error.message); } else { throw error; } } }; const loadArguments = () => { args = yargs(hideBin(process.argv)) .option("framework", { type: "string", demandOption: true, describe: "Specify the framework", }) .option("testsToRun", { type: "string", demandOption: true, describe: "Specify the tests to run", }) .option("customFramework", { type: "string", default: "", describe: "JSON object containing the format rules used for conversion", }) .option("logLevel", { type: "number", default: 0, describe: "Set the log level (1-5)", }) .parseSync() as Arguments; }; main();