Skip to content

Commit bd31494

Browse files
committed
more generic link: handling and fix aws-lambda-layer e2e test
1 parent 0183f50 commit bd31494

File tree

2 files changed

+19
-15
lines changed

2 files changed

+19
-15
lines changed

dev-packages/e2e-tests/lib/copyToTemp.ts

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,11 @@ function fixPackageJson(cwd: string): void {
1919
};
2020

2121
// 1. Fix file dependencies
22-
const didFixTestUtilsDependency =
23-
(packageJson.dependencies && fixTestUtilsDependency(packageJson.dependencies)) ||
24-
(packageJson.devDependencies && fixTestUtilsDependency(packageJson.devDependencies));
25-
26-
if (!didFixTestUtilsDependency) {
27-
console.log("No '@sentry-internal/test-utils' dependency found");
22+
if (packageJson.dependencies) {
23+
fixFileLinkDependencies(packageJson.dependencies);
24+
}
25+
if (packageJson.devDependencies) {
26+
fixFileLinkDependencies(packageJson.devDependencies);
2827
}
2928

3029
// 2. Fix volta extends
@@ -39,13 +38,18 @@ function fixPackageJson(cwd: string): void {
3938
writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2));
4039
}
4140

42-
function fixTestUtilsDependency(dependencyObj: Record<string, string>): boolean {
43-
// 1. Fix file dependencies
44-
if (dependencyObj['@sentry-internal/test-utils']) {
45-
const newPath = join(__dirname, '../../test-utils');
46-
dependencyObj['@sentry-internal/test-utils'] = `link:${newPath}`;
47-
console.log(`Fixed '@sentry-internal/test-utils' dependency to ${newPath}`);
48-
return true;
41+
function fixFileLinkDependencies(dependencyObj: Record<string, string>): boolean {
42+
for (const [key, value] of Object.entries(dependencyObj)) {
43+
if (value.startsWith('link:')) {
44+
const dirPath = value.replace('link:', '');
45+
46+
// We add a virtual dir to ensure that the relative depth is consistent
47+
// dirPath is relative to ./../test-applications/xxx
48+
const newPath = join(__dirname, 'virtual-dir/', dirPath);
49+
50+
dependencyObj[key] = `link:${newPath}`;
51+
console.log(`Fixed ${key} dependency to ${newPath}`);
52+
}
4953
}
5054

5155
return false;

dev-packages/e2e-tests/test-applications/aws-lambda-layer-cjs/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
"version": "1.0.0",
44
"private": true,
55
"scripts": {
6-
"copy:layer": "cp -r ./../../../../packages/aws-serverless/build/aws/dist-serverless/nodejs/node_modules/ ./node_modules",
76
"start": "node src/run.js",
87
"test": "playwright test",
98
"clean": "npx rimraf node_modules pnpm-lock.yaml",
10-
"test:build": "pnpm install && pnpm copy:layer",
9+
"test:build": "pnpm install",
1110
"test:assert": "pnpm test"
1211
},
1312
"dependencies": {
13+
"@sentry/aws-serverless": "link:../../../../packages/aws-serverless/build/aws/dist-serverless/nodejs/node_modules/@sentry/aws-serverless"
1414
},
1515
"devDependencies": {
1616
"@sentry-internal/test-utils": "link:../../../test-utils",

0 commit comments

Comments
 (0)