1import { defineLofiApp, getLofiApp } from "./app.ts";2import { assert } from "./test-assert.ts";34Deno.test("defineLofiApp retains schema types and registers package runtime configuration", () => {5 const schema = { notes: { name: "notes" } } as const;6 const app = defineLofiApp({7 name: "notes",8 databaseName: "notes-db",9 schema,10 storage: "durable",11 sync: { adapter: "jazz" },12 });1314 assert(app.schema === schema, "defineLofiApp replaced the author schema");15 assert(getLofiApp().databaseName === "notes-db", "runtime config was not registered");16});1718Deno.test("defineLofiApp rejects empty identity and database names", () => {19 for (20 const config of [21 { name: "", databaseName: "db" },22 { name: "app", databaseName: "" },23 ]24 ) {25 let message = "";26 try {27 defineLofiApp({28 ...config,29 schema: {},30 storage: "durable",31 sync: { adapter: "jazz" },32 });33 } catch (error) {34 message = error instanceof Error ? error.message : String(error);35 }36 assert(message.includes("must not be empty"), "empty app configuration was accepted");37 }38});