tendermint-rpc: Add tests for DateTime
This commit is contained in:
parent
67aa4f786f
commit
98a771fcfc
@ -1,8 +1,54 @@
|
||||
import { ReadonlyDate } from "readonly-date";
|
||||
|
||||
import { encodeBlockId, encodeBytes, encodeInt, encodeString, encodeTime, encodeVersion } from "./encodings";
|
||||
import {
|
||||
DateTime,
|
||||
DateTimeString,
|
||||
encodeBlockId,
|
||||
encodeBytes,
|
||||
encodeInt,
|
||||
encodeString,
|
||||
encodeTime,
|
||||
encodeVersion,
|
||||
} from "./encodings";
|
||||
import { ReadonlyDateWithNanoseconds } from "./responses";
|
||||
|
||||
describe("encodings", () => {
|
||||
describe("DateTime", () => {
|
||||
it("decodes a string", () => {
|
||||
expect(DateTime.decode("2020-12-15T10:57:26.778Z" as DateTimeString).nanoseconds).toEqual(0);
|
||||
expect(DateTime.decode("2020-12-15T10:57:26.7789Z" as DateTimeString).nanoseconds).toEqual(900000);
|
||||
expect(DateTime.decode("2020-12-15T10:57:26.77809Z" as DateTimeString).nanoseconds).toEqual(90000);
|
||||
expect(DateTime.decode("2020-12-15T10:57:26.778009Z" as DateTimeString).nanoseconds).toEqual(9000);
|
||||
expect(DateTime.decode("2020-12-15T10:57:26.7780009Z" as DateTimeString).nanoseconds).toEqual(900);
|
||||
expect(DateTime.decode("2020-12-15T10:57:26.77800009Z" as DateTimeString).nanoseconds).toEqual(90);
|
||||
expect(DateTime.decode("2020-12-15T10:57:26.778000009Z" as DateTimeString).nanoseconds).toEqual(9);
|
||||
});
|
||||
|
||||
it("encodes a string", () => {
|
||||
const date1 = new ReadonlyDate("2020-12-15T10:57:26.778Z") as ReadonlyDateWithNanoseconds;
|
||||
(date1 as any).nanoseconds = 0;
|
||||
expect(DateTime.encode(date1)).toEqual("2020-12-15T10:57:26.778000000Z");
|
||||
const date2 = new ReadonlyDate("2020-12-15T10:57:26.778Z") as ReadonlyDateWithNanoseconds;
|
||||
(date2 as any).nanoseconds = 900000;
|
||||
expect(DateTime.encode(date2)).toEqual("2020-12-15T10:57:26.778900000Z");
|
||||
const date3 = new ReadonlyDate("2020-12-15T10:57:26.778Z") as ReadonlyDateWithNanoseconds;
|
||||
(date3 as any).nanoseconds = 90000;
|
||||
expect(DateTime.encode(date3)).toEqual("2020-12-15T10:57:26.778090000Z");
|
||||
const date4 = new ReadonlyDate("2020-12-15T10:57:26.778Z") as ReadonlyDateWithNanoseconds;
|
||||
(date4 as any).nanoseconds = 9000;
|
||||
expect(DateTime.encode(date4)).toEqual("2020-12-15T10:57:26.778009000Z");
|
||||
const date5 = new ReadonlyDate("2020-12-15T10:57:26.778Z") as ReadonlyDateWithNanoseconds;
|
||||
(date5 as any).nanoseconds = 900;
|
||||
expect(DateTime.encode(date5)).toEqual("2020-12-15T10:57:26.778000900Z");
|
||||
const date6 = new ReadonlyDate("2020-12-15T10:57:26.778Z") as ReadonlyDateWithNanoseconds;
|
||||
(date6 as any).nanoseconds = 90;
|
||||
expect(DateTime.encode(date6)).toEqual("2020-12-15T10:57:26.778000090Z");
|
||||
const date7 = new ReadonlyDate("2020-12-15T10:57:26.778Z") as ReadonlyDateWithNanoseconds;
|
||||
(date7 as any).nanoseconds = 9;
|
||||
expect(DateTime.encode(date7)).toEqual("2020-12-15T10:57:26.778000009Z");
|
||||
});
|
||||
});
|
||||
|
||||
describe("encodeString", () => {
|
||||
it("works", () => {
|
||||
expect(encodeString("")).toEqual(Uint8Array.from([0]));
|
||||
|
||||
Loading…
Reference in New Issue
Block a user