@foxglove/xmlrpc
Version:
TypeScript library implementing an XMLRPC client and server with pluggable server backend
33 lines • 1.87 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const DateFormatter_1 = require("./DateFormatter");
const DATEIN1 = "2019-09-07T-15:50+00";
const DATEIN2 = "2019-09-07T15:50.123+00Z";
const DATEIN3 = "2019-09-07T15:50.000-04:00";
const DATE1 = new Date(Date.UTC(2019, 8, 7, 15, 50, 0, 0));
const DATE2 = new Date(Date.UTC(2019, 8, 7, 15, 50, 0, 123));
const DATE3 = new Date(Date.UTC(2019, 8, 7, 19, 50, 0, 0));
const DATEOUT1 = "2019-09-07T15:50:00.000Z";
const DATEOUT2 = "2019-09-07T15:50:00.123Z";
const DATEOUT3 = "2019-09-07T19:50:00.000Z";
describe("DateFormatter", () => {
it("decodes timestamps", () => {
expect(new DateFormatter_1.DateFormatter().decodeIso8601(DATEIN1)).toEqual(DATE1);
expect(new DateFormatter_1.DateFormatter().decodeIso8601(DATEIN2)).toEqual(DATE2);
expect(new DateFormatter_1.DateFormatter().decodeIso8601(DATEIN3)).toEqual(DATE3);
});
it("encodes timestamps", () => {
expect(new DateFormatter_1.DateFormatter().encodeIso8601(DATE1)).toEqual(DATEOUT1);
expect(new DateFormatter_1.DateFormatter().encodeIso8601(DATE2)).toEqual(DATEOUT2);
expect(new DateFormatter_1.DateFormatter().encodeIso8601(DATE3)).toEqual(DATEOUT3);
});
it("round trips timestamps", () => {
const date1 = new DateFormatter_1.DateFormatter().decodeIso8601(DATEOUT1);
const date2 = new DateFormatter_1.DateFormatter().decodeIso8601(DATEOUT2);
const date3 = new DateFormatter_1.DateFormatter().decodeIso8601(DATEOUT3);
expect(new DateFormatter_1.DateFormatter().encodeIso8601(date1)).toEqual(DATEOUT1);
expect(new DateFormatter_1.DateFormatter().encodeIso8601(date2)).toEqual(DATEOUT2);
expect(new DateFormatter_1.DateFormatter().encodeIso8601(date3)).toEqual(DATEOUT3);
});
});
//# sourceMappingURL=DateFormatter.test.js.map