@@ -379,7 +379,7 @@ def test_dns_nameserver_migrator(self):
379379 dbmgtr .migrate ()
380380 dbconnector .dedicated_dbs ['CONFIG_DB' ] = os .path .join (mock_db_path , 'config_db' , 'dns-nameserver-expected' )
381381 expected_db = Db ()
382- advance_version_for_expected_database (dbmgtr .configDB , expected_db .cfgdb , 'version_4_0_4 ' )
382+ advance_version_for_expected_database (dbmgtr .configDB , expected_db .cfgdb , 'version_202405_01 ' )
383383 resulting_keys = dbmgtr .configDB .keys (dbmgtr .configDB .CONFIG_DB , 'DNS_NAMESERVER*' )
384384 expected_keys = expected_db .cfgdb .keys (expected_db .cfgdb .CONFIG_DB , 'DNS_NAMESERVER*' )
385385
@@ -767,6 +767,7 @@ def test_fast_reboot_upgrade_to_4_0_3(self):
767767 assert not self .check_config_db (dbmgtr .configDB , expected_db .cfgdb )
768768 assert dbmgtr .CURRENT_VERSION == expected_db .cfgdb .get_entry ('VERSIONS' , 'DATABASE' )['VERSION' ], '{} {}' .format (dbmgtr .CURRENT_VERSION , dbmgtr .get_version ())
769769
770+
770771class TestSflowSampleDirectionMigrator (object ):
771772 @classmethod
772773 def setup_class (cls ):
@@ -885,3 +886,59 @@ def test_init(self, mock_args):
885886 mock_args .return_value = argparse .Namespace (namespace = None , operation = 'get_version' , socket = None )
886887 import db_migrator
887888 db_migrator .main ()
889+
890+
891+ class TestGNMIMigrator (object ):
892+ @classmethod
893+ def setup_class (cls ):
894+ os .environ ['UTILITIES_UNIT_TESTING' ] = "2"
895+
896+ @classmethod
897+ def teardown_class (cls ):
898+ os .environ ['UTILITIES_UNIT_TESTING' ] = "0"
899+ dbconnector .dedicated_dbs ['CONFIG_DB' ] = None
900+
901+ def test_dns_nameserver_migrator_minigraph (self ):
902+ dbconnector .dedicated_dbs ['CONFIG_DB' ] = os .path .join (mock_db_path , 'config_db' , 'gnmi-input' )
903+ import db_migrator
904+ dbmgtr = db_migrator .DBMigrator (None )
905+ # Set config_src_data
906+ dbmgtr .config_src_data = {
907+ 'GNMI' : {
908+ 'gnmi' : {
909+ "client_auth" : "true" ,
910+ "log_level" : "2" ,
911+ "port" : "50052"
912+ },
913+ 'certs' : {
914+ "server_key" : "/etc/sonic/telemetry/streamingtelemetryserver.key" ,
915+ "ca_crt" : "/etc/sonic/telemetry/dsmsroot.cer" ,
916+ "server_crt" : "/etc/sonic/telemetry/streamingtelemetryserver.cer"
917+ }
918+ }
919+ }
920+ dbmgtr .migrate ()
921+ dbconnector .dedicated_dbs ['CONFIG_DB' ] = os .path .join (mock_db_path , 'config_db' , 'gnmi-minigraph-expected' )
922+ expected_db = Db ()
923+ advance_version_for_expected_database (dbmgtr .configDB , expected_db .cfgdb , 'version_202405_01' )
924+ resulting_table = dbmgtr .configDB .get_table ("GNMI" )
925+ expected_table = expected_db .cfgdb .get_table ("GNMI" )
926+
927+ diff = DeepDiff (resulting_table , expected_table , ignore_order = True )
928+ assert not diff
929+
930+ def test_dns_nameserver_migrator_configdb (self ):
931+ dbconnector .dedicated_dbs ['CONFIG_DB' ] = os .path .join (mock_db_path , 'config_db' , 'gnmi-input' )
932+ import db_migrator
933+ dbmgtr = db_migrator .DBMigrator (None )
934+ # Set config_src_data
935+ dbmgtr .config_src_data = {}
936+ dbmgtr .migrate ()
937+ dbconnector .dedicated_dbs ['CONFIG_DB' ] = os .path .join (mock_db_path , 'config_db' , 'gnmi-configdb-expected' )
938+ expected_db = Db ()
939+ advance_version_for_expected_database (dbmgtr .configDB , expected_db .cfgdb , 'version_202405_01' )
940+ resulting_table = dbmgtr .configDB .get_table ("GNMI" )
941+ expected_table = expected_db .cfgdb .get_table ("GNMI" )
942+
943+ diff = DeepDiff (resulting_table , expected_table , ignore_order = True )
944+ assert not diff
0 commit comments