UNPKG

@applicaster/zapplicaster-cli

Version:

CLI Tool for the zapp app and Quick Brick project

50 lines (37 loc) 1.28 kB
const R = require("ramda"); const mock_version = "1.0.0-test-vesion"; const mock_commands = ["command_1", "command_2"]; const mock_registerCommand_curried = jest.fn(); const mock_registerCommand = jest.fn(() => mock_registerCommand_curried); const mock_call_parse = jest.fn(() => ({ parse: jest.fn(), })); const mock_call_on = jest.fn(() => ({ on: mock_call_parse, })); jest.mock("commander", () => ({ version: mock_call_on, })); jest.mock("../package.json", () => ({ version: mock_version, })); jest.mock("../src/commands", () => ({ commands: mock_commands, registerCommand: mock_registerCommand, })); jest.spyOn(R, "forEach"); const program = require("commander"); const { registerCommand, commands } = require("../src/commands"); const { version } = require("../package.json"); require("../index"); describe("zapplicasterCli", () => { it("registers all commands", () => { expect(registerCommand).toHaveBeenCalledWith(program); expect(R.forEach).toHaveBeenCalledWith(registerCommand(program), commands); expect(registerCommand(program)).toHaveBeenCalledTimes(commands.length); }); it("registers the program", () => { expect(program.version).toHaveBeenCalledWith(version); expect(program.version().on).toHaveBeenCalled(); }); });