def test_create_sfc_service_graph_without_loop(self): bp1_str = 'pc1:pc2,pc3' bp2_str = 'pc2:pc4' self.cmd = sfc_service_graph.CreateSfcServiceGraph( self.app, self.namespace) arglist = [ "--description", self._service_graph['description'], "--branching-point", bp1_str, "--branching-point", bp2_str, self._service_graph['name']] pcs = {'pc1': ['pc2', 'pc3'], 'pc2': ['pc4']} verifylist = [ ("description", self._service_graph['description']), ("branching_points", [bp1_str, bp2_str]), ("name", self._service_graph['name']) ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) columns, data = (self.cmd.take_action(parsed_args)) self.neutronclient.create_sfc_service_graph.assert_called_once_with({ 'service_graph': { 'description': self._service_graph['description'], 'name': self._service_graph['name'], 'port_chains': pcs } }) self.assertEqual(self.columns_long, columns) self.assertEqual(self.data, data)
def setUp(self): super(TestCreateSfcServiceGraph, self).setUp() mock.patch('neutronclient.osc.v2.sfc.sfc_service_graph._get_id', new=_get_id).start() self.neutronclient.create_sfc_service_graph = mock.Mock( return_value={'service_graph': self._service_graph}) self.data = self.get_data() self.cmd = sfc_service_graph.CreateSfcServiceGraph( self.app, self.namespace)
def test_create_sfc_service_graph_invalid_port_chains(self): bp1_str = 'pc1:pc2,pc3:' self.cmd = sfc_service_graph.CreateSfcServiceGraph( self.app, self.namespace) arglist = [ "--description", self._service_graph['description'], "--branching-point", bp1_str, self._service_graph['name'] ] verifylist = [("description", self._service_graph['description']), ("branching_points", [bp1_str]), ("name", self._service_graph['name'])] parsed_args = self.check_parser(self.cmd, arglist, verifylist) self.assertRaises(exceptions.CommandError, self.cmd.take_action, parsed_args)