@@ -31,6 +31,7 @@ import { newErrorDecision } from '../optimizely_decision';
3131import { ImpressionEvent } from '../event_processor/event_builder/user_event' ;
3232import { OptimizelyDecideOption } from '../shared_types' ;
3333import { NOTIFICATION_TYPES , DECISION_NOTIFICATION_TYPES } from '../notification_center/type' ;
34+ import { ODP_MANAGER_MISSING } from '../message/error_message' ;
3435
3536
3637const holdoutData = [
@@ -905,4 +906,49 @@ describe('Optimizely', () => {
905906
906907 expect ( optimizely . isRunning ( ) ) . toBe ( true ) ;
907908 } ) ;
909+
910+ it ( 'should log error when sendOdpEvent is called without odpManager' , ( ) => {
911+ const projectConfigManager = getMockProjectConfigManager ( {
912+ initConfig : createProjectConfig ( testData . getTestProjectConfig ( ) ) ,
913+ } ) ;
914+
915+ const mockLogger = getMockLogger ( ) ;
916+ const optimizely = new Optimizely ( {
917+ clientEngine : 'node-sdk' ,
918+ projectConfigManager,
919+ jsonSchemaValidator,
920+ logger : mockLogger ,
921+ eventProcessor,
922+ disposable : true ,
923+ cmabService : { } as any
924+ // odpManager is not provided
925+ } ) ;
926+
927+ optimizely . sendOdpEvent ( 'test_action' , 'test_type' ) ;
928+
929+ expect ( mockLogger . error ) . toHaveBeenCalledWith ( ODP_MANAGER_MISSING , 'sendOdpEvent' ) ;
930+ } ) ;
931+
932+ it ( 'should log error when fetchQualifiedSegments is called without odpManager' , async ( ) => {
933+ const projectConfigManager = getMockProjectConfigManager ( {
934+ initConfig : createProjectConfig ( testData . getTestProjectConfig ( ) ) ,
935+ } ) ;
936+
937+ const mockLogger = getMockLogger ( ) ;
938+ const optimizely = new Optimizely ( {
939+ clientEngine : 'node-sdk' ,
940+ projectConfigManager,
941+ jsonSchemaValidator,
942+ logger : mockLogger ,
943+ eventProcessor,
944+ disposable : true ,
945+ cmabService : { } as any
946+ // odpManager is not provided
947+ } ) ;
948+
949+ const result = await optimizely . fetchQualifiedSegments ( 'test_user' ) ;
950+
951+ expect ( result ) . toBeNull ( ) ;
952+ expect ( mockLogger . error ) . toHaveBeenCalledWith ( ODP_MANAGER_MISSING , 'fetchQualifiedSegments' ) ;
953+ } ) ;
908954} ) ;
0 commit comments