Skip to content

Commit

Permalink
tests: add Type/Option assignability tests
Browse files Browse the repository at this point in the history
  • Loading branch information
jviide committed Apr 25, 2024
1 parent 733b483 commit a45dd53
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions tests/index.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,13 @@ function expectType<T extends v.Type | v.Optional>(
}

describe("Type", () => {
it("is not assignable from Optional", () => {
expectType(v.unknown().optional()).toBeAssignableTo<v.Type>(false);
});
it("is not assignable to Optional", () => {
expectType(v.unknown()).toBeAssignableTo<v.Optional>(false);
});

describe("try", () => {
it("returns ValitaResult<T> when called for v.Type<T>", () => {
function _<T>(type: v.Type<T>, value: unknown): v.ValitaResult<T> {
Expand Down Expand Up @@ -334,6 +341,10 @@ describe("Type", () => {
});
});
describe("optional()", () => {
it("returns an Optional", () => {
expectType(v.unknown().optional()).toBeAssignableTo<v.Optional>(true);
expectType(v.unknown().optional()).toBeAssignableTo<v.Type>(false);
});
it("accepts missing values", () => {
const t = v.object({
a: v.string().optional(),
Expand Down

0 comments on commit a45dd53

Please sign in to comment.