@@ -5,7 +5,6 @@ import express from 'express';
55import supertest from 'supertest' ;
66
77import { ApiSpec , apiSpec , httpRequest , httpRoute , optional } from '@api-ts/io-ts-http' ;
8- import { Response } from '@api-ts/response' ;
98import { buildApiClient , supertestRequestFactory } from '@api-ts/superagent-wrapper' ;
109
1110import { createServer } from '../src' ;
@@ -24,17 +23,17 @@ const PutHello = httpRoute({
2423 } ) ,
2524 response : {
2625 // TODO: create prettier names for these codecs at the io-ts-http level
27- ok : t . type ( {
26+ 200 : t . type ( {
2827 message : t . string ,
2928 appMiddlewareRan : t . boolean ,
3029 routeMiddlewareRan : t . boolean ,
3130 } ) ,
32- invalidRequest : t . type ( {
31+ 400 : t . type ( {
3332 errors : t . string ,
3433 } ) ,
35- notFound : t . unknown ,
34+ 404 : t . unknown ,
3635 // DISCUSS: what if a response isn't listed here but shows up?
37- internalError : t . unknown ,
36+ 500 : t . unknown ,
3837 } ,
3938} ) ;
4039type PutHello = typeof PutHello ;
@@ -48,7 +47,7 @@ const GetHello = httpRoute({
4847 } ,
4948 } ) ,
5049 response : {
51- ok : t . type ( {
50+ 200 : t . type ( {
5251 id : t . string ,
5352 } ) ,
5453 } ,
@@ -78,21 +77,31 @@ const CreateHelloWorld = async (parameters: {
7877 routeMiddlewareRan ?: boolean ;
7978} ) => {
8079 if ( parameters . secretCode === 0 ) {
81- return Response . invalidRequest ( {
82- errors : 'Please do not tell me zero! I will now explode' ,
83- } ) ;
80+ return {
81+ type : 400 ,
82+ payload : {
83+ errors : 'Please do not tell me zero! I will now explode' ,
84+ } ,
85+ } as const ;
8486 }
85- return Response . ok ( {
86- message :
87- parameters . secretCode === 42
88- ? 'Everything you see from here is yours'
89- : "Who's there?" ,
90- appMiddlewareRan : parameters . appMiddlewareRan ?? false ,
91- routeMiddlewareRan : parameters . routeMiddlewareRan ?? false ,
92- } ) ;
87+ return {
88+ type : 200 ,
89+ payload : {
90+ message :
91+ parameters . secretCode === 42
92+ ? 'Everything you see from here is yours'
93+ : "Who's there?" ,
94+ appMiddlewareRan : parameters . appMiddlewareRan ?? false ,
95+ routeMiddlewareRan : parameters . routeMiddlewareRan ?? false ,
96+ } ,
97+ } as const ;
9398} ;
9499
95- const GetHelloWorld = async ( params : { id : string } ) => Response . ok ( params ) ;
100+ const GetHelloWorld = async ( params : { id : string } ) =>
101+ ( {
102+ type : 200 ,
103+ payload : params ,
104+ } as const ) ;
96105
97106test ( 'should offer a delightful developer experience' , async ( t ) => {
98107 const app = createServer ( ApiSpec , ( app : express . Application ) => {
0 commit comments