/
foult080
/
terminal-db
Обзор
Документация
Войти
/
foult080
/
terminal-db
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
tests/cli/parse-args.test.ts
100 строк
3 KB
foult080
new try to fix errors
14 июл 2026, 09:41
14 июл 2026, 09:41
d589162
Код
Авторство
О чём код?
import { describe, expect, it } from "vitest" import { parseArgs } from "../../src/cli/CliApp.js" describe("parseArgs", () => { it("parses --help flag", () => { const opts = parseArgs(["node", "tdb", "--help"]) expect(opts.help).toBe(true) }) it("parses -h flag", () => { const opts = parseArgs(["node", "tdb", "-h"]) expect(opts.help).toBe(true) }) it("parses --version flag", () => { const opts = parseArgs(["node", "tdb", "--version"]) expect(opts.version).toBe(true) }) it("parses -v flag", () => { const opts = parseArgs(["node", "tdb", "-v"]) expect(opts.version).toBe(true) }) it("parses --host", () => { const opts = parseArgs(["node", "tdb", "--host", "db.example.com"]) expect(opts.host).toBe("db.example.com") }) it("parses --port", () => { const opts = parseArgs(["node", "tdb", "--port", "5433"]) expect(opts.port).toBe("5433") }) it("parses --db", () => { const opts = parseArgs(["node", "tdb", "--db", "mydb"]) expect(opts.database).toBe("mydb") }) it("parses --user", () => { const opts = parseArgs(["node", "tdb", "--user", "admin"]) expect(opts.user).toBe("admin") }) it("parses --password", () => { const opts = parseArgs(["node", "tdb", "--password", "secret"]) expect(opts.password).toBe("secret") }) it("parses --type mongodb", () => { const opts = parseArgs(["node", "tdb", "--type", "mongodb"]) expect(opts.type).toBe("mongodb") }) it("parses --db-type as alias for --type", () => { const opts = parseArgs(["node", "tdb", "--db-type", "mongodb"]) expect(opts.type).toBe("mongodb") }) it("parses --config", () => { const opts = parseArgs(["node", "tdb", "--config", "/path/to/config"]) expect(opts.configFile).toBe("/path/to/config") }) it("parses multiple flags together", () => { const opts = parseArgs([ "node", "tdb", "--host", "localhost", "--port", "5432", "--db", "testdb", "--user", "postgres", "--password", "pwd", "--type", "postgres", ]) expect(opts.host).toBe("localhost") expect(opts.port).toBe("5432") expect(opts.database).toBe("testdb") expect(opts.user).toBe("postgres") expect(opts.password).toBe("pwd") expect(opts.type).toBe("postgres") }) it("handles empty string password value", () => { const opts = parseArgs(["node", "tdb", "--password", ""]) expect(opts.password).toBe("") }) it("skips missing values for flags with adjacent flag", () => { const opts = parseArgs(["node", "tdb", "--host", "--port", "5432"]) expect(opts.host).toBe("--port") expect(opts.port).toBeUndefined() }) })