From 94bb56ae4656c1fc55bbb89d62d7955c39ac51d7 Mon Sep 17 00:00:00 2001 From: "E. Cooper" Date: Mon, 13 Jan 2025 13:34:01 -0800 Subject: [PATCH] Move command tests into a commands dir in test/ (#557) --- test/{general-cli.mjs => cli.mjs} | 0 test/{ => commands}/database/create.mjs | 8 ++++---- test/{ => commands}/database/database.mjs | 4 ++-- test/{ => commands}/database/delete.mjs | 8 ++++---- test/{ => commands}/database/list.mjs | 10 +++++----- test/{ => commands}/local.mjs | 8 ++++---- test/{ => commands}/login.mjs | 6 +++--- test/{ => commands}/query.mjs | 12 ++++++------ test/{ => commands}/schema/abandon.mjs | 6 +++--- test/{ => commands}/schema/commit.mjs | 6 +++--- test/{ => commands}/schema/diff.mjs | 8 ++++---- test/{ => commands}/schema/pull.mjs | 8 ++++---- test/{ => commands}/schema/push.mjs | 8 ++++---- test/{ => commands}/schema/schema.mjs | 6 +++--- test/{ => commands}/schema/status.mjs | 8 ++++---- test/{ => commands}/shell.mjs | 19 +++++++++++-------- 16 files changed, 64 insertions(+), 61 deletions(-) rename test/{general-cli.mjs => cli.mjs} (100%) rename test/{ => commands}/database/create.mjs (96%) rename test/{ => commands}/database/database.mjs (89%) rename test/{ => commands}/database/delete.mjs (94%) rename test/{ => commands}/database/list.mjs (94%) rename test/{ => commands}/local.mjs (98%) rename test/{ => commands}/login.mjs (96%) rename test/{ => commands}/query.mjs (97%) rename test/{ => commands}/schema/abandon.mjs (95%) rename test/{ => commands}/schema/commit.mjs (95%) rename test/{ => commands}/schema/diff.mjs (94%) rename test/{ => commands}/schema/pull.mjs (97%) rename test/{ => commands}/schema/push.mjs (96%) rename test/{ => commands}/schema/schema.mjs (92%) rename test/{ => commands}/schema/status.mjs (97%) rename test/{ => commands}/shell.mjs (96%) diff --git a/test/general-cli.mjs b/test/cli.mjs similarity index 100% rename from test/general-cli.mjs rename to test/cli.mjs diff --git a/test/database/create.mjs b/test/commands/database/create.mjs similarity index 96% rename from test/database/create.mjs rename to test/commands/database/create.mjs index a7500992..06058ead 100644 --- a/test/database/create.mjs +++ b/test/commands/database/create.mjs @@ -4,10 +4,10 @@ import { expect } from "chai"; import { fql, ServiceError } from "fauna"; import sinon from "sinon"; -import { run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; -import { AUTHENTICATION_ERROR_MESSAGE } from "../../src/lib/errors.mjs"; -import { mockAccessKeysFile } from "../helpers.mjs"; +import { run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; +import { AUTHENTICATION_ERROR_MESSAGE } from "../../../src/lib/errors.mjs"; +import { mockAccessKeysFile } from "../../helpers.mjs"; describe("database create", () => { let container, logger, runQuery, accountAPI; diff --git a/test/database/database.mjs b/test/commands/database/database.mjs similarity index 89% rename from test/database/database.mjs rename to test/commands/database/database.mjs index f04075fb..6ac4027d 100644 --- a/test/database/database.mjs +++ b/test/commands/database/database.mjs @@ -3,8 +3,8 @@ import { expect } from "chai"; import chalk from "chalk"; -import { builtYargs, run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; +import { builtYargs, run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; describe("database", () => { let container, logger; diff --git a/test/database/delete.mjs b/test/commands/database/delete.mjs similarity index 94% rename from test/database/delete.mjs rename to test/commands/database/delete.mjs index a2591eab..f6adf59d 100644 --- a/test/database/delete.mjs +++ b/test/commands/database/delete.mjs @@ -4,10 +4,10 @@ import { expect } from "chai"; import { fql, ServiceError } from "fauna"; import sinon from "sinon"; -import { run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; -import { AUTHENTICATION_ERROR_MESSAGE } from "../../src/lib/errors.mjs"; -import { mockAccessKeysFile } from "../helpers.mjs"; +import { run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; +import { AUTHENTICATION_ERROR_MESSAGE } from "../../../src/lib/errors.mjs"; +import { mockAccessKeysFile } from "../../helpers.mjs"; describe("database delete", () => { let container, logger, runQuery, accountAPI; diff --git a/test/database/list.mjs b/test/commands/database/list.mjs similarity index 94% rename from test/database/list.mjs rename to test/commands/database/list.mjs index ac8511a4..b708c36f 100644 --- a/test/database/list.mjs +++ b/test/commands/database/list.mjs @@ -4,11 +4,11 @@ import { expect } from "chai"; import { ServiceError } from "fauna"; import sinon from "sinon"; -import { run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; -import { AUTHENTICATION_ERROR_MESSAGE } from "../../src/lib/errors.mjs"; -import { colorize } from "../../src/lib/formatting/colorize.mjs"; -import { mockAccessKeysFile } from "../helpers.mjs"; +import { run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; +import { AUTHENTICATION_ERROR_MESSAGE } from "../../../src/lib/errors.mjs"; +import { colorize } from "../../../src/lib/formatting/colorize.mjs"; +import { mockAccessKeysFile } from "../../helpers.mjs"; describe("database list", () => { let container, fs, logger, stdout, runQueryFromString, accountAPI; diff --git a/test/local.mjs b/test/commands/local.mjs similarity index 98% rename from test/local.mjs rename to test/commands/local.mjs index f894b662..15562ebb 100644 --- a/test/local.mjs +++ b/test/commands/local.mjs @@ -5,10 +5,10 @@ import { expect } from "chai"; import { AbortError } from "fauna"; import sinon, { stub } from "sinon"; -import { run } from "../src/cli.mjs"; -import { setupTestContainer } from "../src/config/setup-test-container.mjs"; -import { reformatFSL } from "../src/lib/schema.mjs"; -import { f } from "./helpers.mjs"; +import { run } from "../../src/cli.mjs"; +import { setupTestContainer } from "../../src/config/setup-test-container.mjs"; +import { reformatFSL } from "../../src/lib/schema.mjs"; +import { f } from "../helpers.mjs"; describe("local command", () => { let container, diff --git a/test/login.mjs b/test/commands/login.mjs similarity index 96% rename from test/login.mjs rename to test/commands/login.mjs index 27ea5779..b6f6c018 100644 --- a/test/login.mjs +++ b/test/commands/login.mjs @@ -4,9 +4,9 @@ import * as awilix from "awilix"; import { expect } from "chai"; import sinon, { spy } from "sinon"; -import { run } from "../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../src/config/setup-test-container.mjs"; -import { f } from "./helpers.mjs"; +import { run } from "../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; +import { f } from "../helpers.mjs"; describe("login", function () { let container, fs, fetch, getSession; diff --git a/test/query.mjs b/test/commands/query.mjs similarity index 97% rename from test/query.mjs rename to test/commands/query.mjs index 56af5a71..45cba6df 100644 --- a/test/query.mjs +++ b/test/commands/query.mjs @@ -4,17 +4,17 @@ import { expect } from "chai"; import { NetworkError, ServiceError } from "fauna"; import sinon from "sinon"; -import { run } from "../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../src/config/setup-test-container.mjs"; -import { NETWORK_ERROR_MESSAGE } from "../src/lib/errors.mjs"; -import { colorize } from "../src/lib/formatting/colorize.mjs"; -import { QUERY_INFO_CHOICES } from "../src/lib/options.mjs"; +import { run } from "../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; +import { NETWORK_ERROR_MESSAGE } from "../../src/lib/errors.mjs"; +import { colorize } from "../../src/lib/formatting/colorize.mjs"; +import { QUERY_INFO_CHOICES } from "../../src/lib/options.mjs"; import { createV4QueryFailure, createV4QuerySuccess, createV10QueryFailure, createV10QuerySuccess, -} from "./helpers.mjs"; +} from "../helpers.mjs"; describe("query", function () { let container, logger, runQueryFromString; diff --git a/test/schema/abandon.mjs b/test/commands/schema/abandon.mjs similarity index 95% rename from test/schema/abandon.mjs rename to test/commands/schema/abandon.mjs index 07a5f3f3..dcc5102b 100644 --- a/test/schema/abandon.mjs +++ b/test/commands/schema/abandon.mjs @@ -5,9 +5,9 @@ import chalk from "chalk"; import sinon from "sinon"; import tryToCatch from "try-to-catch"; -import { run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; -import { buildUrl, commonFetchParams, f } from "../helpers.mjs"; +import { run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; +import { buildUrl, commonFetchParams, f } from "../../helpers.mjs"; describe("schema abandon", function () { let diff = diff --git a/test/schema/commit.mjs b/test/commands/schema/commit.mjs similarity index 95% rename from test/schema/commit.mjs rename to test/commands/schema/commit.mjs index 30f8e2c8..8cded0bf 100644 --- a/test/schema/commit.mjs +++ b/test/commands/schema/commit.mjs @@ -5,9 +5,9 @@ import chalk from "chalk"; import sinon from "sinon"; import tryToCatch from "try-to-catch"; -import { run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; -import { buildUrl, commonFetchParams, f } from "../helpers.mjs"; +import { run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; +import { buildUrl, commonFetchParams, f } from "../../helpers.mjs"; describe("schema commit", function () { const textDiff = diff --git a/test/schema/diff.mjs b/test/commands/schema/diff.mjs similarity index 94% rename from test/schema/diff.mjs rename to test/commands/schema/diff.mjs index 1b98be1a..709c511c 100644 --- a/test/schema/diff.mjs +++ b/test/commands/schema/diff.mjs @@ -2,10 +2,10 @@ import { expect } from "chai"; -import { run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; -import { reformatFSL } from "../../src/lib/schema.mjs"; -import { buildUrl, commonFetchParams, f } from "../helpers.mjs"; +import { run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; +import { reformatFSL } from "../../../src/lib/schema.mjs"; +import { buildUrl, commonFetchParams, f } from "../../helpers.mjs"; describe("schema diff", function () { const colorDiffString = diff --git a/test/schema/pull.mjs b/test/commands/schema/pull.mjs similarity index 97% rename from test/schema/pull.mjs rename to test/commands/schema/pull.mjs index 566a8125..1762e3d6 100644 --- a/test/schema/pull.mjs +++ b/test/commands/schema/pull.mjs @@ -4,14 +4,14 @@ import * as awilix from "awilix"; import { expect } from "chai"; import sinon from "sinon"; -import { run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; +import { run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; import { deleteUnusedSchemaFiles, getAllSchemaFileContents, writeSchemaFiles, -} from "../../src/lib/schema.mjs"; -import { buildUrl, commonFetchParams, f } from "../helpers.mjs"; +} from "../../../src/lib/schema.mjs"; +import { buildUrl, commonFetchParams, f } from "../../helpers.mjs"; describe("schema pull", function () { let container, logger, confirm, fetch, fs, fsp, gatherFSL; diff --git a/test/schema/push.mjs b/test/commands/schema/push.mjs similarity index 96% rename from test/schema/push.mjs rename to test/commands/schema/push.mjs index eee7324b..85ff2c8e 100644 --- a/test/schema/push.mjs +++ b/test/commands/schema/push.mjs @@ -5,10 +5,10 @@ import chalk from "chalk"; import path from "path"; import sinon from "sinon"; -import { builtYargs, run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; -import { reformatFSL } from "../../src/lib/schema.mjs"; -import { buildUrl, f } from "../helpers.mjs"; +import { builtYargs, run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; +import { reformatFSL } from "../../../src/lib/schema.mjs"; +import { buildUrl, f } from "../../helpers.mjs"; describe("schema push", function () { const diffString = diff --git a/test/schema/schema.mjs b/test/commands/schema/schema.mjs similarity index 92% rename from test/schema/schema.mjs rename to test/commands/schema/schema.mjs index ff8980b9..b8123909 100644 --- a/test/schema/schema.mjs +++ b/test/commands/schema/schema.mjs @@ -4,12 +4,12 @@ import { expect } from "chai"; import chalk from "chalk"; import sinon from "sinon"; -import { builtYargs, run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; +import { builtYargs, run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; import { AUTHENTICATION_ERROR_MESSAGE, NETWORK_ERROR_MESSAGE, -} from "../../src/lib/errors.mjs"; +} from "../../../src/lib/errors.mjs"; describe("schema", function () { let container, logger, stderr; diff --git a/test/schema/status.mjs b/test/commands/schema/status.mjs similarity index 97% rename from test/schema/status.mjs rename to test/commands/schema/status.mjs index b100f949..4fbbd76b 100644 --- a/test/schema/status.mjs +++ b/test/commands/schema/status.mjs @@ -4,10 +4,10 @@ import { expect } from "chai"; import chalk from "chalk"; import sinon from "sinon"; -import { run } from "../../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; -import { reformatFSL } from "../../src/lib/schema.mjs"; -import { buildUrl, commonFetchParams, f } from "../helpers.mjs"; +import { run } from "../../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../../src/config/setup-test-container.mjs"; +import { reformatFSL } from "../../../src/lib/schema.mjs"; +import { buildUrl, commonFetchParams, f } from "../../helpers.mjs"; describe("schema status", function () { let container, fetch, logger, gatherFSL; diff --git a/test/shell.mjs b/test/commands/shell.mjs similarity index 96% rename from test/shell.mjs rename to test/commands/shell.mjs index 22acfc17..f82185bf 100644 --- a/test/shell.mjs +++ b/test/commands/shell.mjs @@ -9,13 +9,16 @@ import { expect } from "chai"; import { NetworkError } from "fauna"; import sinon, { stub } from "sinon"; -import { run } from "../src/cli.mjs"; -import { setupTestContainer as setupContainer } from "../src/config/setup-test-container.mjs"; -import { NETWORK_ERROR_MESSAGE, ValidationError } from "../src/lib/errors.mjs"; -import { isQueryable } from "../src/lib/fauna-client.mjs"; -import { dirExists } from "../src/lib/file-util.mjs"; -import { colorize } from "../src/lib/formatting/colorize.mjs"; -import { createV4QuerySuccess, createV10QuerySuccess } from "./helpers.mjs"; +import { run } from "../../src/cli.mjs"; +import { setupTestContainer as setupContainer } from "../../src/config/setup-test-container.mjs"; +import { + NETWORK_ERROR_MESSAGE, + ValidationError, +} from "../../src/lib/errors.mjs"; +import { isQueryable } from "../../src/lib/fauna-client.mjs"; +import { dirExists } from "../../src/lib/file-util.mjs"; +import { colorize } from "../../src/lib/formatting/colorize.mjs"; +import { createV4QuerySuccess, createV10QuerySuccess } from "../helpers.mjs"; // this is defined up here so the indentation doesn't make it harder to use :( const v10Object1 = createV10QuerySuccess({ @@ -132,7 +135,7 @@ describe("shell", function () { const registerHomedir = (container, subdir = "") => { const __dirname = import.meta.dirname; - const homedir = path.join(__dirname, "../test/test-homedir", subdir); + const homedir = path.join(__dirname, "../../test/test-homedir", subdir); container.register({ homedir: awilix.asValue(stub().returns(homedir)),