diff --git a/src/scanner.ts b/src/scanner.ts index bb6aee2..8d7ca66 100644 --- a/src/scanner.ts +++ b/src/scanner.ts @@ -648,10 +648,10 @@ async function detectFrameworks( } catch {} } - // Roku / SceneGraph — plain-text `manifest` file at root with title + major_version. - // Also matches the rokucommunity/brighterscript-template layout where the - // manifest lives under `src/` and root carries a bsconfig.json marker. - if (await hasRokuManifest(root) || await detectBrighterScriptTemplateRoot(root)) { + // Roku / SceneGraph — plain-text `manifest` at root, bsconfig.json template + // layouts, or `brighterscript` package in devDependencies (enterprise builds + // that generate the manifest at package time). + if (await hasRokuManifest(root) || await detectBrighterScriptTemplateRoot(root) || deps["brighterscript"]) { frameworks.push("roku-scenegraph"); } @@ -817,7 +817,7 @@ async function detectLanguage( const hasCsproj = await (async () => { try { return (await readdir(root)).some((e) => e.endsWith(".csproj") || e.endsWith(".sln")); } catch { return false; } })(); - const hasRokuChannel = await hasRokuManifest(root) || await detectBrighterScriptTemplateRoot(root); + const hasRokuChannel = await hasRokuManifest(root) || await detectBrighterScriptTemplateRoot(root) || !!deps["brighterscript"]; const langs: string[] = []; if (hasTsConfig || deps["typescript"]) langs.push("typescript"); @@ -1315,14 +1315,18 @@ export async function hasRokuManifest(dir: string): Promise { } /** - * Detect the `rokucommunity/brighterscript-template` layout: - * - no manifest at root - * - bsconfig.json at root (BrighterScript project marker) - * - exactly one `src/manifest` with the standard channel signature + * Detect BrighterScript-based Roku channel roots without a `manifest` file. + * + * Two layouts are recognized: * - * Treat the root as a single Roku channel rooted at `src/`. Prevents the - * generic monorepo walker from promoting `src/` to a workspace and leaving - * the root framework as `raw-http`. + * 1. rokucommunity/brighterscript-template — bsconfig.json at root, + * channel under `src/manifest`. + * + * 2. Enterprise / custom layout — bsconfig.json at root with `rootDir: ""` + * (channel root IS the project root). Manifest is absent because it is + * generated at build time (e.g. python/gulp build scripts). The canonical + * Roku directories `source/` and `components/` with at least one .brs + * file serve as the structural signal instead. */ export async function detectBrighterScriptTemplateRoot(dir: string): Promise { if (await hasRokuManifest(dir)) return false; @@ -1332,7 +1336,20 @@ export async function detectBrighterScriptTemplateRoot(dir: string): Promise => { + try { + const entries = await readdir(join(dir, subdir), { withFileTypes: true }); + return entries.some((e) => e.isFile() && (e.name.endsWith(".brs") || e.name.endsWith(".bs"))); + } catch { + return false; + } + }; + if (await hasBrsIn("source")) return true; + if (await hasBrsIn("components")) return true; + return false; } /** diff --git a/tests/detectors.test.ts b/tests/detectors.test.ts index 58d7516..6576374 100644 --- a/tests/detectors.test.ts +++ b/tests/detectors.test.ts @@ -1192,4 +1192,111 @@ end sub `expected m.global.token middleware, got ${middleware.map((mw: any) => mw.name).join(", ")}` ); }); + + it("detects bsconfig.json + source/*.brs layout without a manifest file (Layout 2)", async () => { + // Enterprise layout: manifest is generated at build time so it is absent + // from the repo. Detection must fall back to bsconfig.json + source/*.brs. + const dir = await writeFixture("roku-bsconfig-no-manifest", { + "package.json": JSON.stringify({ + name: "my-roku-app", + devDependencies: { brighterscript: "^0.70.3" }, + }), + "bsconfig.json": JSON.stringify({ rootDir: "" }), + "source/main.brs": `sub Main()\n screen = CreateObject("roSGScreen")\nend sub\n`, + "source/utils/StringUtils.brs": `function trim(s as string) as string\n return s.trim()\nend function\n`, + "components/MainScene.xml": ` + + + + + +`, + }); + + const project = await mods.detectProject(dir); + assert.ok( + project.frameworks.includes("roku-scenegraph"), + `expected roku-scenegraph, got: ${project.frameworks.join(", ")}` + ); + assert.equal(project.language, "brightscript", `expected brightscript, got ${project.language}`); + assert.ok(!project.isMonorepo, "no-manifest channel must not be promoted to monorepo"); + + const files = await mods.collectFiles(dir); + const libs = await mods.detectLibs(files, project); + assert.ok( + libs.some((l: any) => l.file.includes("StringUtils.brs")), + `expected StringUtils.brs in libs, got: ${libs.map((l: any) => l.file).join(", ")}` + ); + }); + + it("detects apmc-roku-style layout: bsconfig.json at root, source/ + components/ subdirs, lib/, no manifest", async () => { + // Models the actual apmc-roku project: bsconfig.json with rootDir:"", + // source/ for app code, components/ for SceneGraph XML, lib/ for + // third-party BRS, and no manifest (generated by build scripts). + const dir = await writeFixture("roku-apmc-style", { + "package.json": JSON.stringify({ + name: "apmc-roku", + devDependencies: { + brighterscript: "^0.70.3", + "@rokucommunity/bslint": "^0.8.38", + }, + }), + "bsconfig.json": JSON.stringify({ extends: "./configs/brightscript/bsconfig.base.json" }), + "source/main.brs": `sub Main()\n screen = CreateObject("roSGScreen")\nend sub\n`, + "source/utils/NavUtils.brs": `function getNavNode(item as object) as object\n return invalid\nend function\n`, + "source/utils/AnalyticsUtils.brs": `function trackEvent(name as string) as void\nend function\n`, + "lib/rafxssai.brs": `function RafInit() as void\nend function\n`, + "components/MainScene.xml": ` + + + + + + +`, + "components/MainScene.brs": `sub init()\n m.top.observeField("exitApp", "onExitApp")\nend sub\nfunction onExitApp() as void\nend function\n`, + "components/nodes/HomeView.xml": ` + + + + + +`, + }); + + const project = await mods.detectProject(dir); + assert.ok( + project.frameworks.includes("roku-scenegraph"), + `expected roku-scenegraph, got: ${project.frameworks.join(", ")}` + ); + assert.equal(project.language, "brightscript", `expected brightscript, got ${project.language}`); + assert.ok(!project.isMonorepo, "single-channel repo must not be promoted to monorepo"); + + const files = await mods.collectFiles(dir); + + // lib/ third-party BRS should appear in libs + const libs = await mods.detectLibs(files, project); + assert.ok( + libs.some((l: any) => l.file.includes("rafxssai.brs")), + `expected lib/rafxssai.brs in libs, got: ${libs.map((l: any) => l.file).join(", ")}` + ); + assert.ok( + libs.some((l: any) => l.file.includes("NavUtils.brs")), + `expected NavUtils.brs in libs, got: ${libs.map((l: any) => l.file).join(", ")}` + ); + + // observeField in MainScene.brs should surface as middleware + const middleware = await mods.detectMiddleware(files, project); + assert.ok( + middleware.some((mw: any) => mw.name.includes("observeField(exitApp)")), + `expected observeField(exitApp) middleware, got: ${middleware.map((mw: any) => mw.name).join(", ")}` + ); + + // HomeView schema from nodes/ subdirectory + const schemas = await mods.detectSchemas(files, project); + assert.ok( + schemas.some((s: any) => s.name === "HomeView"), + `expected HomeView schema, got: ${schemas.map((s: any) => s.name).join(", ")}` + ); + }); }); diff --git a/tests/fixtures/celery-detect/requirements.txt b/tests/fixtures/celery-detect/requirements.txt new file mode 100644 index 0000000..d3323c8 --- /dev/null +++ b/tests/fixtures/celery-detect/requirements.txt @@ -0,0 +1,2 @@ +celery +redis diff --git a/tests/fixtures/celery-detect/tasks.py b/tests/fixtures/celery-detect/tasks.py new file mode 100644 index 0000000..7609bfe --- /dev/null +++ b/tests/fixtures/celery-detect/tasks.py @@ -0,0 +1,6 @@ +from celery import Celery +app = Celery("worker") + +@app.task +def ping(): + return "pong" diff --git a/tests/fixtures/celery-events/requirements.txt b/tests/fixtures/celery-events/requirements.txt new file mode 100644 index 0000000..74f9e8f --- /dev/null +++ b/tests/fixtures/celery-events/requirements.txt @@ -0,0 +1 @@ +celery diff --git a/tests/fixtures/celery-events/tasks.py b/tests/fixtures/celery-events/tasks.py new file mode 100644 index 0000000..0977e17 --- /dev/null +++ b/tests/fixtures/celery-events/tasks.py @@ -0,0 +1,14 @@ +from celery import Celery, shared_task +app = Celery("worker") + +@app.task +def add(x, y): + return x + y + +@shared_task +def cleanup(): + return True + +@app.task(bind=True, name="billing.report_usage_to_stripe", max_retries=3) +def report_usage_to_stripe_task(self): + return None diff --git a/tests/fixtures/celery-pyproject-detect/pyproject.toml b/tests/fixtures/celery-pyproject-detect/pyproject.toml new file mode 100644 index 0000000..cb0d146 --- /dev/null +++ b/tests/fixtures/celery-pyproject-detect/pyproject.toml @@ -0,0 +1,6 @@ +[project] +name = "celery-worker" +dependencies = [ + "celery>=5.4.0", + "redis>=5.0.0", +] diff --git a/tests/fixtures/config-app/.env.example b/tests/fixtures/config-app/.env.example new file mode 100644 index 0000000..7d4c260 --- /dev/null +++ b/tests/fixtures/config-app/.env.example @@ -0,0 +1,3 @@ +DATABASE_URL= +JWT_SECRET= +PORT=3000 \ No newline at end of file diff --git a/tests/fixtures/config-app/package.json b/tests/fixtures/config-app/package.json new file mode 100644 index 0000000..357e8e2 --- /dev/null +++ b/tests/fixtures/config-app/package.json @@ -0,0 +1 @@ +{"name":"test"} \ No newline at end of file diff --git a/tests/fixtures/config-app/src/config.ts b/tests/fixtures/config-app/src/config.ts new file mode 100644 index 0000000..b77bec6 --- /dev/null +++ b/tests/fixtures/config-app/src/config.ts @@ -0,0 +1,2 @@ +const db = process.env.DATABASE_URL; +const port = process.env.PORT || 3000; \ No newline at end of file diff --git a/tests/fixtures/django-app/requirements.txt b/tests/fixtures/django-app/requirements.txt new file mode 100644 index 0000000..d3e4ba5 --- /dev/null +++ b/tests/fixtures/django-app/requirements.txt @@ -0,0 +1 @@ +django diff --git a/tests/fixtures/django-app/urls.py b/tests/fixtures/django-app/urls.py new file mode 100644 index 0000000..e0aa979 --- /dev/null +++ b/tests/fixtures/django-app/urls.py @@ -0,0 +1,5 @@ +from django.urls import path +urlpatterns = [ + path("api/users/", views.UserList.as_view()), + path("api/users//", views.UserDetail.as_view()), +] \ No newline at end of file diff --git a/tests/fixtures/drizzle-schema/package.json b/tests/fixtures/drizzle-schema/package.json new file mode 100644 index 0000000..2ab8dea --- /dev/null +++ b/tests/fixtures/drizzle-schema/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"drizzle-orm":"^0.30.0"}} \ No newline at end of file diff --git a/tests/fixtures/drizzle-schema/src/schema.ts b/tests/fixtures/drizzle-schema/src/schema.ts new file mode 100644 index 0000000..ee270d4 --- /dev/null +++ b/tests/fixtures/drizzle-schema/src/schema.ts @@ -0,0 +1,12 @@ +import { pgTable, text, uuid, timestamp, boolean } from "drizzle-orm/pg-core"; +export const users = pgTable("users", { + id: uuid("id").primaryKey().defaultRandom(), + email: text("email").notNull().unique(), + name: text("name").notNull(), + active: boolean("active").default(true), +}); +export const posts = pgTable("posts", { + id: uuid("id").primaryKey().defaultRandom(), + title: text("title").notNull(), + userId: uuid("user_id").references(() => users.id), +}); \ No newline at end of file diff --git a/tests/fixtures/elysia-app/package.json b/tests/fixtures/elysia-app/package.json new file mode 100644 index 0000000..dd7bf2e --- /dev/null +++ b/tests/fixtures/elysia-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"elysia":"^1.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/elysia-app/src/index.ts b/tests/fixtures/elysia-app/src/index.ts new file mode 100644 index 0000000..c3335fc --- /dev/null +++ b/tests/fixtures/elysia-app/src/index.ts @@ -0,0 +1,4 @@ +import { Elysia } from "elysia"; +const app = new Elysia() + .get("/api/health", () => "ok") + .post("/api/items", () => ({ created: true })); \ No newline at end of file diff --git a/tests/fixtures/elysia-detect/package.json b/tests/fixtures/elysia-detect/package.json new file mode 100644 index 0000000..dd7bf2e --- /dev/null +++ b/tests/fixtures/elysia-detect/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"elysia":"^1.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/express-app/package.json b/tests/fixtures/express-app/package.json new file mode 100644 index 0000000..749d35e --- /dev/null +++ b/tests/fixtures/express-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"express":"^4.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/express-app/src/routes.ts b/tests/fixtures/express-app/src/routes.ts new file mode 100644 index 0000000..ef853b4 --- /dev/null +++ b/tests/fixtures/express-app/src/routes.ts @@ -0,0 +1,6 @@ +import { Router } from "express"; +const router = Router(); +router.get("/users", (req, res) => res.json([])); +router.post("/users", (req, res) => res.json({})); +router.delete("/users/:id", (req, res) => res.json({})); +export default router; \ No newline at end of file diff --git a/tests/fixtures/fastapi-app/main.py b/tests/fixtures/fastapi-app/main.py new file mode 100644 index 0000000..87fecc8 --- /dev/null +++ b/tests/fixtures/fastapi-app/main.py @@ -0,0 +1,8 @@ +from fastapi import FastAPI +app = FastAPI() +@app.get("/users") +def get_users(): + return [] +@app.post("/users") +def create_user(): + return {} \ No newline at end of file diff --git a/tests/fixtures/fastapi-app/requirements.txt b/tests/fixtures/fastapi-app/requirements.txt new file mode 100644 index 0000000..97dc7cd --- /dev/null +++ b/tests/fixtures/fastapi-app/requirements.txt @@ -0,0 +1,2 @@ +fastapi +uvicorn diff --git a/tests/fixtures/fastify-app/package.json b/tests/fixtures/fastify-app/package.json new file mode 100644 index 0000000..9de5a5c --- /dev/null +++ b/tests/fixtures/fastify-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"fastify":"^4.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/fastify-app/src/server.ts b/tests/fixtures/fastify-app/src/server.ts new file mode 100644 index 0000000..b4d96d8 --- /dev/null +++ b/tests/fixtures/fastify-app/src/server.ts @@ -0,0 +1,5 @@ +import fastify from "fastify"; +const app = fastify(); +app.get("/health", async () => ({ status: "ok" })); +app.post("/items", async (req) => ({ created: true })); +export default app; \ No newline at end of file diff --git a/tests/fixtures/graph-app/package.json b/tests/fixtures/graph-app/package.json new file mode 100644 index 0000000..aff692f --- /dev/null +++ b/tests/fixtures/graph-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"hono":"^4.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/graph-app/src/auth.ts b/tests/fixtures/graph-app/src/auth.ts new file mode 100644 index 0000000..e1b5ffb --- /dev/null +++ b/tests/fixtures/graph-app/src/auth.ts @@ -0,0 +1,2 @@ +import { db } from "./db.js"; +export const auth = {}; \ No newline at end of file diff --git a/tests/fixtures/graph-app/src/db.ts b/tests/fixtures/graph-app/src/db.ts new file mode 100644 index 0000000..04cb237 --- /dev/null +++ b/tests/fixtures/graph-app/src/db.ts @@ -0,0 +1 @@ +export const db = {}; \ No newline at end of file diff --git a/tests/fixtures/graph-app/src/middleware.ts b/tests/fixtures/graph-app/src/middleware.ts new file mode 100644 index 0000000..81996f7 --- /dev/null +++ b/tests/fixtures/graph-app/src/middleware.ts @@ -0,0 +1,3 @@ +import { auth } from "./auth.js"; +import { db } from "./db.js"; +export const mw = {}; \ No newline at end of file diff --git a/tests/fixtures/graph-app/src/routes.ts b/tests/fixtures/graph-app/src/routes.ts new file mode 100644 index 0000000..2cf61c9 --- /dev/null +++ b/tests/fixtures/graph-app/src/routes.ts @@ -0,0 +1,3 @@ +import { db } from "./db.js"; +import { auth } from "./auth.js"; +export const routes = {}; \ No newline at end of file diff --git a/tests/fixtures/hono-app/package.json b/tests/fixtures/hono-app/package.json new file mode 100644 index 0000000..aff692f --- /dev/null +++ b/tests/fixtures/hono-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"hono":"^4.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/hono-app/src/index.ts b/tests/fixtures/hono-app/src/index.ts new file mode 100644 index 0000000..9a2b542 --- /dev/null +++ b/tests/fixtures/hono-app/src/index.ts @@ -0,0 +1,6 @@ +import { Hono } from "hono"; +const app = new Hono(); +app.get("/api/users", (c) => c.json([])); +app.post("/api/users", (c) => c.json({})); +app.get("/api/users/:id", (c) => c.json({})); +export default app; \ No newline at end of file diff --git a/tests/fixtures/js-imports/package.json b/tests/fixtures/js-imports/package.json new file mode 100644 index 0000000..357e8e2 --- /dev/null +++ b/tests/fixtures/js-imports/package.json @@ -0,0 +1 @@ +{"name":"test"} \ No newline at end of file diff --git a/tests/fixtures/js-imports/src/main.ts b/tests/fixtures/js-imports/src/main.ts new file mode 100644 index 0000000..33086b3 --- /dev/null +++ b/tests/fixtures/js-imports/src/main.ts @@ -0,0 +1,2 @@ +import { helper } from "./utils.js"; +console.log(helper); \ No newline at end of file diff --git a/tests/fixtures/js-imports/src/utils.ts b/tests/fixtures/js-imports/src/utils.ts new file mode 100644 index 0000000..94ec3e1 --- /dev/null +++ b/tests/fixtures/js-imports/src/utils.ts @@ -0,0 +1 @@ +export const helper = () => {}; \ No newline at end of file diff --git a/tests/fixtures/middleware-app/package.json b/tests/fixtures/middleware-app/package.json new file mode 100644 index 0000000..749d35e --- /dev/null +++ b/tests/fixtures/middleware-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"express":"^4.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/middleware-app/src/middleware/auth.ts b/tests/fixtures/middleware-app/src/middleware/auth.ts new file mode 100644 index 0000000..700ee2c --- /dev/null +++ b/tests/fixtures/middleware-app/src/middleware/auth.ts @@ -0,0 +1,5 @@ +export function authMiddleware(req, res, next) { + const token = req.headers.authorization; + if (!token) return res.status(401).json({ error: "unauthorized" }); + next(); +} \ No newline at end of file diff --git a/tests/fixtures/middleware-app/src/middleware/rate-limit.ts b/tests/fixtures/middleware-app/src/middleware/rate-limit.ts new file mode 100644 index 0000000..0874422 --- /dev/null +++ b/tests/fixtures/middleware-app/src/middleware/rate-limit.ts @@ -0,0 +1,4 @@ +export function rateLimiter(req, res, next) { + // rate limiting logic + next(); +} \ No newline at end of file diff --git a/tests/fixtures/monorepo-deps-empty/src/index.ts b/tests/fixtures/monorepo-deps-empty/src/index.ts new file mode 100644 index 0000000..0952c8b --- /dev/null +++ b/tests/fixtures/monorepo-deps-empty/src/index.ts @@ -0,0 +1 @@ +import { x } from './local'; import React from 'react'; \ No newline at end of file diff --git a/tests/fixtures/monorepo-deps/src/index.ts b/tests/fixtures/monorepo-deps/src/index.ts new file mode 100644 index 0000000..73b543e --- /dev/null +++ b/tests/fixtures/monorepo-deps/src/index.ts @@ -0,0 +1,6 @@ + + import { foo } from '@scope/pkg-a'; + import { bar } from '@scope/pkg-b'; + import { baz } from 'lodash'; + import { qux } from './local'; + \ No newline at end of file diff --git a/tests/fixtures/monorepo-deps/src/other.ts b/tests/fixtures/monorepo-deps/src/other.ts new file mode 100644 index 0000000..0714e82 --- /dev/null +++ b/tests/fixtures/monorepo-deps/src/other.ts @@ -0,0 +1,4 @@ + + import { x } from '@scope/pkg-a'; + import { y } from '@scope/pkg-c'; + \ No newline at end of file diff --git a/tests/fixtures/monorepo-detect/package.json b/tests/fixtures/monorepo-detect/package.json new file mode 100644 index 0000000..950e109 --- /dev/null +++ b/tests/fixtures/monorepo-detect/package.json @@ -0,0 +1 @@ +{"name":"test","workspaces":["packages/*"]} \ No newline at end of file diff --git a/tests/fixtures/monorepo-detect/packages/api/package.json b/tests/fixtures/monorepo-detect/packages/api/package.json new file mode 100644 index 0000000..018378c --- /dev/null +++ b/tests/fixtures/monorepo-detect/packages/api/package.json @@ -0,0 +1 @@ +{"name":"@test/api","dependencies":{"hono":"^4.0.0","drizzle-orm":"^0.30.0"}} \ No newline at end of file diff --git a/tests/fixtures/monorepo-detect/packages/web/package.json b/tests/fixtures/monorepo-detect/packages/web/package.json new file mode 100644 index 0000000..7224562 --- /dev/null +++ b/tests/fixtures/monorepo-detect/packages/web/package.json @@ -0,0 +1 @@ +{"name":"@test/web","dependencies":{"react":"^18.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/package.json b/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/package.json new file mode 100644 index 0000000..87833dc --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/package.json @@ -0,0 +1 @@ +{"name":"@scope/pkg-force-included"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/src/index.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/src/index.ts new file mode 100644 index 0000000..856e966 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/src/index.ts @@ -0,0 +1 @@ +export const x = 1; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/src/y.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/src/y.ts new file mode 100644 index 0000000..434156a --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/src/y.ts @@ -0,0 +1 @@ +export const y = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/src/z.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/src/z.ts new file mode 100644 index 0000000..9084d19 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-force-included/src/z.ts @@ -0,0 +1 @@ +export const z = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/package.json b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/package.json new file mode 100644 index 0000000..a86105a --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/package.json @@ -0,0 +1 @@ +{"name":"@scope/pkg-large"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/b.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/b.ts new file mode 100644 index 0000000..8ae7d2d --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/b.ts @@ -0,0 +1 @@ +export const b = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/c.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/c.ts new file mode 100644 index 0000000..10779b1 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/c.ts @@ -0,0 +1 @@ +export const c = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/d.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/d.ts new file mode 100644 index 0000000..be52383 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/d.ts @@ -0,0 +1 @@ +export const d = 4; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/e.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/e.ts new file mode 100644 index 0000000..52778b2 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/e.ts @@ -0,0 +1 @@ +export const e = 5; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/f.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/f.ts new file mode 100644 index 0000000..7705c16 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/f.ts @@ -0,0 +1 @@ +export const f = 6; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/g.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/g.ts new file mode 100644 index 0000000..dbf02ab --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/g.ts @@ -0,0 +1 @@ +export const g = 7; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/h.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/h.ts new file mode 100644 index 0000000..75b3651 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/h.ts @@ -0,0 +1 @@ +export const h = 8; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/i.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/i.ts new file mode 100644 index 0000000..3b53023 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/i.ts @@ -0,0 +1 @@ +export const i = 9; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/index.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/index.ts new file mode 100644 index 0000000..d852a42 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/index.ts @@ -0,0 +1 @@ +export const a = 1; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/j.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/j.ts new file mode 100644 index 0000000..e8c29ae --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/j.ts @@ -0,0 +1 @@ +export const j = 10; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/k.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/k.ts new file mode 100644 index 0000000..6091143 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/k.ts @@ -0,0 +1 @@ +export const k = 11; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/l.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/l.ts new file mode 100644 index 0000000..fbfbe79 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/l.ts @@ -0,0 +1 @@ +export const l = 12; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/m.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/m.ts new file mode 100644 index 0000000..66a0296 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/m.ts @@ -0,0 +1 @@ +export const m = 13; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/n.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/n.ts new file mode 100644 index 0000000..2538f43 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/n.ts @@ -0,0 +1 @@ +export const n = 14; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/o.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/o.ts new file mode 100644 index 0000000..4a3bc2a --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-large/src/o.ts @@ -0,0 +1 @@ +export const o = 15; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/b.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/b.ts new file mode 100644 index 0000000..8ae7d2d --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/b.ts @@ -0,0 +1 @@ +export const b = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/c.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/c.ts new file mode 100644 index 0000000..10779b1 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/c.ts @@ -0,0 +1 @@ +export const c = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/d.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/d.ts new file mode 100644 index 0000000..be52383 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/d.ts @@ -0,0 +1 @@ +export const d = 4; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/e.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/e.ts new file mode 100644 index 0000000..52778b2 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/e.ts @@ -0,0 +1 @@ +export const e = 5; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/f.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/f.ts new file mode 100644 index 0000000..7705c16 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/f.ts @@ -0,0 +1 @@ +export const f = 6; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/g.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/g.ts new file mode 100644 index 0000000..dbf02ab --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/g.ts @@ -0,0 +1 @@ +export const g = 7; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/h.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/h.ts new file mode 100644 index 0000000..75b3651 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/h.ts @@ -0,0 +1 @@ +export const h = 8; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/i.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/i.ts new file mode 100644 index 0000000..3b53023 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/i.ts @@ -0,0 +1 @@ +export const i = 9; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/index.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/index.ts new file mode 100644 index 0000000..d852a42 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/index.ts @@ -0,0 +1 @@ +export const a = 1; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/j.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/j.ts new file mode 100644 index 0000000..e8c29ae --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/j.ts @@ -0,0 +1 @@ +export const j = 10; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/k.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/k.ts new file mode 100644 index 0000000..6091143 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/k.ts @@ -0,0 +1 @@ +export const k = 11; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/l.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/l.ts new file mode 100644 index 0000000..fbfbe79 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/l.ts @@ -0,0 +1 @@ +export const l = 12; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/package.json b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/package.json new file mode 100644 index 0000000..5d33137 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-no-src/package.json @@ -0,0 +1 @@ +{"name":"@scope/pkg-no-src"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/package.json b/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/package.json new file mode 100644 index 0000000..95524b4 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/package.json @@ -0,0 +1 @@ +{"name":"@scope/pkg-small"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/src/index.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/src/index.ts new file mode 100644 index 0000000..856e966 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/src/index.ts @@ -0,0 +1 @@ +export const x = 1; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/src/y.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/src/y.ts new file mode 100644 index 0000000..434156a --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/src/y.ts @@ -0,0 +1 @@ +export const y = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/src/z.ts b/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/src/z.ts new file mode 100644 index 0000000..9084d19 --- /dev/null +++ b/tests/fixtures/monorepo-discover/packages/@scope/pkg-small/src/z.ts @@ -0,0 +1 @@ +export const z = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-discover/pnpm-workspace.yaml b/tests/fixtures/monorepo-discover/pnpm-workspace.yaml new file mode 100644 index 0000000..f10aa33 --- /dev/null +++ b/tests/fixtures/monorepo-discover/pnpm-workspace.yaml @@ -0,0 +1,2 @@ +packages: + - packages/** diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/package.json b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/package.json new file mode 100644 index 0000000..ff9a064 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/package.json @@ -0,0 +1 @@ +{"name":"@scope/pkg-a"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/b.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/b.ts new file mode 100644 index 0000000..8ae7d2d --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/b.ts @@ -0,0 +1 @@ +export const b = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/c.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/c.ts new file mode 100644 index 0000000..10779b1 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/c.ts @@ -0,0 +1 @@ +export const c = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/d.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/d.ts new file mode 100644 index 0000000..be52383 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/d.ts @@ -0,0 +1 @@ +export const d = 4; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/e.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/e.ts new file mode 100644 index 0000000..52778b2 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/e.ts @@ -0,0 +1 @@ +export const e = 5; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/f.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/f.ts new file mode 100644 index 0000000..7705c16 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/f.ts @@ -0,0 +1 @@ +export const f = 6; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/g.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/g.ts new file mode 100644 index 0000000..dbf02ab --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/g.ts @@ -0,0 +1 @@ +export const g = 7; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/h.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/h.ts new file mode 100644 index 0000000..75b3651 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/h.ts @@ -0,0 +1 @@ +export const h = 8; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/i.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/i.ts new file mode 100644 index 0000000..3b53023 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/i.ts @@ -0,0 +1 @@ +export const i = 9; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/index.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/index.ts new file mode 100644 index 0000000..d852a42 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/index.ts @@ -0,0 +1 @@ +export const a = 1; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/j.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/j.ts new file mode 100644 index 0000000..e8c29ae --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/j.ts @@ -0,0 +1 @@ +export const j = 10; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/k.ts b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/k.ts new file mode 100644 index 0000000..6091143 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/packages/@scope/pkg-a/src/k.ts @@ -0,0 +1 @@ +export const k = 11; \ No newline at end of file diff --git a/tests/fixtures/monorepo-exclude/pnpm-workspace.yaml b/tests/fixtures/monorepo-exclude/pnpm-workspace.yaml new file mode 100644 index 0000000..f10aa33 --- /dev/null +++ b/tests/fixtures/monorepo-exclude/pnpm-workspace.yaml @@ -0,0 +1,2 @@ +packages: + - packages/** diff --git a/tests/fixtures/monorepo-init-append/.windsurfrules b/tests/fixtures/monorepo-init-append/.windsurfrules new file mode 100644 index 0000000..80caf8b --- /dev/null +++ b/tests/fixtures/monorepo-init-append/.windsurfrules @@ -0,0 +1,9 @@ +# Project Context + +This is a monorepo with 1 package indexed by codesight. +Read `..codesight/CODESIGHT.md` for the full package index — it lists every package that has a context file. + +Before exploring a package directory, check if `/..codesight/CODESIGHT.md` exists — faster than grep/find. +Use `/..codesight/deps.md` to find cross-package dependencies. + +Do not crawl the file tree — use the codesight index instead. diff --git a/tests/fixtures/monorepo-init-skip/.windsurfrules b/tests/fixtures/monorepo-init-skip/.windsurfrules new file mode 100644 index 0000000..9d6ef73 --- /dev/null +++ b/tests/fixtures/monorepo-init-skip/.windsurfrules @@ -0,0 +1,9 @@ +# Project Context + +This is a monorepo with 0 packages indexed by codesight. +Read `..codesight/CODESIGHT.md` for the full package index — it lists every package that has a context file. + +Before exploring a package directory, check if `/..codesight/CODESIGHT.md` exists — faster than grep/find. +Use `/..codesight/deps.md` to find cross-package dependencies. + +Do not crawl the file tree — use the codesight index instead. diff --git a/tests/fixtures/monorepo-init/.windsurfrules b/tests/fixtures/monorepo-init/.windsurfrules new file mode 100644 index 0000000..7f8db21 --- /dev/null +++ b/tests/fixtures/monorepo-init/.windsurfrules @@ -0,0 +1,9 @@ +# Project Context + +This is a monorepo with 2 packages indexed by codesight. +Read `..codesight/CODESIGHT.md` for the full package index — it lists every package that has a context file. + +Before exploring a package directory, check if `/..codesight/CODESIGHT.md` exists — faster than grep/find. +Use `/..codesight/deps.md` to find cross-package dependencies. + +Do not crawl the file tree — use the codesight index instead. diff --git a/tests/fixtures/monorepo-no-workspace/package.json b/tests/fixtures/monorepo-no-workspace/package.json new file mode 100644 index 0000000..357e8e2 --- /dev/null +++ b/tests/fixtures/monorepo-no-workspace/package.json @@ -0,0 +1 @@ +{"name":"test"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/package.json b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/package.json new file mode 100644 index 0000000..5a573f8 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/package.json @@ -0,0 +1 @@ +{"name":"@test/pkg-alpha"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/b.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/b.ts new file mode 100644 index 0000000..8ae7d2d --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/b.ts @@ -0,0 +1 @@ +export const b = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/c.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/c.ts new file mode 100644 index 0000000..10779b1 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/c.ts @@ -0,0 +1 @@ +export const c = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/d.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/d.ts new file mode 100644 index 0000000..be52383 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/d.ts @@ -0,0 +1 @@ +export const d = 4; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/e.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/e.ts new file mode 100644 index 0000000..52778b2 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/e.ts @@ -0,0 +1 @@ +export const e = 5; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/f.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/f.ts new file mode 100644 index 0000000..7705c16 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/f.ts @@ -0,0 +1 @@ +export const f = 6; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/g.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/g.ts new file mode 100644 index 0000000..dbf02ab --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/g.ts @@ -0,0 +1 @@ +export const g = 7; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/h.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/h.ts new file mode 100644 index 0000000..75b3651 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/h.ts @@ -0,0 +1 @@ +export const h = 8; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/i.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/i.ts new file mode 100644 index 0000000..3b53023 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/i.ts @@ -0,0 +1 @@ +export const i = 9; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/index.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/index.ts new file mode 100644 index 0000000..7d4f3e4 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/index.ts @@ -0,0 +1,4 @@ + + import { x } from '@test/pkg-beta'; + export function hello() { return 'hello'; } + \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/j.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/j.ts new file mode 100644 index 0000000..e8c29ae --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/j.ts @@ -0,0 +1 @@ +export const j = 10; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/k.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/k.ts new file mode 100644 index 0000000..6091143 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-alpha/src/k.ts @@ -0,0 +1 @@ +export const k = 11; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/package.json b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/package.json new file mode 100644 index 0000000..2889ab2 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/package.json @@ -0,0 +1 @@ +{"name":"@test/pkg-beta"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/b.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/b.ts new file mode 100644 index 0000000..8ae7d2d --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/b.ts @@ -0,0 +1 @@ +export const b = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/c.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/c.ts new file mode 100644 index 0000000..10779b1 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/c.ts @@ -0,0 +1 @@ +export const c = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/d.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/d.ts new file mode 100644 index 0000000..be52383 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/d.ts @@ -0,0 +1 @@ +export const d = 4; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/e.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/e.ts new file mode 100644 index 0000000..52778b2 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/e.ts @@ -0,0 +1 @@ +export const e = 5; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/f.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/f.ts new file mode 100644 index 0000000..7705c16 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/f.ts @@ -0,0 +1 @@ +export const f = 6; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/g.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/g.ts new file mode 100644 index 0000000..dbf02ab --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/g.ts @@ -0,0 +1 @@ +export const g = 7; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/h.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/h.ts new file mode 100644 index 0000000..75b3651 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/h.ts @@ -0,0 +1 @@ +export const h = 8; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/i.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/i.ts new file mode 100644 index 0000000..3b53023 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/i.ts @@ -0,0 +1 @@ +export const i = 9; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/index.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/index.ts new file mode 100644 index 0000000..047c6ec --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/index.ts @@ -0,0 +1 @@ +export const x = 42; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/j.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/j.ts new file mode 100644 index 0000000..e8c29ae --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/j.ts @@ -0,0 +1 @@ +export const j = 10; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/k.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/k.ts new file mode 100644 index 0000000..6091143 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-beta/src/k.ts @@ -0,0 +1 @@ +export const k = 11; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-tiny/package.json b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-tiny/package.json new file mode 100644 index 0000000..c4e77cd --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-tiny/package.json @@ -0,0 +1 @@ +{"name":"@test/pkg-tiny"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-tiny/src/index.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-tiny/src/index.ts new file mode 100644 index 0000000..2a84d23 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-tiny/src/index.ts @@ -0,0 +1 @@ +export const t = 1; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-tiny/src/util.ts b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-tiny/src/util.ts new file mode 100644 index 0000000..9d6ca66 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/packages/@test/pkg-tiny/src/util.ts @@ -0,0 +1 @@ +export const u = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-orchestrator/pnpm-workspace.yaml b/tests/fixtures/monorepo-orchestrator/pnpm-workspace.yaml new file mode 100644 index 0000000..f10aa33 --- /dev/null +++ b/tests/fixtures/monorepo-orchestrator/pnpm-workspace.yaml @@ -0,0 +1,2 @@ +packages: + - packages/** diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/package.json b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/package.json new file mode 100644 index 0000000..1c03d82 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/package.json @@ -0,0 +1 @@ +{"name":"@test/pkg-a"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/b.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/b.ts new file mode 100644 index 0000000..8ae7d2d --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/b.ts @@ -0,0 +1 @@ +export const b = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/c.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/c.ts new file mode 100644 index 0000000..10779b1 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/c.ts @@ -0,0 +1 @@ +export const c = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/d.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/d.ts new file mode 100644 index 0000000..be52383 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/d.ts @@ -0,0 +1 @@ +export const d = 4; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/e.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/e.ts new file mode 100644 index 0000000..52778b2 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/e.ts @@ -0,0 +1 @@ +export const e = 5; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/f.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/f.ts new file mode 100644 index 0000000..7705c16 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/f.ts @@ -0,0 +1 @@ +export const f = 6; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/g.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/g.ts new file mode 100644 index 0000000..dbf02ab --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/g.ts @@ -0,0 +1 @@ +export const g = 7; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/h.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/h.ts new file mode 100644 index 0000000..75b3651 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/h.ts @@ -0,0 +1 @@ +export const h = 8; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/i.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/i.ts new file mode 100644 index 0000000..3b53023 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/i.ts @@ -0,0 +1 @@ +export const i = 9; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/index.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/index.ts new file mode 100644 index 0000000..d852a42 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/index.ts @@ -0,0 +1 @@ +export const a = 1; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/j.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/j.ts new file mode 100644 index 0000000..e8c29ae --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/j.ts @@ -0,0 +1 @@ +export const j = 10; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/k.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/k.ts new file mode 100644 index 0000000..6091143 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-a/src/k.ts @@ -0,0 +1 @@ +export const k = 11; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/package.json b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/package.json new file mode 100644 index 0000000..affe25d --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/package.json @@ -0,0 +1 @@ +{"name":"@test/pkg-b"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/c.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/c.ts new file mode 100644 index 0000000..b08c1ad --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/c.ts @@ -0,0 +1 @@ +export const c = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/d.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/d.ts new file mode 100644 index 0000000..cacd317 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/d.ts @@ -0,0 +1 @@ +export const d = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/e.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/e.ts new file mode 100644 index 0000000..74fcc06 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/e.ts @@ -0,0 +1 @@ +export const e = 4; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/f.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/f.ts new file mode 100644 index 0000000..cbc10f9 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/f.ts @@ -0,0 +1 @@ +export const f = 5; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/g.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/g.ts new file mode 100644 index 0000000..aaab7a7 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/g.ts @@ -0,0 +1 @@ +export const g = 6; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/h.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/h.ts new file mode 100644 index 0000000..9fc1ea5 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/h.ts @@ -0,0 +1 @@ +export const h = 7; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/i.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/i.ts new file mode 100644 index 0000000..4f5b5a0 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/i.ts @@ -0,0 +1 @@ +export const i = 8; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/index.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/index.ts new file mode 100644 index 0000000..5235cf9 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/index.ts @@ -0,0 +1 @@ +export const b = 1; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/j.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/j.ts new file mode 100644 index 0000000..6f969a5 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/j.ts @@ -0,0 +1 @@ +export const j = 9; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/k.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/k.ts new file mode 100644 index 0000000..28f1148 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/k.ts @@ -0,0 +1 @@ +export const k = 10; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/l.ts b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/l.ts new file mode 100644 index 0000000..a403c51 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/packages/@test/pkg-b/src/l.ts @@ -0,0 +1 @@ +export const l = 11; \ No newline at end of file diff --git a/tests/fixtures/monorepo-refresh-single/pnpm-workspace.yaml b/tests/fixtures/monorepo-refresh-single/pnpm-workspace.yaml new file mode 100644 index 0000000..f10aa33 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-single/pnpm-workspace.yaml @@ -0,0 +1,2 @@ +packages: + - packages/** diff --git a/tests/fixtures/monorepo-refresh-unknown/pnpm-workspace.yaml b/tests/fixtures/monorepo-refresh-unknown/pnpm-workspace.yaml new file mode 100644 index 0000000..f10aa33 --- /dev/null +++ b/tests/fixtures/monorepo-refresh-unknown/pnpm-workspace.yaml @@ -0,0 +1,2 @@ +packages: + - packages/** diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/package.json b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/package.json new file mode 100644 index 0000000..18bfb87 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/package.json @@ -0,0 +1 @@ +{"name":"@test/pkg-ret"} \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/b.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/b.ts new file mode 100644 index 0000000..8ae7d2d --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/b.ts @@ -0,0 +1 @@ +export const b = 2; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/c.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/c.ts new file mode 100644 index 0000000..10779b1 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/c.ts @@ -0,0 +1 @@ +export const c = 3; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/d.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/d.ts new file mode 100644 index 0000000..be52383 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/d.ts @@ -0,0 +1 @@ +export const d = 4; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/e.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/e.ts new file mode 100644 index 0000000..52778b2 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/e.ts @@ -0,0 +1 @@ +export const e = 5; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/f.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/f.ts new file mode 100644 index 0000000..7705c16 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/f.ts @@ -0,0 +1 @@ +export const f = 6; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/g.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/g.ts new file mode 100644 index 0000000..dbf02ab --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/g.ts @@ -0,0 +1 @@ +export const g = 7; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/h.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/h.ts new file mode 100644 index 0000000..75b3651 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/h.ts @@ -0,0 +1 @@ +export const h = 8; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/i.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/i.ts new file mode 100644 index 0000000..3b53023 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/i.ts @@ -0,0 +1 @@ +export const i = 9; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/index.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/index.ts new file mode 100644 index 0000000..d852a42 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/index.ts @@ -0,0 +1 @@ +export const a = 1; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/j.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/j.ts new file mode 100644 index 0000000..e8c29ae --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/j.ts @@ -0,0 +1 @@ +export const j = 10; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/k.ts b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/k.ts new file mode 100644 index 0000000..6091143 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/packages/@test/pkg-ret/src/k.ts @@ -0,0 +1 @@ +export const k = 11; \ No newline at end of file diff --git a/tests/fixtures/monorepo-return-value/pnpm-workspace.yaml b/tests/fixtures/monorepo-return-value/pnpm-workspace.yaml new file mode 100644 index 0000000..f10aa33 --- /dev/null +++ b/tests/fixtures/monorepo-return-value/pnpm-workspace.yaml @@ -0,0 +1,2 @@ +packages: + - packages/** diff --git a/tests/fixtures/nestjs-app/package.json b/tests/fixtures/nestjs-app/package.json new file mode 100644 index 0000000..7672715 --- /dev/null +++ b/tests/fixtures/nestjs-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/nestjs-app/src/users.controller.ts b/tests/fixtures/nestjs-app/src/users.controller.ts new file mode 100644 index 0000000..e3cd6dc --- /dev/null +++ b/tests/fixtures/nestjs-app/src/users.controller.ts @@ -0,0 +1,12 @@ +import { Controller, Get, Post, Put, Delete, Param } from '@nestjs/common'; +@Controller('users') +export class UsersController { + @Get() + findAll() { return []; } + @Get(':id') + findOne(@Param('id') id: string) { return {}; } + @Post() + create() { return {}; } + @Delete(':id') + remove(@Param('id') id: string) { return {}; } +} \ No newline at end of file diff --git a/tests/fixtures/nestjs-detect/package.json b/tests/fixtures/nestjs-detect/package.json new file mode 100644 index 0000000..7672715 --- /dev/null +++ b/tests/fixtures/nestjs-detect/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/next-app/package.json b/tests/fixtures/next-app/package.json new file mode 100644 index 0000000..afd7a24 --- /dev/null +++ b/tests/fixtures/next-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"next":"^14.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/next-app/src/app/api/users/route.ts b/tests/fixtures/next-app/src/app/api/users/route.ts new file mode 100644 index 0000000..0590ffa --- /dev/null +++ b/tests/fixtures/next-app/src/app/api/users/route.ts @@ -0,0 +1,6 @@ +export async function GET() { + return Response.json([]); +} +export async function POST(request: Request) { + return Response.json({}); +} \ No newline at end of file diff --git a/tests/fixtures/nuxt-app/package.json b/tests/fixtures/nuxt-app/package.json new file mode 100644 index 0000000..8ed5126 --- /dev/null +++ b/tests/fixtures/nuxt-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"nuxt":"^3.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/nuxt-app/server/api/users.get.ts b/tests/fixtures/nuxt-app/server/api/users.get.ts new file mode 100644 index 0000000..355792e --- /dev/null +++ b/tests/fixtures/nuxt-app/server/api/users.get.ts @@ -0,0 +1 @@ +export default defineEventHandler(() => []); \ No newline at end of file diff --git a/tests/fixtures/nuxt-app/server/api/users.post.ts b/tests/fixtures/nuxt-app/server/api/users.post.ts new file mode 100644 index 0000000..3a5224b --- /dev/null +++ b/tests/fixtures/nuxt-app/server/api/users.post.ts @@ -0,0 +1 @@ +export default defineEventHandler(() => ({})); \ No newline at end of file diff --git a/tests/fixtures/nuxt-app/server/api/users/[id].get.ts b/tests/fixtures/nuxt-app/server/api/users/[id].get.ts new file mode 100644 index 0000000..3a5224b --- /dev/null +++ b/tests/fixtures/nuxt-app/server/api/users/[id].get.ts @@ -0,0 +1 @@ +export default defineEventHandler(() => ({})); \ No newline at end of file diff --git a/tests/fixtures/nuxt-detect/package.json b/tests/fixtures/nuxt-detect/package.json new file mode 100644 index 0000000..8ed5126 --- /dev/null +++ b/tests/fixtures/nuxt-detect/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"nuxt":"^3.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/prisma-schema/package.json b/tests/fixtures/prisma-schema/package.json new file mode 100644 index 0000000..dca7c60 --- /dev/null +++ b/tests/fixtures/prisma-schema/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"prisma":"^5.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/prisma-schema/prisma/schema.prisma b/tests/fixtures/prisma-schema/prisma/schema.prisma new file mode 100644 index 0000000..00ab729 --- /dev/null +++ b/tests/fixtures/prisma-schema/prisma/schema.prisma @@ -0,0 +1,12 @@ +model User { + id String @id @default(cuid()) + email String @unique + name String + posts Post[] +} +model Post { + id String @id @default(cuid()) + title String + userId String + user User @relation(fields: [userId], references: [id]) +} \ No newline at end of file diff --git a/tests/fixtures/python-celery-workspace/apps/web/package.json b/tests/fixtures/python-celery-workspace/apps/web/package.json new file mode 100644 index 0000000..7224562 --- /dev/null +++ b/tests/fixtures/python-celery-workspace/apps/web/package.json @@ -0,0 +1 @@ +{"name":"@test/web","dependencies":{"react":"^18.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/python-celery-workspace/package.json b/tests/fixtures/python-celery-workspace/package.json new file mode 100644 index 0000000..bad87f6 --- /dev/null +++ b/tests/fixtures/python-celery-workspace/package.json @@ -0,0 +1 @@ +{"name":"test","workspaces":["apps/*","services/*"]} \ No newline at end of file diff --git a/tests/fixtures/python-celery-workspace/services/worker-service/requirements.txt b/tests/fixtures/python-celery-workspace/services/worker-service/requirements.txt new file mode 100644 index 0000000..d3323c8 --- /dev/null +++ b/tests/fixtures/python-celery-workspace/services/worker-service/requirements.txt @@ -0,0 +1,2 @@ +celery +redis diff --git a/tests/fixtures/python-celery-workspace/services/worker-service/tasks.py b/tests/fixtures/python-celery-workspace/services/worker-service/tasks.py new file mode 100644 index 0000000..c2de5b6 --- /dev/null +++ b/tests/fixtures/python-celery-workspace/services/worker-service/tasks.py @@ -0,0 +1,6 @@ +from celery import Celery +app = Celery("worker") + +@app.task +def sync_users(): + return True diff --git a/tests/fixtures/raw-http-app/package.json b/tests/fixtures/raw-http-app/package.json new file mode 100644 index 0000000..357e8e2 --- /dev/null +++ b/tests/fixtures/raw-http-app/package.json @@ -0,0 +1 @@ +{"name":"test"} \ No newline at end of file diff --git a/tests/fixtures/raw-http-app/src/server.ts b/tests/fixtures/raw-http-app/src/server.ts new file mode 100644 index 0000000..57e0722 --- /dev/null +++ b/tests/fixtures/raw-http-app/src/server.ts @@ -0,0 +1,7 @@ +import { createServer } from "http"; +const server = createServer((req, res) => { + const url = new URL(req.url!, "http://localhost").pathname; + if (url === "/health") { res.end("ok"); return; } + if (url === "/api/users" && req.method === "GET") { res.end("[]"); return; } + if (url === "/api/users" && req.method === "POST") { res.end("{}"); return; } +}); \ No newline at end of file diff --git a/tests/fixtures/react-app/package.json b/tests/fixtures/react-app/package.json new file mode 100644 index 0000000..c8cacbf --- /dev/null +++ b/tests/fixtures/react-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"react":"^18.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/react-app/src/ProjectCard.tsx b/tests/fixtures/react-app/src/ProjectCard.tsx new file mode 100644 index 0000000..8f1567f --- /dev/null +++ b/tests/fixtures/react-app/src/ProjectCard.tsx @@ -0,0 +1,3 @@ +export const ProjectCard = ({ title, description }: { title: string; description: string }) => { + return

{title}

{description}

; +}; \ No newline at end of file diff --git a/tests/fixtures/react-app/src/UserProfile.tsx b/tests/fixtures/react-app/src/UserProfile.tsx new file mode 100644 index 0000000..e4e45bf --- /dev/null +++ b/tests/fixtures/react-app/src/UserProfile.tsx @@ -0,0 +1,3 @@ +export default function UserProfile({ name, email, avatar }: { name: string; email: string; avatar?: string }) { + return
{name} - {email}
; +} \ No newline at end of file diff --git a/tests/fixtures/remix-app/app/routes/users.tsx b/tests/fixtures/remix-app/app/routes/users.tsx new file mode 100644 index 0000000..510aae2 --- /dev/null +++ b/tests/fixtures/remix-app/app/routes/users.tsx @@ -0,0 +1,6 @@ +export async function loader({ request }) { + return json([]); +} +export async function action({ request }) { + return json({}); +} \ No newline at end of file diff --git a/tests/fixtures/remix-app/package.json b/tests/fixtures/remix-app/package.json new file mode 100644 index 0000000..44f75e3 --- /dev/null +++ b/tests/fixtures/remix-app/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"@remix-run/node":"^2.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/remix-detect/package.json b/tests/fixtures/remix-detect/package.json new file mode 100644 index 0000000..44f75e3 --- /dev/null +++ b/tests/fixtures/remix-detect/package.json @@ -0,0 +1 @@ +{"name":"test","dependencies":{"@remix-run/node":"^2.0.0"}} \ No newline at end of file diff --git a/tests/fixtures/roku-apmc-style/bsconfig.json b/tests/fixtures/roku-apmc-style/bsconfig.json new file mode 100644 index 0000000..545b218 --- /dev/null +++ b/tests/fixtures/roku-apmc-style/bsconfig.json @@ -0,0 +1 @@ +{"extends":"./configs/brightscript/bsconfig.base.json"} \ No newline at end of file diff --git a/tests/fixtures/roku-apmc-style/components/MainScene.brs b/tests/fixtures/roku-apmc-style/components/MainScene.brs new file mode 100644 index 0000000..8fede30 --- /dev/null +++ b/tests/fixtures/roku-apmc-style/components/MainScene.brs @@ -0,0 +1,5 @@ +sub init() + m.top.observeField("exitApp", "onExitApp") +end sub +function onExitApp() as void +end function diff --git a/tests/fixtures/roku-apmc-style/components/MainScene.xml b/tests/fixtures/roku-apmc-style/components/MainScene.xml new file mode 100644 index 0000000..3589cb4 --- /dev/null +++ b/tests/fixtures/roku-apmc-style/components/MainScene.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/tests/fixtures/roku-apmc-style/components/nodes/HomeView.xml b/tests/fixtures/roku-apmc-style/components/nodes/HomeView.xml new file mode 100644 index 0000000..61659b7 --- /dev/null +++ b/tests/fixtures/roku-apmc-style/components/nodes/HomeView.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/tests/fixtures/roku-apmc-style/lib/rafxssai.brs b/tests/fixtures/roku-apmc-style/lib/rafxssai.brs new file mode 100644 index 0000000..236045e --- /dev/null +++ b/tests/fixtures/roku-apmc-style/lib/rafxssai.brs @@ -0,0 +1,2 @@ +function RafInit() as void +end function diff --git a/tests/fixtures/roku-apmc-style/package.json b/tests/fixtures/roku-apmc-style/package.json new file mode 100644 index 0000000..977a617 --- /dev/null +++ b/tests/fixtures/roku-apmc-style/package.json @@ -0,0 +1 @@ +{"name":"apmc-roku","devDependencies":{"brighterscript":"^0.70.3","@rokucommunity/bslint":"^0.8.38"}} \ No newline at end of file diff --git a/tests/fixtures/roku-apmc-style/source/main.brs b/tests/fixtures/roku-apmc-style/source/main.brs new file mode 100644 index 0000000..4b6964c --- /dev/null +++ b/tests/fixtures/roku-apmc-style/source/main.brs @@ -0,0 +1,3 @@ +sub Main() + screen = CreateObject("roSGScreen") +end sub diff --git a/tests/fixtures/roku-apmc-style/source/utils/AnalyticsUtils.brs b/tests/fixtures/roku-apmc-style/source/utils/AnalyticsUtils.brs new file mode 100644 index 0000000..aae23c9 --- /dev/null +++ b/tests/fixtures/roku-apmc-style/source/utils/AnalyticsUtils.brs @@ -0,0 +1,2 @@ +function trackEvent(name as string) as void +end function diff --git a/tests/fixtures/roku-apmc-style/source/utils/NavUtils.brs b/tests/fixtures/roku-apmc-style/source/utils/NavUtils.brs new file mode 100644 index 0000000..314b7a5 --- /dev/null +++ b/tests/fixtures/roku-apmc-style/source/utils/NavUtils.brs @@ -0,0 +1,3 @@ +function getNavNode(item as object) as object + return invalid +end function diff --git a/tests/fixtures/roku-brighterscript-template/bsconfig.json b/tests/fixtures/roku-brighterscript-template/bsconfig.json new file mode 100644 index 0000000..5ad9bc8 --- /dev/null +++ b/tests/fixtures/roku-brighterscript-template/bsconfig.json @@ -0,0 +1 @@ +{"rootDir":"src","files":["**/*"]} \ No newline at end of file diff --git a/tests/fixtures/roku-brighterscript-template/package.json b/tests/fixtures/roku-brighterscript-template/package.json new file mode 100644 index 0000000..be93931 --- /dev/null +++ b/tests/fixtures/roku-brighterscript-template/package.json @@ -0,0 +1 @@ +{"name":"my-bsc-app","devDependencies":{"brighterscript":"^0.71.0"}} \ No newline at end of file diff --git a/tests/fixtures/roku-brighterscript-template/src/components/HomeView.xml b/tests/fixtures/roku-brighterscript-template/src/components/HomeView.xml new file mode 100644 index 0000000..6a75bbf --- /dev/null +++ b/tests/fixtures/roku-brighterscript-template/src/components/HomeView.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/tests/fixtures/roku-brighterscript-template/src/components/MainScene.xml b/tests/fixtures/roku-brighterscript-template/src/components/MainScene.xml new file mode 100644 index 0000000..a6ffec1 --- /dev/null +++ b/tests/fixtures/roku-brighterscript-template/src/components/MainScene.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/tests/fixtures/roku-brighterscript-template/src/manifest b/tests/fixtures/roku-brighterscript-template/src/manifest new file mode 100644 index 0000000..ac984e4 --- /dev/null +++ b/tests/fixtures/roku-brighterscript-template/src/manifest @@ -0,0 +1,5 @@ +title=Test Channel +major_version=1 +minor_version=0 +build_version=0 +ui_resolutions=fhd diff --git a/tests/fixtures/roku-brighterscript-template/src/source/Main.brs b/tests/fixtures/roku-brighterscript-template/src/source/Main.brs new file mode 100644 index 0000000..4b6964c --- /dev/null +++ b/tests/fixtures/roku-brighterscript-template/src/source/Main.brs @@ -0,0 +1,3 @@ +sub Main() + screen = CreateObject("roSGScreen") +end sub diff --git a/tests/fixtures/roku-brighterscript-template/src/source/Utils.bs b/tests/fixtures/roku-brighterscript-template/src/source/Utils.bs new file mode 100644 index 0000000..2f08027 --- /dev/null +++ b/tests/fixtures/roku-brighterscript-template/src/source/Utils.bs @@ -0,0 +1,5 @@ +namespace app.utils + function greet() as string + return "hi" + end function +end namespace diff --git a/tests/fixtures/roku-bsconfig-no-manifest/bsconfig.json b/tests/fixtures/roku-bsconfig-no-manifest/bsconfig.json new file mode 100644 index 0000000..295f972 --- /dev/null +++ b/tests/fixtures/roku-bsconfig-no-manifest/bsconfig.json @@ -0,0 +1 @@ +{"rootDir":""} \ No newline at end of file diff --git a/tests/fixtures/roku-bsconfig-no-manifest/components/MainScene.xml b/tests/fixtures/roku-bsconfig-no-manifest/components/MainScene.xml new file mode 100644 index 0000000..703f955 --- /dev/null +++ b/tests/fixtures/roku-bsconfig-no-manifest/components/MainScene.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/tests/fixtures/roku-bsconfig-no-manifest/package.json b/tests/fixtures/roku-bsconfig-no-manifest/package.json new file mode 100644 index 0000000..2ca96ae --- /dev/null +++ b/tests/fixtures/roku-bsconfig-no-manifest/package.json @@ -0,0 +1 @@ +{"name":"my-roku-app","devDependencies":{"brighterscript":"^0.70.3"}} \ No newline at end of file diff --git a/tests/fixtures/roku-bsconfig-no-manifest/source/main.brs b/tests/fixtures/roku-bsconfig-no-manifest/source/main.brs new file mode 100644 index 0000000..4b6964c --- /dev/null +++ b/tests/fixtures/roku-bsconfig-no-manifest/source/main.brs @@ -0,0 +1,3 @@ +sub Main() + screen = CreateObject("roSGScreen") +end sub diff --git a/tests/fixtures/roku-bsconfig-no-manifest/source/utils/StringUtils.brs b/tests/fixtures/roku-bsconfig-no-manifest/source/utils/StringUtils.brs new file mode 100644 index 0000000..871c69a --- /dev/null +++ b/tests/fixtures/roku-bsconfig-no-manifest/source/utils/StringUtils.brs @@ -0,0 +1,3 @@ +function trim(s as string) as string + return s.trim() +end function diff --git a/tests/fixtures/roku-channel/components/MainScene.brs b/tests/fixtures/roku-channel/components/MainScene.brs new file mode 100644 index 0000000..334ec05 --- /dev/null +++ b/tests/fixtures/roku-channel/components/MainScene.brs @@ -0,0 +1,16 @@ +sub init() + m.homeView = m.top.findNode("homeView") + m.loginView = m.top.findNode("loginView") + m.errorModal = m.top.findNode("errorModal") + m.top.observeField("someField", "handleSome") + m.global.AddField("token", "string", false) + ShowScreen(m.homeView) +end sub + +sub showLogin() + ShowScreen(m.loginView, true) +end sub + +sub showError() + ShowScreen(m.errorModal, true) +end sub diff --git a/tests/fixtures/roku-channel/components/MainScene.xml b/tests/fixtures/roku-channel/components/MainScene.xml new file mode 100644 index 0000000..04b0bf6 --- /dev/null +++ b/tests/fixtures/roku-channel/components/MainScene.xml @@ -0,0 +1,9 @@ + + + + + + + +