@@ -13,6 +13,7 @@ import { useCursor } from "../../hooks/useCursor.js";
1313import { useFocus } from "../../hooks/useFocus.js" ;
1414import { useInput } from "../../hooks/useInput.js" ;
1515import { useIsScreenReaderEnabled } from "../../hooks/useIsScreenReaderEnabled.js" ;
16+ import type { InkHostNode } from "../../reconciler/types.js" ;
1617import { measureElement } from "../../runtime/measureElement.js" ;
1718import { render as runtimeRender } from "../../runtime/render.js" ;
1819import { render } from "../../testing/index.js" ;
@@ -457,12 +458,12 @@ test("runtime render populates __inkLayout and resolves percent widths", async (
457458 const stdout = new PassThrough ( ) ;
458459 const stderr = new PassThrough ( ) ;
459460
460- let parentNode : unknown ;
461- let childNode : unknown ;
461+ let parentNode : InkHostNode | null = null ;
462+ let childNode : InkHostNode | null = null ;
462463
463464 function App ( ) : React . ReactElement {
464- const parentRef = React . useRef < unknown > ( null ) ;
465- const childRef = React . useRef < unknown > ( null ) ;
465+ const parentRef = React . useRef < InkHostNode | null > ( null ) ;
466+ const childRef = React . useRef < InkHostNode | null > ( null ) ;
466467
467468 useEffect ( ( ) => {
468469 parentNode = parentRef . current ;
@@ -483,8 +484,10 @@ test("runtime render populates __inkLayout and resolves percent widths", async (
483484 const instance = runtimeRender ( React . createElement ( App ) , { stdin, stdout, stderr } ) ;
484485 try {
485486 await new Promise ( ( resolve ) => setTimeout ( resolve , 40 ) ) ;
486- assert . equal ( measureElement ( parentNode as never ) . width , 20 ) ;
487- assert . equal ( measureElement ( childNode as never ) . width , 20 ) ;
487+ assert . ok ( parentNode != null , "parent ref should be set" ) ;
488+ assert . ok ( childNode != null , "child ref should be set" ) ;
489+ assert . equal ( measureElement ( parentNode ) . width , 20 ) ;
490+ assert . equal ( measureElement ( childNode ) . width , 20 ) ;
488491 } finally {
489492 instance . unmount ( ) ;
490493 instance . cleanup ( ) ;
@@ -497,18 +500,18 @@ test("runtime render resolves nested percent sizing from resolved parent layout"
497500 const stdout = new PassThrough ( ) ;
498501 const stderr = new PassThrough ( ) ;
499502
500- let rowParentNode : unknown ;
501- let widthNode : unknown ;
502- let basisNode : unknown ;
503- let columnParentNode : unknown ;
504- let heightNode : unknown ;
503+ let rowParentNode : InkHostNode | null = null ;
504+ let widthNode : InkHostNode | null = null ;
505+ let basisNode : InkHostNode | null = null ;
506+ let columnParentNode : InkHostNode | null = null ;
507+ let heightNode : InkHostNode | null = null ;
505508
506509 function App ( ) : React . ReactElement {
507- const rowParentRef = React . useRef < unknown > ( null ) ;
508- const widthRef = React . useRef < unknown > ( null ) ;
509- const basisRef = React . useRef < unknown > ( null ) ;
510- const columnParentRef = React . useRef < unknown > ( null ) ;
511- const heightRef = React . useRef < unknown > ( null ) ;
510+ const rowParentRef = React . useRef < InkHostNode | null > ( null ) ;
511+ const widthRef = React . useRef < InkHostNode | null > ( null ) ;
512+ const basisRef = React . useRef < InkHostNode | null > ( null ) ;
513+ const columnParentRef = React . useRef < InkHostNode | null > ( null ) ;
514+ const heightRef = React . useRef < InkHostNode | null > ( null ) ;
512515
513516 useEffect ( ( ) => {
514517 rowParentNode = rowParentRef . current ;
@@ -555,11 +558,16 @@ test("runtime render resolves nested percent sizing from resolved parent layout"
555558 const instance = runtimeRender ( React . createElement ( App ) , { stdin, stdout, stderr } ) ;
556559 try {
557560 await new Promise ( ( resolve ) => setTimeout ( resolve , 60 ) ) ;
558- assert . equal ( measureElement ( rowParentNode as never ) . width , 40 ) ;
559- assert . equal ( measureElement ( widthNode as never ) . width , 20 ) ;
560- assert . equal ( measureElement ( basisNode as never ) . width , 20 ) ;
561- assert . equal ( measureElement ( columnParentNode as never ) . height , 12 ) ;
562- assert . equal ( measureElement ( heightNode as never ) . height , 6 ) ;
561+ assert . ok ( rowParentNode != null , "row parent ref should be set" ) ;
562+ assert . ok ( widthNode != null , "width ref should be set" ) ;
563+ assert . ok ( basisNode != null , "basis ref should be set" ) ;
564+ assert . ok ( columnParentNode != null , "column parent ref should be set" ) ;
565+ assert . ok ( heightNode != null , "height ref should be set" ) ;
566+ assert . equal ( measureElement ( rowParentNode ) . width , 40 ) ;
567+ assert . equal ( measureElement ( widthNode ) . width , 20 ) ;
568+ assert . equal ( measureElement ( basisNode ) . width , 20 ) ;
569+ assert . equal ( measureElement ( columnParentNode ) . height , 12 ) ;
570+ assert . equal ( measureElement ( heightNode ) . height , 6 ) ;
563571 } finally {
564572 instance . unmount ( ) ;
565573 instance . cleanup ( ) ;
0 commit comments