return self._make_net_partition_dict(net_partitioninst)
def _create_default_net_partition(self, default_net_part):
- self.nuageclient.check_del_def_net_partition(default_net_part)
+ def_netpart = self.nuageclient.get_def_netpartition_data(
+ default_net_part)
session = db.get_session()
- net_partition = nuagedb.get_net_partition_by_name(session,
- default_net_part)
- if net_partition:
+ if def_netpart:
+ net_partition = nuagedb.get_net_partition_by_name(
+ session, default_net_part)
with session.begin(subtransactions=True):
- nuagedb.delete_net_partition(session, net_partition)
- self._create_net_partition(session, default_net_part)
+ if net_partition:
+ nuagedb.delete_net_partition(session, net_partition)
+ net_part = nuagedb.add_net_partition(session,
+ def_netpart['np_id'],
+ def_netpart['l3dom_tid'],
+ def_netpart['l2dom_tid'],
+ default_net_part)
+ return self._make_net_partition_dict(net_part)
+ else:
+ return self._create_net_partition(session, default_net_part)
def create_net_partition(self, context, net_partition):
ent = net_partition['net_partition']
}
return fake_net_partition
+ def get_def_netpartition_data(self, default_net_part):
+ if default_net_part == 'default_test_np':
+ fake_defnetpart_data = {
+ 'np_id': uuidutils.generate_uuid(),
+ 'l3dom_tid': uuidutils.generate_uuid(),
+ 'l2dom_tid': uuidutils.generate_uuid(),
+ }
+ return fake_defnetpart_data
+
def delete_net_partition(self, id, l3dom_id=None, l2dom_id=None):
pass
import uuid
import webob.exc
+from neutron import manager
from neutron.plugins.nuage.extensions import netpartition as netpart_ext
from neutron.tests.unit.nuage import test_nuage_plugin
from neutron.tests.unit import test_extensions
res = self.deserialize(self.fmt, req.get_response(self.ext_api))
self.assertEqual(res['net_partition']['name'],
npart['net_partition']['name'])
+
+ def test_create_existing_default_netpartition(self):
+ name = 'default_test_np'
+ netpart1 = self._make_netpartition(self.fmt, name)
+ nuage_plugin = manager.NeutronManager.get_plugin()
+ netpart2 = nuage_plugin._create_default_net_partition(name)
+ self.assertEqual(netpart1['net_partition']['name'],
+ netpart2['name'])