mirror of
				https://github.com/Telecominfraproject/ols-nos.git
				synced 2025-11-01 02:27:58 +00:00 
			
		
		
		
	 c5a7ce0cf4
			
		
	
	c5a7ce0cf4
	
	
	
		
			
			Why I did it DHCPv6 relay config entry is not useful while del dhcpv6 relay config. How I did it Remove dhcpv6_relay entry if it is empty and not check entry exist while adding dhcpv6 relay
		
			
				
	
	
		
			42 lines
		
	
	
		
			991 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			991 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| import pytest
 | |
| import mock_tables # lgtm [py/unused-import]
 | |
| from unittest import mock
 | |
| 
 | |
| @pytest.fixture()
 | |
| def mock_cfgdb():
 | |
|     cfgdb = mock.Mock()
 | |
|     CONFIG = {
 | |
|         'VLAN': {
 | |
|             'Vlan1000': {
 | |
|                 'dhcp_servers': ['192.0.0.1']
 | |
|             }
 | |
|         },
 | |
|         'DHCP_RELAY': {
 | |
|             'Vlan1000': {
 | |
|                 'dhcpv6_servers': ['fc02:2000::1']
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     def get_entry(table, key):
 | |
|         if table not in CONFIG or key not in CONFIG[table]:
 | |
|             return {}
 | |
|         return CONFIG[table][key]
 | |
| 
 | |
|     def set_entry(table, key, data):
 | |
|         CONFIG[table].setdefault(key, {})
 | |
| 
 | |
|         if data is None:
 | |
|             CONFIG[table].pop(key)
 | |
|         else:
 | |
|             CONFIG[table][key] = data
 | |
| 
 | |
|     def get_keys(table):
 | |
|         return CONFIG[table].keys()
 | |
| 
 | |
|     cfgdb.get_entry = mock.Mock(side_effect=get_entry)
 | |
|     cfgdb.set_entry = mock.Mock(side_effect=set_entry)
 | |
|     cfgdb.get_keys = mock.Mock(side_effect=get_keys)
 | |
| 
 | |
|     yield cfgdb
 |