@@ -16,24 +16,27 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
1616 it ( 'should register ObjectQL as metadata service provider' , async ( ) => {
1717 // Arrange
1818 const plugin = new ObjectQLPlugin ( ) ;
19- kernel . use ( plugin ) ;
19+ await kernel . use ( plugin ) ;
2020
2121 // Act
2222 await kernel . bootstrap ( ) ;
2323
2424 // Assert
2525 const metadataService = kernel . getService ( 'metadata' ) ;
2626 expect ( metadataService ) . toBeDefined ( ) ;
27-
28- // Should be the ObjectQL instance
27+
28+ // ObjectQL registers a MetadataFacade as the metadata service;
29+ // it is separate from (but backed by the same registry as) the objectql service.
2930 const objectql = kernel . getService ( 'objectql' ) ;
30- expect ( metadataService ) . toBe ( objectql ) ;
31+ expect ( objectql ) . toBeDefined ( ) ;
32+ // metadata and objectql are distinct service instances
33+ expect ( metadataService ) . not . toBe ( objectql ) ;
3134 } ) ;
3235
3336 it ( 'should serve in-memory metadata definitions' , async ( ) => {
3437 // Arrange
3538 const plugin = new ObjectQLPlugin ( ) ;
36- kernel . use ( plugin ) ;
39+ await kernel . use ( plugin ) ;
3740 await kernel . bootstrap ( ) ;
3841
3942 const objectql = kernel . getService ( 'objectql' ) as any ;
@@ -49,25 +52,21 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
4952 }
5053 } ;
5154
52- // Act - Register object programmatically
53- objectql . registry . registerObject ( {
54- packageId : 'test' ,
55- namespace : 'test' ,
56- ownership : 'own' ,
57- object : testObject
58- } ) ;
55+ // Act - Register object programmatically via the SchemaRegistry API
56+ objectql . registry . registerObject ( testObject , 'test' , 'test' ) ;
5957
60- // Assert - Should be retrievable via registry
61- const objects = objectql . registry . listObjects ( ) ;
62- expect ( objects ) . toContain ( 'test__test_object' ) ;
58+ // Assert - Should be retrievable via registry (getAllObjects returns ServiceObject[])
59+ const objects = objectql . registry . getAllObjects ( ) ;
60+ const fqns = objects . map ( ( o : any ) => o . name ) ;
61+ expect ( fqns ) . toContain ( 'test__test_object' ) ;
6362 } ) ;
6463 } ) ;
6564
6665 describe ( 'Service Registration' , ( ) => {
6766 it ( 'should register objectql, data, and protocol services' , async ( ) => {
6867 // Arrange
6968 const plugin = new ObjectQLPlugin ( ) ;
70- kernel . use ( plugin ) ;
69+ await kernel . use ( plugin ) ;
7170
7271 // Act
7372 await kernel . bootstrap ( ) ;
@@ -88,7 +87,7 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
8887 list : async ( ) => [ ]
8988 } ;
9089
91- kernel . use ( {
90+ await kernel . use ( {
9291 name : 'mock-metadata' ,
9392 type : 'test' ,
9493 version : '1.0.0' ,
@@ -98,7 +97,7 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
9897 } ) ;
9998
10099 const plugin = new ObjectQLPlugin ( ) ;
101- kernel . use ( plugin ) ;
100+ await kernel . use ( plugin ) ;
102101
103102 // Act
104103 await kernel . bootstrap ( ) ;
@@ -125,7 +124,7 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
125124 delete : async ( ) => ( { count : 1 } )
126125 } ;
127126
128- kernel . use ( {
127+ await kernel . use ( {
129128 name : 'mock-driver-plugin' ,
130129 type : 'driver' ,
131130 version : '1.0.0' ,
@@ -135,7 +134,7 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
135134 } ) ;
136135
137136 const plugin = new ObjectQLPlugin ( ) ;
138- kernel . use ( plugin ) ;
137+ await kernel . use ( plugin ) ;
139138
140139 // Act
141140 await kernel . bootstrap ( ) ;
@@ -156,7 +155,7 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
156155 }
157156 } ;
158157
159- kernel . use ( {
158+ await kernel . use ( {
160159 name : 'mock-app-plugin' ,
161160 type : 'app' ,
162161 version : '1.0.0' ,
@@ -166,7 +165,7 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
166165 } ) ;
167166
168167 const plugin = new ObjectQLPlugin ( ) ;
169- kernel . use ( plugin ) ;
168+ await kernel . use ( plugin ) ;
170169
171170 // Act
172171 await kernel . bootstrap ( ) ;
@@ -212,7 +211,7 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
212211 } ;
213212
214213 // Register mock metadata service BEFORE ObjectQL
215- kernel . use ( {
214+ await kernel . use ( {
216215 name : 'mock-metadata' ,
217216 type : 'metadata' ,
218217 version : '1.0.0' ,
@@ -222,7 +221,7 @@ describe('ObjectQLPlugin - Metadata Service Integration', () => {
222221 } ) ;
223222
224223 const plugin = new ObjectQLPlugin ( ) ;
225- kernel . use ( plugin ) ;
224+ await kernel . use ( plugin ) ;
226225
227226 // Act
228227 await kernel . bootstrap ( ) ;
0 commit comments