55 */
66
77import { BehaviorSubject } from 'rxjs' ;
8- import { licenseMock } from '../common/licensing.mock' ;
98
9+ import { licenseMock } from '../common/licensing.mock' ;
1010import { createRouteHandlerContext } from './licensing_route_handler_context' ;
11+ import { featureUsageMock } from './services/feature_usage_service.mock' ;
12+ import { FeatureUsageServiceStart } from './services' ;
13+ import { StartServicesAccessor } from 'src/core/server' ;
14+ import { LicensingPluginStart } from './types' ;
15+
16+ const createStartServices = (
17+ featureUsage : FeatureUsageServiceStart = featureUsageMock . createStart ( )
18+ ) : StartServicesAccessor < { } , LicensingPluginStart > => {
19+ return async ( ) => [ { } as any , { } , { featureUsage } as LicensingPluginStart ] ;
20+ } ;
1121
1222describe ( 'createRouteHandlerContext' , ( ) => {
1323 it ( 'returns a function providing the last license value' , async ( ) => {
1424 const firstLicense = licenseMock . createLicense ( ) ;
1525 const secondLicense = licenseMock . createLicense ( ) ;
1626 const license$ = new BehaviorSubject ( firstLicense ) ;
1727
18- const routeHandler = createRouteHandlerContext ( license$ ) ;
28+ const routeHandler = createRouteHandlerContext ( license$ , createStartServices ( ) ) ;
1929
2030 const firstCtx = await routeHandler ( { } as any , { } as any , { } as any ) ;
2131 license$ . next ( secondLicense ) ;
@@ -24,4 +34,14 @@ describe('createRouteHandlerContext', () => {
2434 expect ( firstCtx . license ) . toBe ( firstLicense ) ;
2535 expect ( secondCtx . license ) . toBe ( secondLicense ) ;
2636 } ) ;
37+
38+ it ( 'returns a the feature usage API' , async ( ) => {
39+ const license$ = new BehaviorSubject ( licenseMock . createLicense ( ) ) ;
40+ const featureUsage = featureUsageMock . createStart ( ) ;
41+
42+ const routeHandler = createRouteHandlerContext ( license$ , createStartServices ( featureUsage ) ) ;
43+ const ctx = await routeHandler ( { } as any , { } as any , { } as any ) ;
44+
45+ expect ( ctx . featureUsage ) . toBe ( featureUsage ) ;
46+ } ) ;
2747} ) ;
0 commit comments