cli-node: refactor to remove mock-fs

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
This commit is contained in:
Patrik Oldsberg
2023-12-28 15:15:35 +01:00
parent cdad4f0a02
commit 92ee157875
3 changed files with 13 additions and 11 deletions
+2 -2
View File
@@ -38,8 +38,8 @@
"zod": "^3.22.4"
},
"devDependencies": {
"@backstage/cli": "workspace:^",
"mock-fs": "^5.2.0"
"@backstage/backend-test-utils": "workspace:^",
"@backstage/cli": "workspace:^"
},
"files": [
"dist"
@@ -15,15 +15,17 @@
*/
import { isMonoRepo } from './isMonoRepo';
import mockFs from 'mock-fs';
import { createMockDirectory } from '@backstage/backend-test-utils';
const mockDir = createMockDirectory();
jest.mock('../paths', () => ({
paths: { resolveTargetRoot: (...args: string[]) => mockDir.resolve(...args) },
}));
describe('isMonoRepo', () => {
afterEach(() => {
mockFs.restore();
});
it('should detect a monorepo', async () => {
mockFs({
mockDir.setContent({
'package.json': JSON.stringify({
name: 'foo',
workspaces: {
@@ -35,7 +37,7 @@ describe('isMonoRepo', () => {
});
it('should detect a non- monorepo', async () => {
mockFs({
mockDir.setContent({
'package.json': JSON.stringify({
name: 'foo',
}),
@@ -44,7 +46,7 @@ describe('isMonoRepo', () => {
});
it('should return false if package.json is missing', async () => {
mockFs({});
mockDir.setContent({});
await expect(isMonoRepo()).resolves.toBe(false);
});
});
+1 -1
View File
@@ -3520,6 +3520,7 @@ __metadata:
version: 0.0.0-use.local
resolution: "@backstage/cli-node@workspace:packages/cli-node"
dependencies:
"@backstage/backend-test-utils": "workspace:^"
"@backstage/cli": "workspace:^"
"@backstage/cli-common": "workspace:^"
"@backstage/errors": "workspace:^"
@@ -3527,7 +3528,6 @@ __metadata:
"@manypkg/get-packages": ^1.1.3
"@yarnpkg/parsers": ^3.0.0-rc.4
fs-extra: 10.1.0
mock-fs: ^5.2.0
semver: ^7.5.3
zod: ^3.22.4
languageName: unknown