@@ -33,23 +33,23 @@ describe('ObjectStackClient (with Hono Server)', () => {
3333 const ql = kernel . getService < any > ( 'objectql' ) ; // Use 'objectql' service name for clarity
3434 if ( method === 'create' ) {
3535 const res = await ql . insert ( params . object , params . data ) ;
36- // Ensure we return the full object including input data + ID
37- return { ... params . data , ... res } ;
36+ const record = { ... params . data , ... res } ;
37+ return { object : params . object , id : record . id || record . _id , record } ;
3838 }
3939 // Params from HttpDispatcher: { object, id, ...query }
4040 if ( method === 'get' ) {
41- // Ensure we search by 'id' explicitly for InMemoryDriver
42- return ql . findOne ( params . object , { where : { id : params . id } } ) ;
41+ const record = await ql . findOne ( params . object , { where : { id : params . id } } ) ;
42+ return record ? { object : params . object , id : params . id , record } : null ;
4343 }
4444 // Params from HttpDispatcher: { object, filters }
4545 if ( method === 'query' ) {
46- // HttpDispatcher passes filters as simple object (map)
47- // ObjectQL expects { filter, select, sort, ... }
48- const data = await ql . find ( params . object , { filter : params . filters } ) ;
49- // HttpDispatcher expects { data, count }
50- return { data, count : data . length } ;
46+ const records = await ql . find ( params . object , { filter : params . filters } ) ;
47+ return { object : params . object , records, total : records . length } ;
48+ }
49+ if ( method === 'find' ) {
50+ const records = await ql . find ( params . object , { filter : params . filters } ) ;
51+ return { object : params . object , records, total : records . length } ;
5152 }
52- if ( method === 'find' ) return ql . find ( params . object , { filter : params . filters } ) ;
5353 }
5454
5555 if ( service === 'metadata' ) {
@@ -120,32 +120,30 @@ describe('ObjectStackClient (with Hono Server)', () => {
120120 const client = new ObjectStackClient ( { baseUrl } ) ;
121121 await client . connect ( ) ;
122122
123- // Create
123+ // Create — Spec: CreateDataResponse = { object, id, record }
124124 const createdResponse = await client . data . create ( 'customer' , {
125125 name : 'Hono User' ,
126126 email : 'hono@example.com'
127127 } ) ;
128128
129- expect ( createdResponse . success ) . toBe ( true ) ;
130- expect ( createdResponse . data . name ) . toBe ( 'Hono User' ) ;
131- expect ( createdResponse . data . id ) . toBeDefined ( ) ;
132-
133- // Retrieve
134- const retrievedResponse = await client . data . get ( 'customer' , createdResponse . data . id ) ;
135- expect ( retrievedResponse . success ) . toBe ( true ) ;
136- expect ( retrievedResponse . data . name ) . toBe ( 'Hono User' ) ;
129+ expect ( createdResponse . record . name ) . toBe ( 'Hono User' ) ;
130+ expect ( createdResponse . id ) . toBeDefined ( ) ;
131+
132+ // Retrieve — Spec: GetDataResponse = { object, id, record }
133+ const retrievedResponse = await client . data . get ( 'customer' , createdResponse . id ) ;
134+ expect ( retrievedResponse . record . name ) . toBe ( 'Hono User' ) ;
137135 } ) ;
138136
139137 it ( 'should find data via hono' , async ( ) => {
140138 const client = new ObjectStackClient ( { baseUrl } ) ;
141139 await client . connect ( ) ;
142140
141+ // Spec: FindDataResponse = { object, records, total? }
143142 const resultsResponse = await client . data . find ( 'customer' , {
144143 where : { name : 'Hono User' }
145144 } ) ;
146145
147- expect ( resultsResponse . success ) . toBe ( true ) ;
148- expect ( resultsResponse . data . length ) . toBeGreaterThan ( 0 ) ;
149- expect ( resultsResponse . data [ 0 ] . name ) . toBe ( 'Hono User' ) ;
146+ expect ( resultsResponse . records . length ) . toBeGreaterThan ( 0 ) ;
147+ expect ( resultsResponse . records [ 0 ] . name ) . toBe ( 'Hono User' ) ;
150148 } ) ;
151149} ) ;
0 commit comments