UNPKG

@oada/oadaify

Version:

Make OADA data nicer to work with in JS/TS

53 lines 1.51 kB
"use strict"; /** * Tests for proper behavior of OADA keys * * @packageDocumentation */ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const ava_1 = __importDefault(require("ava")); const ts_expect_1 = require("ts-expect"); const __1 = require("../"); ava_1.default('should allow accessing OADA keys via symbol', (t) => { const input = { _id: 'resources/123', }; const output = __1.oadaify(input); t.is(output[__1._id], input._id); }); ava_1.default('OADA keys should not appear in loop', (t) => { const input = { _id: 'resources/1223', _rev: 2, _meta: {}, foo: 'bar', foo2: 'baz', }; const output = __1.oadaify(input); ts_expect_1.expectType(output); const o = {}; for (const key in output) { // TODO: Why doesn't TS realize key it keyof output?? const k = key; ts_expect_1.expectType(k); o[k] = output[k]; } t.deepEqual(o, { foo: 'bar', foo2: 'baz' }); }); ava_1.default('OADA keys should not appear in output type', (t) => { const input = { _id: 'resources/1223', _rev: 2, _meta: {}, foo: 'bar', foo2: 'baz', }; const output = __1.oadaify(input); // @ts-expect-error ts_expect_1.expectType(output); t.pass(); }); //# sourceMappingURL=oadaKeys.spec.js.map