@@ -462,7 +462,7 @@ def test_get_variant(self):
462462 experiment_name = "exp_1" , variant = variant , event_fields = event_fields
463463 )
464464
465- def test_none_returned_on_variant_call_with_bad_id (self ):
465+ def test_none_returned_on_get_variant_call_with_bad_id (self ):
466466 config = {
467467 "test" : {
468468 "id" : "1" ,
@@ -496,7 +496,7 @@ def test_none_returned_on_variant_call_with_bad_id(self):
496496 self .assertEqual (self .event_logger .log .call_count , 0 )
497497
498498 assert any (
499- "rust_decider.init() has error: Decider initialization failed: Partially loaded decider: 1 features failed to load. "
499+ "Partially loaded Decider: 1 features failed to load: { \' test \' : \' invalid type: string \" 1 \" , expected u32 \' } "
500500 in x .getMessage ()
501501 for x in captured .records
502502 )
@@ -522,6 +522,41 @@ def test_none_returned_on_get_variant_call_with_no_experiment_data(self):
522522 variant = decider .get_variant ("test" )
523523 self .assertEqual (variant , None )
524524
525+ def test_get_variant_calls_with_partial_data (self ):
526+ config = {
527+ "test" : {
528+ "id" : 1 ,
529+ "name" : "test" ,
530+ "owner" : "test_owner" ,
531+ "type" : "dynamic_config" ,
532+ "version" : "1" ,
533+ "start_ts" : 0 ,
534+ "stop_ts" : 0 ,
535+ }
536+ }
537+ self .exp_base_config .update (config )
538+
539+ with create_temp_config_file (self .exp_base_config ) as f :
540+ decider = setup_decider (
541+ f , self .dc , self .mock_span , self .event_logger
542+ )
543+
544+ self .assertEqual (self .event_logger .log .call_count , 0 )
545+
546+ # get_variant_for_identifier()
547+ variant = decider .get_variant_for_identifier ("test" , USER_ID , "user_id" )
548+ self .assertEqual (variant , None )
549+
550+ variant = decider .get_variant_for_identifier ("exp_1" , USER_ID , "user_id" )
551+ self .assertEqual (variant , "variant_4" )
552+
553+ # get_variant()
554+ variant = decider .get_variant ("test" )
555+ self .assertEqual (variant , None )
556+
557+ variant = decider .get_variant ("exp_1" )
558+ self .assertEqual (variant , "variant_4" )
559+
525560 def test_none_returned_on_get_variant_call_with_experiment_not_found (self ):
526561 with create_temp_config_file ({}) as f :
527562 decider = setup_decider (
0 commit comments