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)
Ejemplo n.º 3
0
    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)