pocketbase-tools
Version:
A TypeScript toolkit for PocketBase, featuring a standard service/action/types layered structure. It provides interfaces and implementations for common business logic such as users, products, company profiles, and file utilities, making it suitable for se
27 lines (26 loc) • 1.17 kB
JavaScript
import assert from "assert";
import { productAction, productService } from "../services";
(async () => {
let createdId = "";
// 创建产品
const product = { title: "测试产品", desc: "desc" };
const created = await productAction.addProduct(product);
assert(created && created.title === "测试产品", "产品创建失败");
createdId = created.id;
// 查询所有产品
const list = await productService.getAllProducts();
assert(Array.isArray(list), "产品列表应为数组");
assert(list.find((p) => p.id === createdId), "产品未出现在列表中");
// 查询单个产品
const single = await productService.getProductById(createdId);
assert(single && single.id === createdId, "按ID查询产品失败");
// 更新产品
const updated = await productAction.updateProduct(createdId, {
desc: "updated",
});
assert(updated && updated.desc === "updated", "产品更新失败");
// 删除产品
const deleted = await productAction.deleteProduct(createdId);
assert(deleted === true, "产品删除失败");
console.log("product.assert.test.ts 所有断言通过");
})();