Skip to content

Commit d662761

Browse files
committed
Add test for framework detection
1 parent 49619c0 commit d662761

2 files changed

Lines changed: 29 additions & 2 deletions

File tree

src/utils/common.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -202,9 +202,9 @@ export function detectFramework(): PugFramework {
202202
try {
203203
if (process.env.npm_package_dependencies_vue) {
204204
return 'vue';
205-
} else if (process.env.npm_package_dependencies_svelte) {
205+
} else if (process.env.npm_package_devDependencies_svelte) {
206206
return 'svelte';
207-
} else if (process.env.npm_package_dependencies_angular) {
207+
} else if (process.env.npm_package_dependencies__angular_core) {
208208
return 'angular';
209209
}
210210
} catch {

tests/frameworks/detection.test.ts

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import { detectFramework } from '../../src/utils/common';
2+
3+
describe('Frameworks', () => {
4+
describe('Detection', () => {
5+
const backupProcessEnv: Record<string, string | undefined> = process.env;
6+
7+
beforeEach(() => {
8+
process.env = { ...backupProcessEnv };
9+
});
10+
11+
test('should fallback to none if no framework detected via process.env', () => {
12+
expect(detectFramework()).toBe('none');
13+
});
14+
test('should detect vue from process.env', () => {
15+
process.env.npm_package_dependencies_vue = 'some version';
16+
expect(detectFramework()).toBe('vue');
17+
});
18+
test('should detect svelte from process.env', () => {
19+
process.env.npm_package_devDependencies_svelte = 'some version';
20+
expect(detectFramework()).toBe('svelte');
21+
});
22+
test('should detect angular from process.env', () => {
23+
process.env.npm_package_dependencies__angular_core = 'some version';
24+
expect(detectFramework()).toBe('angular');
25+
});
26+
});
27+
});

0 commit comments

Comments
 (0)