diff --git a/AGENT.md b/AGENT.md new file mode 100644 index 0000000..d005a4a --- /dev/null +++ b/AGENT.md @@ -0,0 +1,3 @@ +This app uses the gauss formula engine which is in this path /home/chief/gaussformula + +Reference it whenever we have engine related issues to address or to provide more context about what we are building diff --git a/src/test/setup.ts b/tests/setup.ts similarity index 100% rename from src/test/setup.ts rename to tests/setup.ts diff --git a/src/app/analysisState.test.ts b/tests/unit/app/analysisState.test.ts similarity index 95% rename from src/app/analysisState.test.ts rename to tests/unit/app/analysisState.test.ts index fe23b91..dfeeb04 100644 --- a/src/app/analysisState.test.ts +++ b/tests/unit/app/analysisState.test.ts @@ -1,6 +1,6 @@ import { describe, expect, it } from 'vitest' -import { deriveAnalysisState, getColumnName } from './analysisState' +import { deriveAnalysisState, getColumnName } from '../../../src/app/analysisState' describe('analysisState', () => { it('formats spreadsheet column labels', () => { diff --git a/src/assistant/proposals.test.ts b/tests/unit/assistant/proposals.test.ts similarity index 98% rename from src/assistant/proposals.test.ts rename to tests/unit/assistant/proposals.test.ts index 534ad23..43bbd45 100644 --- a/src/assistant/proposals.test.ts +++ b/tests/unit/assistant/proposals.test.ts @@ -1,14 +1,14 @@ import { describe, expect, it } from "vitest"; -import { GaussFormulaEngine } from "../lib/formulaEngine"; -import { cellAddressToA1 } from "./address"; -import type { WorkbookSnapshot } from "./workbookSnapshot"; +import { cellAddressToA1 } from "../../../src/assistant/address"; import { applyAssistantChangesToEngine, extractAssistantProposalFromText, stripAssistantProposalFromText, validateAssistantProposal, -} from "./proposals"; +} from "../../../src/assistant/proposals"; +import type { WorkbookSnapshot } from "../../../src/assistant/workbookSnapshot"; +import { GaussFormulaEngine } from "../../../src/lib/formulaEngine"; const snapshot: WorkbookSnapshot = { sheetName: "Sheet1", diff --git a/src/assistant/workbookSnapshot.test.ts b/tests/unit/assistant/workbookSnapshot.test.ts similarity index 93% rename from src/assistant/workbookSnapshot.test.ts rename to tests/unit/assistant/workbookSnapshot.test.ts index 37af90a..278d547 100644 --- a/src/assistant/workbookSnapshot.test.ts +++ b/tests/unit/assistant/workbookSnapshot.test.ts @@ -1,8 +1,11 @@ import { describe, expect, it } from "vitest"; -import { GaussFormulaEngine } from "../lib/formulaEngine"; -import { cellAddressFromA1, cellAddressToA1 } from "./address"; -import { buildWorkbookSnapshot } from "./workbookSnapshot"; +import { + cellAddressFromA1, + cellAddressToA1, +} from "../../../src/assistant/address"; +import { buildWorkbookSnapshot } from "../../../src/assistant/workbookSnapshot"; +import { GaussFormulaEngine } from "../../../src/lib/formulaEngine"; describe("assistant workbook snapshot", () => { it("converts between zero-based coordinates and A1 addresses", () => { diff --git a/src/components/charts/distributionChartOptions.test.ts b/tests/unit/components/charts/distributionChartOptions.test.ts similarity index 97% rename from src/components/charts/distributionChartOptions.test.ts rename to tests/unit/components/charts/distributionChartOptions.test.ts index 6593f66..94b2184 100644 --- a/src/components/charts/distributionChartOptions.test.ts +++ b/tests/unit/components/charts/distributionChartOptions.test.ts @@ -12,7 +12,7 @@ import { type DistributionChartModelFromDataInput, type DistributionChartModelInput, type DistributionQueryState, -} from './distributionChartOptions' +} from '../../../../src/components/charts/distributionChartOptions' const themeColors: ChartThemeColors = { textPrimary: '#1f2d2d', diff --git a/src/components/flow-diagram/useLayoutNodes.test.ts b/tests/unit/components/flow-diagram/useLayoutNodes.test.ts similarity index 96% rename from src/components/flow-diagram/useLayoutNodes.test.ts rename to tests/unit/components/flow-diagram/useLayoutNodes.test.ts index 8983515..2041e1a 100644 --- a/src/components/flow-diagram/useLayoutNodes.test.ts +++ b/tests/unit/components/flow-diagram/useLayoutNodes.test.ts @@ -6,7 +6,7 @@ import { shouldAutoFitAfterGraphRefresh, type LayoutEdge, type LayoutNode, -} from "./useLayoutNodes"; +} from "../../../../src/components/flow-diagram/useLayoutNodes"; const node = (id: string): LayoutNode => ({ id, diff --git a/src/components/spreadsheet/cellFormatting.test.ts b/tests/unit/components/spreadsheet/cellFormatting.test.ts similarity index 93% rename from src/components/spreadsheet/cellFormatting.test.ts rename to tests/unit/components/spreadsheet/cellFormatting.test.ts index a5efd31..59a575a 100644 --- a/src/components/spreadsheet/cellFormatting.test.ts +++ b/tests/unit/components/spreadsheet/cellFormatting.test.ts @@ -1,6 +1,6 @@ import { describe, expect, it } from 'vitest' -import { formatCellValue } from './cellFormatting' +import { formatCellValue } from '../../../../src/components/spreadsheet/cellFormatting' const sampledValue = { samples: [1, 2, 3], diff --git a/src/examples/examples.test.ts b/tests/unit/examples/examples.test.ts similarity index 92% rename from src/examples/examples.test.ts rename to tests/unit/examples/examples.test.ts index 2b1b7be..734956d 100644 --- a/src/examples/examples.test.ts +++ b/tests/unit/examples/examples.test.ts @@ -1,7 +1,7 @@ import { describe, expect, it } from "vitest"; -import { spreadsheetExamples } from "./examples"; -import { GaussFormulaEngine } from "../lib/formulaEngine"; +import { spreadsheetExamples } from "../../../src/examples/examples"; +import { GaussFormulaEngine } from "../../../src/lib/formulaEngine"; const a1ToAddress = (address: string) => { const match = address.match(/^([A-Z]+)(\d+)$/); diff --git a/src/hooks/useFormulaBar.test.ts b/tests/unit/hooks/useFormulaBar.test.ts similarity index 82% rename from src/hooks/useFormulaBar.test.ts rename to tests/unit/hooks/useFormulaBar.test.ts index 1b56af1..c16a54b 100644 --- a/src/hooks/useFormulaBar.test.ts +++ b/tests/unit/hooks/useFormulaBar.test.ts @@ -1,6 +1,6 @@ import { describe, expect, it } from "vitest"; -import { formatFormulaBarCellValue } from "./useFormulaBar"; +import { formatFormulaBarCellValue } from "../../../src/hooks/useFormulaBar"; describe("formatFormulaBarCellValue", () => { it("formats variance-backed summaries as standard deviation", () => { diff --git a/src/test/packageBoundary.test.ts b/tests/unit/package-boundary/packageBoundary.test.ts similarity index 94% rename from src/test/packageBoundary.test.ts rename to tests/unit/package-boundary/packageBoundary.test.ts index 67cbe5a..3c9cb7b 100644 --- a/src/test/packageBoundary.test.ts +++ b/tests/unit/package-boundary/packageBoundary.test.ts @@ -5,7 +5,7 @@ import { resolve } from 'node:path' import { describe, expect, it } from 'vitest' -import { GaussFormulaEngine } from '../lib/formulaEngine' +import { GaussFormulaEngine } from '../../../src/lib/formulaEngine' const packageJson = JSON.parse( readFileSync(resolve(process.cwd(), 'package.json'), 'utf8'), diff --git a/src/server/assistantRoute.test.ts b/tests/unit/server/assistantRoute.test.ts similarity index 98% rename from src/server/assistantRoute.test.ts rename to tests/unit/server/assistantRoute.test.ts index b507b97..8cfc255 100644 --- a/src/server/assistantRoute.test.ts +++ b/tests/unit/server/assistantRoute.test.ts @@ -1,8 +1,8 @@ import type { streamText } from "ai"; import { describe, expect, it, vi } from "vitest"; -import { DEFAULT_ASSISTANT_MODEL_ID } from "../assistant/modelOptions"; -import { createAssistantHandler } from "./assistantRoute"; +import { DEFAULT_ASSISTANT_MODEL_ID } from "../../../src/assistant/modelOptions"; +import { createAssistantHandler } from "../../../src/server/assistantRoute"; type StreamTextOptions = Parameters[0]; diff --git a/src/server/projectEnv.test.ts b/tests/unit/server/projectEnv.test.ts similarity index 96% rename from src/server/projectEnv.test.ts rename to tests/unit/server/projectEnv.test.ts index 9e84bc8..0612eee 100644 --- a/src/server/projectEnv.test.ts +++ b/tests/unit/server/projectEnv.test.ts @@ -4,7 +4,7 @@ import { join } from "node:path"; import { afterEach, describe, expect, it } from "vitest"; -import { getProjectEnvValue } from "./projectEnv"; +import { getProjectEnvValue } from "../../../src/server/projectEnv"; const originalOpenAiApiKey = process.env.OPENAI_API_KEY; let tempDirectories: string[] = []; diff --git a/src/utils/visual-dependency-graph/graphQueries.test.ts b/tests/unit/utils/visual-dependency-graph/graphQueries.test.ts similarity index 97% rename from src/utils/visual-dependency-graph/graphQueries.test.ts rename to tests/unit/utils/visual-dependency-graph/graphQueries.test.ts index 7121a21..846254f 100644 --- a/src/utils/visual-dependency-graph/graphQueries.test.ts +++ b/tests/unit/utils/visual-dependency-graph/graphQueries.test.ts @@ -1,13 +1,13 @@ import { describe, expect, it } from "vitest"; -import type { VisualDependencyGraph } from "../../types/visualDependencyGraph"; +import type { VisualDependencyGraph } from "../../../../src/types/visualDependencyGraph"; import { buildVisualGraphIndex, getDefaultFocusMode, getEdgeFocusState, getFocusCounts, getFocusState, -} from "./graphQueries"; +} from "../../../../src/utils/visual-dependency-graph/graphQueries"; const graph: VisualDependencyGraph = { nodes: [ diff --git a/src/utils/visual-dependency-graph/visualDependencyGraphAdapter.test.ts b/tests/unit/utils/visual-dependency-graph/visualDependencyGraphAdapter.test.ts similarity index 88% rename from src/utils/visual-dependency-graph/visualDependencyGraphAdapter.test.ts rename to tests/unit/utils/visual-dependency-graph/visualDependencyGraphAdapter.test.ts index 8f640fa..b48656a 100644 --- a/src/utils/visual-dependency-graph/visualDependencyGraphAdapter.test.ts +++ b/tests/unit/utils/visual-dependency-graph/visualDependencyGraphAdapter.test.ts @@ -1,7 +1,7 @@ import { describe, expect, it } from 'vitest' -import type { VisualDependencyGraph } from '../../types/visualDependencyGraph' -import { toFlowDiagramElements } from './visualDependencyGraphAdapter' +import type { VisualDependencyGraph } from '../../../../src/types/visualDependencyGraph' +import { toFlowDiagramElements } from '../../../../src/utils/visual-dependency-graph/visualDependencyGraphAdapter' describe('toFlowDiagramElements', () => { it('maps graph payload into React Flow nodes and edges', () => { diff --git a/src/utils/visual-dependency-graph/visualDependencyGraphFormatter.test.ts b/tests/unit/utils/visual-dependency-graph/visualDependencyGraphFormatter.test.ts similarity index 85% rename from src/utils/visual-dependency-graph/visualDependencyGraphFormatter.test.ts rename to tests/unit/utils/visual-dependency-graph/visualDependencyGraphFormatter.test.ts index 78ad795..e50cb48 100644 --- a/src/utils/visual-dependency-graph/visualDependencyGraphFormatter.test.ts +++ b/tests/unit/utils/visual-dependency-graph/visualDependencyGraphFormatter.test.ts @@ -1,6 +1,6 @@ import { describe, expect, it } from 'vitest' -import { formatVisualDependencyValue } from './visualDependencyGraphFormatter' +import { formatVisualDependencyValue } from '../../../../src/utils/visual-dependency-graph/visualDependencyGraphFormatter' describe('formatVisualDependencyValue', () => { it('formats scalar values', () => { diff --git a/vitest.config.ts b/vitest.config.ts index 68ab34d..64d774d 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -3,8 +3,8 @@ import { defineConfig } from 'vitest/config' export default defineConfig({ test: { environment: 'node', - include: ['src/**/*.test.ts'], + include: ['tests/unit/**/*.test.ts'], passWithNoTests: true, - setupFiles: ['src/test/setup.ts'], + setupFiles: ['tests/setup.ts'], }, })