import { fieldTypeToParamEnumFunc, ibBatchFormat, ibBatchFormation, ibBatchNew, ibSetFieldRows, into, QueryBuilderBaseParamEnum, } from "../src"; describe("Test insert query builder", () => { test("insert multiple", async (done) => { const qbconf = ibBatchNew(); const qb = ibBatchFormation({ format: ibBatchFormat, into, setFieldRows: ibSetFieldRows, }, qbconf); qb.into("user"); qb.setFieldRows([{ key: "name", name: "name", type: QueryBuilderBaseParamEnum.String, }, { key: "registeredDone", name: "registered_done", type: QueryBuilderBaseParamEnum.Boolean, }], [{ name: "a name", registeredDone: true, }, { name: "b name", registeredDone: false, }]); const result = qb.format(); expect(result).toEqual({ parameterSets: [[ { name: "p0", value: { stringValue: "a name", }, }, { name: "p1", value: { booleanValue: true, }, }, ], [ { name: "p0", value: { stringValue: "b name", }, }, { name: "p1", value: { booleanValue: false, }, }, ]], sql: "INSERT INTO user (name,registered_done) VALUES (:p0,:p1)", }); done(); }); });