@@ -3,42 +3,39 @@ import ReactDOM from "react-dom";
33import ExamplePairing from "./ExamplePairing" ;
44import examples from "@open-rpc/examples" ;
55import refParser from "json-schema-ref-parser" ;
6- import { OpenrpcDocument } from "@open-rpc/meta-schema" ;
6+ import { MethodObject , OpenrpcDocument , ExamplePairingObject } from "@open-rpc/meta-schema" ;
77
88it ( "renders handles no method" , async ( ) => {
99 const div = document . createElement ( "div" ) ;
10- ReactDOM . render ( < ExamplePairing method = { undefined } examplePosition = { 0 } /> , div ) ;
10+ ReactDOM . render ( < ExamplePairing methodName = { undefined } examplePairing = { { } as any } /> , div ) ;
1111 expect ( div . innerHTML ) . toBe ( "" ) ;
1212 ReactDOM . unmountComponentAtNode ( div ) ;
1313} ) ;
1414
1515it ( "renders handles no method examples" , async ( ) => {
1616 const div = document . createElement ( "div" ) ;
17- ReactDOM . render ( < ExamplePairing method = { { } as any } examplePosition = { 0 } /> , div ) ;
18- expect ( div . innerHTML ) . toBe ( "" ) ;
19- ReactDOM . unmountComponentAtNode ( div ) ;
20- } ) ;
21-
22- it ( "renders handles no examplePosition" , async ( ) => {
23- const div = document . createElement ( "div" ) ;
24- const simpleMath = await refParser . dereference ( examples . simpleMath ) as OpenrpcDocument ;
25- ReactDOM . render ( < ExamplePairing method = { simpleMath . methods [ 0 ] } /> , div ) ;
17+ ReactDOM . render ( < ExamplePairing methodName = { "foo" } /> , div ) ;
2618 expect ( div . innerHTML ) . toBe ( "" ) ;
2719 ReactDOM . unmountComponentAtNode ( div ) ;
2820} ) ;
2921
3022it ( "renders examples" , async ( ) => {
3123 const div = document . createElement ( "div" ) ;
3224 const simpleMath = await refParser . dereference ( examples . simpleMath ) as OpenrpcDocument ;
33- ReactDOM . render ( < ExamplePairing method = { simpleMath . methods [ 0 ] } examplePosition = { 0 } /> , div ) ;
25+ ReactDOM . render (
26+ < ExamplePairing
27+ methodName = { simpleMath . methods [ 0 ] . name }
28+ examplePairing = { simpleMath . methods [ 0 ] . examples && simpleMath . methods [ 0 ] . examples [ 0 ] as any }
29+ />
30+ , div ) ;
3431 expect ( div . innerHTML . includes ( "2" ) ) . toBe ( true ) ;
3532 expect ( div . innerHTML . includes ( "4" ) ) . toBe ( true ) ;
3633 ReactDOM . unmountComponentAtNode ( div ) ;
3734} ) ;
3835
3936it ( "renders examples with params by-name" , async ( ) => {
4037 const div = document . createElement ( "div" ) ;
41- ReactDOM . render ( < ExamplePairing method = { {
38+ const method : MethodObject = {
4239 examples : [
4340 {
4441 name : "fooExample" ,
@@ -68,7 +65,13 @@ it("renders examples with params by-name", async () => {
6865 type : "string" ,
6966 } ,
7067 } ,
71- } } examplePosition = { 0 } /> , div ) ;
68+ } ;
69+ ReactDOM . render (
70+ < ExamplePairing
71+ methodName = { method . name }
72+ examplePairing = { method . examples && method . examples [ 0 ] as ExamplePairingObject }
73+ paramStructure = { method . paramStructure || "by-position" } />
74+ , div ) ;
7275 expect ( div . innerHTML . includes ( "foo" ) ) . toBe ( true ) ;
7376 expect ( div . innerHTML . includes ( "bar" ) ) . toBe ( true ) ;
7477 ReactDOM . unmountComponentAtNode ( div ) ;
0 commit comments