@@ -634,40 +634,29 @@ def thread_coming_entry():
634
634
def test_ConfigDBInit ():
635
635
table_name_1 = 'TEST_TABLE_1'
636
636
table_name_2 = 'TEST_TABLE_2'
637
- table_name_3 = 'TEST_TABLE_3'
638
637
test_key = 'key1'
639
638
test_data = {'field1' : 'value1' }
640
-
641
- queue = multiprocessing .Queue ()
639
+ test_data_update = {'field1' : 'value2' }
642
640
643
641
manager = multiprocessing .Manager ()
644
642
ret_data = manager .dict ()
645
643
646
- def test_handler (table , key , data , ret , q = None ):
647
- if data is None :
648
- ret [table ] = {k : v for k , v in ret [table ].items () if k != key }
649
- else :
650
- ret [table ] = {key : data }
651
-
652
- if q :
653
- q .put (ret [table ])
644
+ def test_handler (table , key , data , ret ):
645
+ ret [table ] = {key : data }
654
646
655
- def test_init_handler (data , ret , queue ):
647
+ def test_init_handler (data , ret ):
656
648
ret .update (data )
657
- queue .put (ret )
658
649
659
- def thread_listen (ret , queue ):
650
+ def thread_listen (ret ):
660
651
config_db = ConfigDBConnector ()
661
652
config_db .connect (wait_for_init = False )
662
653
663
654
config_db .subscribe (table_name_1 , lambda table , key , data : test_handler (table , key , data , ret ),
664
655
fire_init_data = False )
665
656
config_db .subscribe (table_name_2 , lambda table , key , data : test_handler (table , key , data , ret ),
666
657
fire_init_data = True )
667
- config_db .subscribe (table_name_3 , lambda table , key , data : test_handler (table , key , data , ret , queue ),
668
- fire_init_data = False )
669
658
670
- config_db .listen (init_data_handler = lambda data : test_init_handler (data , ret , queue ))
659
+ config_db .listen (init_data_handler = lambda data : test_init_handler (data , ret ))
671
660
672
661
config_db = ConfigDBConnector ()
673
662
config_db .connect (wait_for_init = False )
@@ -677,27 +666,15 @@ def thread_listen(ret, queue):
677
666
# Init table data
678
667
config_db .set_entry (table_name_1 , test_key , test_data )
679
668
config_db .set_entry (table_name_2 , test_key , test_data )
680
- config_db .set_entry (table_name_3 , test_key , {})
681
669
682
- thread = multiprocessing .Process (target = thread_listen , args = (ret_data , queue ))
670
+ thread = multiprocessing .Process (target = thread_listen , args = (ret_data ,))
683
671
thread .start ()
684
-
685
- init_data = queue .get (5 )
686
-
687
- # Verify that all tables initialized correctly
688
- assert init_data [table_name_1 ] == {test_key : test_data }
689
- assert init_data [table_name_2 ] == {test_key : test_data }
690
- assert init_data [table_name_3 ] == {test_key : {}}
691
-
692
- # Remove the entry (with no attributes) from the table.
693
- # Verify that the update is received and a callback is called
694
- config_db .set_entry (table_name_3 , test_key , None )
695
-
696
- table_3_data = queue .get (5 )
697
- assert test_key not in table_3_data
698
-
672
+ time .sleep (5 )
699
673
thread .terminate ()
700
674
675
+ assert ret_data [table_name_1 ] == {test_key : test_data }
676
+ assert ret_data [table_name_2 ] == {test_key : test_data }
677
+
701
678
702
679
def test_DBConnectFailure ():
703
680
""" Verify that a DB connection failure will not cause a process abort
0 commit comments