Skip to content

Commit

Permalink
little refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
MadameSheema committed Nov 14, 2023
1 parent 57d1183 commit 7e2f4e0
Showing 1 changed file with 17 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,12 @@ interface Project {
product: string;
}

interface ProjectConfigurationOverride {
tier: string;
ignoreEndpoint: boolean;
ignoreCloud: boolean;
}

interface Credentials {
username: string;
password: string;
Expand Down Expand Up @@ -322,21 +328,19 @@ function waitForKibanaLogin(kbUrl: string, credentials: Credentials): Promise<vo

const getProductTypes = (
filePath: string,
tier?: string,
ignoreEndpointLine?: boolean,
ignoreCloudLine?: boolean
projectConfigurationOverride: ProjectConfigurationOverride
): ProductType[] => {
let productTypes = parseTestFileConfig(filePath).productTypes as ProductType[];
if (tier) {
if (projectConfigurationOverride.tier) {
productTypes = productTypes.map((product) => ({
...product,
product_tier: tier,
product_tier: projectConfigurationOverride.tier,
}));
}
if (ignoreEndpointLine) {
if (projectConfigurationOverride.ignoreEndpoint) {
productTypes = productTypes.filter((product) => product.product_line !== 'endpoint');
}
if (ignoreCloudLine) {
if (projectConfigurationOverride.ignoreCloud) {
productTypes = productTypes.filter((product) => product.product_line !== 'cloud');
}
return productTypes;
Expand Down Expand Up @@ -405,9 +409,11 @@ ${JSON.stringify(argv, null, 2)}
const cypressConfigFilePath = require.resolve(`../../${argv.configFile}`) as string;
const cypressConfigFile = await import(cypressConfigFilePath);

const projectTier = argv.tier as string;
const ignoreEndpoint = argv.ignoreEndpoint as boolean;
const ignoreCloud = argv.ignoreCloud as boolean;
const projectConfigurationOverride: ProjectConfigurationOverride = {
tier: argv.tier as string,
ignoreEndpoint: argv.ignoreEndpoint as boolean,
ignoreCloud: argv.ignoreClous as boolean,
};

log.info(`
----------------------------------------------
Expand Down Expand Up @@ -477,12 +483,7 @@ ${JSON.stringify(cypressConfigFile, null, 2)}
await withProcRunner(log, async (procs) => {
const id = crypto.randomBytes(8).toString('hex');
const PROJECT_NAME = `${PROJECT_NAME_PREFIX}-${id}`;
const productTypes = getProductTypes(
filePath,
projectTier,
ignoreEndpoint,
ignoreCloud
);
const productTypes = getProductTypes(filePath, projectConfigurationOverride);

if (!API_KEY) {
log.info('API KEY to create project could not be retrieved.');
Expand Down

0 comments on commit 7e2f4e0

Please sign in to comment.