Skip to content

Commit b95d869

Browse files
authored
Merge pull request #19 from dumlj/fix/windows
test: fix unitest in windows
2 parents 9d5a2bc + c43d687 commit b95d869

File tree

1 file changed

+21
-20
lines changed

1 file changed

+21
-20
lines changed

@lib/util-lib/__tests__/finder/findWorkspaceProject.spec.ts

+21-20
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { vol } from 'memfs'
22
import { findWorkspaceProject, PROJECT_CACHE } from '@/finder/findWorkspaceProject'
3+
import path from 'path'
34

45
// eslint-disable-next-line @typescript-eslint/consistent-type-imports
56
jest.mock('fs', () => jest.requireActual<typeof import('memfs')>('memfs'))
@@ -12,26 +13,26 @@ describe('finder/findWorkspaceProject', () => {
1213

1314
it('should find projects from a workspace', async () => {
1415
vol.fromJSON({
15-
'package.json': JSON.stringify({
16+
[path.join('package.json')]: JSON.stringify({
1617
workspaces: ['packages/*'],
1718
}),
18-
'packages/package-a/package.json': JSON.stringify({
19+
[path.join('packages/package-a/package.json')]: JSON.stringify({
1920
name: 'package-a',
2021
version: '1.0.0',
2122
description: 'Package A',
2223
dependencies: {
2324
'package-b': '^1.0.0',
2425
},
2526
}),
26-
'packages/package-b/package.json': JSON.stringify({
27+
[path.join('packages/package-b/package.json')]: JSON.stringify({
2728
name: 'package-b',
2829
version: '1.0.0',
2930
description: 'Package B',
3031
dependencies: {
3132
'package-c': '^1.0.0',
3233
},
3334
}),
34-
'packages/package-c/package.json': JSON.stringify({
35+
[path.join('packages/package-c/package.json')]: JSON.stringify({
3536
name: 'package-c',
3637
version: '1.0.0',
3738
description: 'Package C',
@@ -49,7 +50,7 @@ describe('finder/findWorkspaceProject', () => {
4950
version: '1.0.0',
5051
description: 'Package C',
5152
isPrivate: false,
52-
location: 'packages/package-c',
53+
location: path.join('packages/package-c'),
5354
dependencies: [],
5455
workspaceDependencies: [],
5556
},
@@ -58,7 +59,7 @@ describe('finder/findWorkspaceProject', () => {
5859
version: '1.0.0',
5960
description: 'Package B',
6061
isPrivate: false,
61-
location: 'packages/package-b',
62+
location: path.join('packages/package-b'),
6263
dependencies: ['package-c'],
6364
workspaceDependencies: ['package-c'],
6465
},
@@ -67,7 +68,7 @@ describe('finder/findWorkspaceProject', () => {
6768
version: '1.0.0',
6869
description: 'Package A',
6970
isPrivate: false,
70-
location: 'packages/package-a',
71+
location: path.join('packages/package-a'),
7172
dependencies: ['package-b'],
7273
workspaceDependencies: ['package-b'],
7374
},
@@ -76,26 +77,26 @@ describe('finder/findWorkspaceProject', () => {
7677

7778
it('should find projects from a workspace with a custom pattern', async () => {
7879
vol.fromJSON({
79-
'package.json': JSON.stringify({
80+
[path.join('package.json')]: JSON.stringify({
8081
workspaces: ['packages/*'],
8182
}),
82-
'packages/package-a/package.json': JSON.stringify({
83+
[path.join('packages/package-a/package.json')]: JSON.stringify({
8384
name: 'package-a',
8485
version: '1.0.0',
8586
description: 'Package A',
8687
dependencies: {
8788
'package-b': '^1.0.0',
8889
},
8990
}),
90-
'packages/package-b/package.json': JSON.stringify({
91+
[path.join('packages/package-b/package.json')]: JSON.stringify({
9192
name: 'package-b',
9293
version: '1.0.0',
9394
description: 'Package B',
9495
dependencies: {
9596
'package-c': '^1.0.0',
9697
},
9798
}),
98-
'packages/package-c/package.json': JSON.stringify({
99+
[path.join('packages/package-c/package.json')]: JSON.stringify({
99100
name: 'package-c',
100101
version: '1.0.0',
101102
description: 'Package C',
@@ -114,7 +115,7 @@ describe('finder/findWorkspaceProject', () => {
114115
version: '1.0.0',
115116
description: 'Package A',
116117
isPrivate: false,
117-
location: 'packages/package-a',
118+
location: path.join('packages/package-a'),
118119
dependencies: ['package-b'],
119120
workspaceDependencies: [],
120121
},
@@ -123,26 +124,26 @@ describe('finder/findWorkspaceProject', () => {
123124

124125
it('should find projects from a workspace with a custom pattern and cwd, and from cache', async () => {
125126
vol.fromJSON({
126-
'package.json': JSON.stringify({
127+
[path.join('package.json')]: JSON.stringify({
127128
workspaces: ['packages/*'],
128129
}),
129-
'packages/package-a/package.json': JSON.stringify({
130+
[path.join('packages/package-a/package.json')]: JSON.stringify({
130131
name: 'package-a',
131132
version: '1.0.0',
132133
description: 'Package A',
133134
dependencies: {
134135
'package-b': '^1.0.0',
135136
},
136137
}),
137-
'packages/package-b/package.json': JSON.stringify({
138+
[path.join('packages/package-b/package.json')]: JSON.stringify({
138139
name: 'package-b',
139140
version: '1.0.0',
140141
description: 'Package B',
141142
dependencies: {
142143
'package-c': '^1.0.0',
143144
},
144145
}),
145-
'packages/package-c/package.json': JSON.stringify({
146+
[path.join('packages/package-c/package.json')]: JSON.stringify({
146147
name: 'package-c',
147148
version: '1.0.0',
148149
description: 'Package C',
@@ -161,18 +162,18 @@ describe('finder/findWorkspaceProject', () => {
161162

162163
it('should throw an error if a project name is duplicated in the workspace', async () => {
163164
vol.fromJSON({
164-
'package.json': JSON.stringify({
165+
[path.join('package.json')]: JSON.stringify({
165166
workspaces: ['packages/*'],
166167
}),
167-
'packages/package-a/package.json': JSON.stringify({
168+
[path.join('packages/package-a/package.json')]: JSON.stringify({
168169
name: 'package-a',
169170
version: '1.0.0',
170171
description: 'Package A',
171172
dependencies: {
172173
'package-b': '^1.0.0',
173174
},
174175
}),
175-
'packages/package-b/package.json': JSON.stringify({
176+
[path.join('packages/package-b/package.json')]: JSON.stringify({
176177
name: 'package-a',
177178
version: '1.0.0',
178179
description: 'Package A',
@@ -187,6 +188,6 @@ describe('finder/findWorkspaceProject', () => {
187188
pattern: ['packages/*'],
188189
cwd: '',
189190
})
190-
).rejects.toThrow('The project name package-a is duplicated in the workspace.\n - packages/package-b/package.json\n - packages/package-a/package.json')
191+
).rejects.toThrow(`The project name package-a is duplicated in the workspace.\n - ${path.join('packages/package-b/package.json')}\n - ${path.join('packages/package-a/package.json')}`)
191192
})
192193
})

0 commit comments

Comments
 (0)