UNPKG

depguard

Version:

A powerful CLI tool to check and update npm/yarn dependencies in your projects

38 lines (37 loc) 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const factory_1 = require("../../package-managers/factory"); const npm_1 = require("../../package-managers/npm"); const yarn_1 = require("../../package-managers/yarn"); const fs_1 = require("fs"); const path_1 = require("path"); jest.mock('fs'); jest.mock('path'); describe('PackageManagerFactory', () => { beforeEach(() => { jest.clearAllMocks(); path_1.join.mockImplementation((...args) => args.join('/')); }); it('should create NpmPackageManager when no yarn.lock exists', async () => { fs_1.existsSync.mockImplementation((path) => { if (path.includes('yarn.lock')) return false; if (path.includes('package-lock.json')) return true; return false; }); const manager = await factory_1.PackageManagerFactory.create(); expect(manager).toBeInstanceOf(npm_1.NpmPackageManager); }); it('should create YarnPackageManager when yarn.lock exists', async () => { fs_1.existsSync.mockImplementation((path) => { if (path.includes('yarn.lock')) return true; if (path.includes('package-lock.json')) return false; return false; }); const manager = await factory_1.PackageManagerFactory.create(); expect(manager).toBeInstanceOf(yarn_1.YarnPackageManager); }); });