11import { assertEquals } from "@std/assert" ;
2- import { assertType } from "@std/testing/types" ;
3- import { type Equal , testWithExamples } from "../_testutil.ts" ;
2+ import { assertType , type IsExact } from "@std/testing/types" ;
3+ import { testWithExamples } from "../_testutil.ts" ;
44import { is } from "../is/mod.ts" ;
55import type { AsReadonly } from "../_annotation.ts" ;
66import { asReadonly , asUnreadonly , hasReadonly } from "./readonly.ts" ;
@@ -35,7 +35,10 @@ Deno.test("asReadonly<T>", async (t) => {
3535 const v : unknown = undefined ;
3636 if ( pred ( v ) ) {
3737 assertType <
38- Equal < typeof v , { a : number ; readonly b : number ; readonly c : number } >
38+ IsExact <
39+ typeof v ,
40+ { a : number ; readonly b : number ; readonly c : number }
41+ >
3942 > (
4043 true ,
4144 ) ;
@@ -53,7 +56,7 @@ Deno.test("asReadonly<T>", async (t) => {
5356 const v : unknown = undefined ;
5457 if ( pred ( v ) ) {
5558 assertType <
56- Equal < typeof v , [ number , number , number ] >
59+ IsExact < typeof v , [ number , number , number ] >
5760 > (
5861 true ,
5962 ) ;
@@ -73,7 +76,7 @@ Deno.test("asReadonly<T>", async (t) => {
7376 const v : unknown = undefined ;
7477 if ( pred ( v ) ) {
7578 assertType <
76- Equal < typeof v , [ number , number , number ] >
79+ IsExact < typeof v , [ number , number , number ] >
7780 > (
7881 true ,
7982 ) ;
@@ -111,7 +114,7 @@ Deno.test("asUnreadonly<T>", async (t) => {
111114 await t . step ( "predicated type is correct" , ( ) => {
112115 const v : unknown = undefined ;
113116 if ( pred ( v ) ) {
114- assertType < Equal < typeof v , { a : number ; b : number ; c : number } > > (
117+ assertType < IsExact < typeof v , { a : number ; b : number ; c : number } > > (
115118 true ,
116119 ) ;
117120 }
@@ -128,7 +131,7 @@ Deno.test("asUnreadonly<T>", async (t) => {
128131 const v : unknown = undefined ;
129132 if ( pred ( v ) ) {
130133 assertType <
131- Equal < typeof v , [ number , number , number ] >
134+ IsExact < typeof v , [ number , number , number ] >
132135 > (
133136 true ,
134137 ) ;
@@ -148,7 +151,7 @@ Deno.test("asUnreadonly<T>", async (t) => {
148151 const v : unknown = undefined ;
149152 if ( pred ( v ) ) {
150153 assertType <
151- Equal < typeof v , [ number , number , number ] >
154+ IsExact < typeof v , [ number , number , number ] >
152155 > (
153156 true ,
154157 ) ;
@@ -172,7 +175,7 @@ Deno.test("hasReadonly<P>", async (t) => {
172175 const pred = asReadonly ( is . Number ) ;
173176 type P = typeof pred ;
174177 if ( hasReadonly ( pred ) ) {
175- assertType < Equal < typeof pred , P & AsReadonly > > ( true ) ;
178+ assertType < IsExact < typeof pred , P & AsReadonly > > ( true ) ;
176179 }
177180 } ) ;
178181} ) ;
0 commit comments