Skip to content

Commit

Permalink
smoke tests: fix paths (#5081)
Browse files Browse the repository at this point in the history
When running smoke tests without specifying
`BUILD_ARTIFACTSTAGINGDIRECTORY`, the `retry.log` file was placed in the
wrong location. I updated the environment variables to ensure the
correct path is always set.

### QA Notes
* Confirmed by running with `BUILD_ARTIFACTSTAGINGDIRECTORY` set that
logs appear in right place
* Confirmed by running _without_ `BUILD_ARTIFACTSTAGINGDIRECTORY` set
that logs appear in right place
  • Loading branch information
midleman authored Oct 21, 2024
1 parent 4cde19a commit 40614b2
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 12 deletions.
11 changes: 6 additions & 5 deletions test/smoke/src/test-runner/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,10 @@ import * as path from 'path';
import * as os from 'os';
import minimist = require('minimist');

const TEST_DATA_PATH = path.join(os.tmpdir(), 'vscsmoke');
export const OPTS = minimist(process.argv.slice(2));
const TEST_DATA_PATH = path.join(os.tmpdir(), 'vscsmoke');
const ARTIFACT_DIR = process.env.BUILD_ARTIFACTSTAGINGDIRECTORY || 'smoke-tests-default';
const ROOT_PATH = path.join(__dirname, '..', '..', '..', '..');

// Set environment variables
Object.assign(process.env, {
Expand All @@ -24,11 +26,10 @@ Object.assign(process.env, {
PR: OPTS['pr'] || '',
SKIP_CLEANUP: OPTS['skip-cleanup'] || '',
TEST_DATA_PATH: TEST_DATA_PATH,
ROOT_PATH: path.join(__dirname, '..', '..', '..', '..'),
EXTENSIONS_PATH: path.join(TEST_DATA_PATH, 'extensions-dir'),
WORKSPACE_PATH: path.join(TEST_DATA_PATH, 'qa-example-content'),
REPORT_PATH: path.join(process.env.BUILD_ARTIFACTSTAGINGDIRECTORY || '', 'test-results/'),
RETRY_LOG_PATH: path.join(process.env.BUILD_ARTIFACTSTAGINGDIRECTORY || ''),
LOGS_DIR: process.env.BUILD_ARTIFACTSTAGINGDIRECTORY || 'smoke-tests-default',
REPORT_PATH: path.join(ROOT_PATH, '.build', 'logs', ARTIFACT_DIR, 'test-results'),
LOGS_ROOT_PATH: path.join(ROOT_PATH, '.build', 'logs', ARTIFACT_DIR),
CRASHES_ROOT_PATH: path.join(ROOT_PATH, '.build', 'crashes', ARTIFACT_DIR),
});

4 changes: 2 additions & 2 deletions test/smoke/src/test-runner/logger.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,10 +64,10 @@ function logToFile(logFilePath: string, message: string): void {
* @param err error
*/
export function logErrorToFile(test: any, err: Error): void {
const RETRY_LOG_PATH = process.env.RETRY_LOG_PATH || 'RETRY_LOG_PATH not set';
const LOGS_ROOT_PATH = process.env.LOGS_ROOT_PATH || 'LOGS_ROOT_PATH not set';

const fileName = path.basename(test.file);
const testLogPath = path.join(RETRY_LOG_PATH, fileName, 'retry.log');
const testLogPath = path.join(LOGS_ROOT_PATH, fileName, 'retry.log');

const title = `[RUN #${test.currentRetry()}] ${test.fullTitle()}`;
const dashes = printDashes(title.length);
Expand Down
2 changes: 1 addition & 1 deletion test/smoke/src/test-runner/mocha-runner.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ export async function runMochaTests(OPTS: any) {
reporter: 'mocha-multi',
reporterOptions: {
spec: '-', // Console output
xunit: REPORT_PATH + 'xunit-results.xml',
xunit: path.join(REPORT_PATH, 'xunit-results.xml')
},
retries: 1,
});
Expand Down
8 changes: 4 additions & 4 deletions test/smoke/src/test-runner/test-hooks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ export const ROOT_PATH = join(__dirname, '..', '..', '..', '..');
const TEST_DATA_PATH = process.env.TEST_DATA_PATH || 'TEST_DATA_PATH not set';
const WORKSPACE_PATH = process.env.WORKSPACE_PATH || 'WORKSPACE_PATH not set';
const EXTENSIONS_PATH = process.env.EXTENSIONS_PATH || 'EXTENSIONS_PATH not set';
const LOGS_DIR = process.env.BUILD_ARTIFACTSTAGINGDIRECTORY || 'smoke-tests-default';

const LOGS_ROOT_PATH = process.env.LOGS_ROOT_PATH || 'LOGS_ROOT_PATH not set';
const CRASHES_ROOT_PATH = process.env.CRASHES_ROOT_PATH || 'CRASHES_ROOT_PATH not set';

const asBoolean = (value: string | undefined): boolean | undefined => {
return value === 'true' ? true : value === 'false' ? false : undefined;
Expand Down Expand Up @@ -42,8 +42,8 @@ const OPTS: ParseOptions = {
export function setupAndStartApp(): Logger {
// Dynamically determine the test file name
const suiteName = getTestFileName();
const logsRootPath = join(ROOT_PATH, '.build', 'logs', LOGS_DIR, suiteName);
const crashesRootPath = join(ROOT_PATH, '.build', 'crashes', LOGS_DIR, suiteName);
const logsRootPath = join(LOGS_ROOT_PATH, suiteName);
const crashesRootPath = join(CRASHES_ROOT_PATH, suiteName);

// Create a new logger for this suite
const logger = createLogger(logsRootPath);
Expand Down

0 comments on commit 40614b2

Please sign in to comment.