UNPKG

r2-opds-js

Version:

Readium 2 'opds' for NodeJS (TypeScript)

45 lines 2.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const ava_1 = require("ava"); const xmldom = require("@xmldom/xmldom"); const serializable_1 = require("r2-lcp-js/dist/es7-es2016/src/serializable"); const xml_js_mapper_1 = require("r2-utils-js/dist/es7-es2016/src/_utils/xml-js-mapper"); const init_globals_1 = require("../src/opds/init-globals"); const opds_1 = require("../src/opds/opds1/opds"); const opds2_metadata_1 = require("../src/opds/opds2/opds2-metadata"); const helpers_1 = require("./helpers"); (0, init_globals_1.initGlobalConverters_OPDS)(); (0, init_globals_1.initGlobalConverters_GENERIC)(); const num = 12345.6789; const numSTR = "12345.6789"; (0, ava_1.default)("JSON SERIALIZE: Metadata.ItemsPerPage => Number", (t) => { const md = new opds2_metadata_1.OPDSMetadata(); md.ItemsPerPage = num; (0, helpers_1.inspect)(md); const json = (0, serializable_1.TaJsonSerialize)(md); (0, helpers_1.logJSON)(json); (0, helpers_1.checkType_Number)(t, json.itemsPerPage); t.is(json.itemsPerPage, num); }); (0, ava_1.default)("JSON DESERIALIZE: Metadata.ItemsPerPage => Number", (t) => { const json = {}; json.itemsPerPage = num; (0, helpers_1.logJSON)(json); const md = (0, serializable_1.TaJsonDeserialize)(json, opds2_metadata_1.OPDSMetadata); (0, helpers_1.inspect)(md); t.true(typeof md.AdditionalJSON === "undefined"); (0, helpers_1.checkType_Number)(t, md.ItemsPerPage); (0, helpers_1.checkNumber)(t, md.ItemsPerPage, num); }); (0, ava_1.default)("XML DESERIALIZE: OPDS opensearch:itemsPerPage => Number", (t) => { const xmlStr = `<opds xmlns="http://opds-spec.org/2010/catalog" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/"> <opensearch:itemsPerPage>${numSTR}</opensearch:itemsPerPage> </opds>`; console.log(xmlStr); const xml = new xmldom.DOMParser().parseFromString(xmlStr); const opds = xml_js_mapper_1.XML.deserialize(xml, opds_1.OPDS); (0, helpers_1.inspect)(opds); (0, helpers_1.checkType_Number)(t, opds.OpensearchItemsPerPage); (0, helpers_1.checkNumber)(t, opds.OpensearchItemsPerPage, num); }); //# sourceMappingURL=test-JSON-XML-Number.js.map