import { describe, it, expect } from "vitest"; import { App, Component } from "../src/index"; import { reactive } from "../src/reactivity/reactive"; describe("App", () => { it("should mount a simple component and update reactive data", () => { const app = new App(); const component: Component = { template: "
{{ message }}
", props: { message: { default: "Hello" } }, main(props) { return reactive({ message: props.message }); }, }; const root = document.createElement("div"); app.mount(component, root); expect(root.innerHTML).toBe("
Hello
"); const { scope } = app.root.context; scope.message = "World"; expect(root.innerHTML).toBe("
World
"); }); });