mpackdb
All repositories: gitoria
690 B
import assert from 'assert';import { rm } from 'fs/promises';import { MPackDB } from '../src/MPackDB.js';const TEST_DB_PATH = './db/explicit-zero-primary-key';await rm(TEST_DB_PATH, { recursive: true, force: true });const db = new MPackDB(`${TEST_DB_PATH}/records`, { primaryKey: '*idx' });const inserted = await db.insert({ idx: 0, value: 'zero' });assert.equal(inserted, 0);const rows = [];for await (const row of db.find()) {rows.push(row);}assert.deepEqual(rows, [{ idx: 0, value: 'zero' }]);await assert.rejects(() => db.insert({ idx: 0, value: 'duplicate' }),err => err.code === 'DUPLICATE_KEY');console.log('explicit numeric primary key 0 is preserved');
Branches
- mastermain branch
Latest commits
- 87888725release 1.0.7caramboleyo
- c4cdb9b6node: import prefixes (Deno compat) + pre-existing index-state WIPcaramboleyo
- 0afb8f4bupdate now must be a callbackcaramboleyo
- cde73eb4release 1.0.6caramboleyo
- d01dda02add index hints, intersection, boundingBox; remove findByIndexcaramboleyo
- b8ffc1a0release 1.0.5caramboleyo
- d47876a1reimplemented lost features like indexed find and more testscaramboleyo
- 7f08da9afixed insert ignoring model definitioncaramboleyo
- 705774a9added flush before findcaramboleyo
- b4db6391initial commitcaramboleyo