@@ -1157,14 +1157,14 @@ def test_set_port_status_concurrent_delete(self):
1157
1157
side_effect = exc ) as apc , \
1158
1158
mock .patch .object (self .mech_driver ,
1159
1159
'_update_dnat_entry_if_needed' ) as ude :
1160
- self .mech_driver .set_port_status_down (port1 ['port' ]['id' ], False )
1160
+ self .mech_driver .set_port_status_down (port1 ['port' ]['id' ])
1161
1161
apc .assert_called_once_with (
1162
1162
mock .ANY ,
1163
1163
port1 ['port' ]['id' ],
1164
1164
resources .PORT ,
1165
1165
provisioning_blocks .L2_AGENT_ENTITY
1166
1166
)
1167
- ude .assert_called_once_with (port1 ['port' ]['id' ])
1167
+ ude .assert_called_once_with (port1 ['port' ]['id' ], False )
1168
1168
1169
1169
def test_bind_port_unsupported_vnic_type (self ):
1170
1170
fake_port = fakes .FakePort .create_one_port (
@@ -2358,33 +2358,49 @@ def test_agent_with_nb_cfg_timestamp_not_timeout(self):
2358
2358
self .assertTrue (agent .alive , "Agent of type %s alive=%s" % (
2359
2359
agent .agent_type , agent .alive ))
2360
2360
2361
- def _test__update_dnat_entry_if_needed (self , up = True ):
2362
- ovn_conf .cfg .CONF .set_override (
2363
- 'enable_distributed_floating_ip' , True , group = 'ovn' )
2361
+ def _test__update_dnat_entry_if_needed (self , up = True , dvr = True ):
2362
+ if dvr :
2363
+ ovn_conf .cfg .CONF .set_override (
2364
+ 'enable_distributed_floating_ip' , True , group = 'ovn' )
2364
2365
port_id = 'fake-port-id'
2365
2366
fake_ext_mac_key = 'fake-ext-mac-key'
2366
2367
fake_nat_uuid = uuidutils .generate_uuid ()
2367
2368
nat_row = fakes .FakeOvsdbRow .create_one_ovsdb_row (
2368
2369
attrs = {'_uuid' : fake_nat_uuid , 'external_ids' : {
2369
2370
ovn_const .OVN_FIP_EXT_MAC_KEY : fake_ext_mac_key },
2370
2371
'external_mac' : 'aa:aa:aa:aa:aa:aa' })
2372
+
2371
2373
fake_db_find = mock .Mock ()
2372
2374
fake_db_find .execute .return_value = [nat_row ]
2373
2375
self .nb_ovn .db_find .return_value = fake_db_find
2376
+
2374
2377
self .mech_driver ._update_dnat_entry_if_needed (port_id , up = up )
2375
- if up :
2378
+
2379
+ if up and dvr :
2376
2380
# Assert that we are setting the external_mac in the NAT table
2377
2381
self .nb_ovn .db_set .assert_called_once_with (
2378
2382
'NAT' , fake_nat_uuid , ('external_mac' , fake_ext_mac_key ))
2379
2383
else :
2380
- # Assert that we are cleaning the external_mac from the NAT table
2381
- self .nb_ovn .db_clear .assert_called_once_with (
2382
- 'NAT' , fake_nat_uuid , 'external_mac' )
2383
- def test__update_dnat_entry_if_needed_up (self ):
2384
+ if dvr :
2385
+ self .nb_ovn .db_set .assert_not_called ()
2386
+ else :
2387
+ # Assert that we are cleaning the external_mac from the NAT
2388
+ # table
2389
+ self .nb_ovn .db_clear .assert_called_once_with (
2390
+ 'NAT' , fake_nat_uuid , 'external_mac' )
2391
+
2392
+ def test__update_dnat_entry_if_needed_up_dvr (self ):
2384
2393
self ._test__update_dnat_entry_if_needed ()
2385
- def test__update_dnat_entry_if_needed_down (self ):
2394
+
2395
+ def test__update_dnat_entry_if_needed_up_no_dvr (self ):
2396
+ self ._test__update_dnat_entry_if_needed (dvr = False )
2397
+
2398
+ def test__update_dnat_entry_if_needed_down_dvr (self ):
2386
2399
self ._test__update_dnat_entry_if_needed (up = False )
2387
2400
2401
+ def test__update_dnat_entry_if_needed_down_no_dvr (self ):
2402
+ self ._test__update_dnat_entry_if_needed (up = False , dvr = False )
2403
+
2388
2404
@mock .patch ('neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.'
2389
2405
'ovn_client.OVNClient._get_router_ports' )
2390
2406
def _test_update_network_fragmentation (self , new_mtu , expected_opts , grps ):
0 commit comments