|
19 | 19 | from osc_lib import utils |
20 | 20 |
|
21 | 21 | from openstackclient.network.v2 import network |
22 | | -from openstackclient.tests.unit.compute.v2 import fakes as compute_fakes |
23 | 22 | from openstackclient.tests.unit import fakes |
24 | 23 | from openstackclient.tests.unit.identity.v2_0 import fakes as identity_fakes_v2 |
25 | 24 | from openstackclient.tests.unit.identity.v3 import fakes as identity_fakes_v3 |
@@ -988,374 +987,3 @@ def test_show_all_options(self): |
988 | 987 |
|
989 | 988 | self.assertEqual(self.columns, columns) |
990 | 989 | self.assertEqual(self.data, data) |
991 | | - |
992 | | - |
993 | | -# Tests for Nova network |
994 | | -# |
995 | | -class TestNetworkCompute(compute_fakes.TestComputev2): |
996 | | - |
997 | | - def setUp(self): |
998 | | - super(TestNetworkCompute, self).setUp() |
999 | | - |
1000 | | - # Get a shortcut to the compute client |
1001 | | - self.compute = self.app.client_manager.compute |
1002 | | - |
1003 | | - |
1004 | | -class TestCreateNetworkCompute(TestNetworkCompute): |
1005 | | - |
1006 | | - # The network to create. |
1007 | | - _network = compute_fakes.FakeNetwork.create_one_network() |
1008 | | - |
1009 | | - columns = ( |
1010 | | - 'bridge', |
1011 | | - 'bridge_interface', |
1012 | | - 'broadcast', |
1013 | | - 'cidr', |
1014 | | - 'cidr_v6', |
1015 | | - 'created_at', |
1016 | | - 'deleted', |
1017 | | - 'deleted_at', |
1018 | | - 'dhcp_server', |
1019 | | - 'dhcp_start', |
1020 | | - 'dns1', |
1021 | | - 'dns2', |
1022 | | - 'enable_dhcp', |
1023 | | - 'gateway', |
1024 | | - 'gateway_v6', |
1025 | | - 'host', |
1026 | | - 'id', |
1027 | | - 'injected', |
1028 | | - 'label', |
1029 | | - 'mtu', |
1030 | | - 'multi_host', |
1031 | | - 'netmask', |
1032 | | - 'netmask_v6', |
1033 | | - 'priority', |
1034 | | - 'project_id', |
1035 | | - 'rxtx_base', |
1036 | | - 'share_address', |
1037 | | - 'updated_at', |
1038 | | - 'vlan', |
1039 | | - 'vpn_private_address', |
1040 | | - 'vpn_public_address', |
1041 | | - 'vpn_public_port', |
1042 | | - ) |
1043 | | - |
1044 | | - data = ( |
1045 | | - _network.bridge, |
1046 | | - _network.bridge_interface, |
1047 | | - _network.broadcast, |
1048 | | - _network.cidr, |
1049 | | - _network.cidr_v6, |
1050 | | - _network.created_at, |
1051 | | - _network.deleted, |
1052 | | - _network.deleted_at, |
1053 | | - _network.dhcp_server, |
1054 | | - _network.dhcp_start, |
1055 | | - _network.dns1, |
1056 | | - _network.dns2, |
1057 | | - _network.enable_dhcp, |
1058 | | - _network.gateway, |
1059 | | - _network.gateway_v6, |
1060 | | - _network.host, |
1061 | | - _network.id, |
1062 | | - _network.injected, |
1063 | | - _network.label, |
1064 | | - _network.mtu, |
1065 | | - _network.multi_host, |
1066 | | - _network.netmask, |
1067 | | - _network.netmask_v6, |
1068 | | - _network.priority, |
1069 | | - _network.project_id, |
1070 | | - _network.rxtx_base, |
1071 | | - _network.share_address, |
1072 | | - _network.updated_at, |
1073 | | - _network.vlan, |
1074 | | - _network.vpn_private_address, |
1075 | | - _network.vpn_public_address, |
1076 | | - _network.vpn_public_port, |
1077 | | - ) |
1078 | | - |
1079 | | - def setUp(self): |
1080 | | - super(TestCreateNetworkCompute, self).setUp() |
1081 | | - |
1082 | | - self.app.client_manager.network_endpoint_enabled = False |
1083 | | - |
1084 | | - self.compute.networks.create.return_value = self._network |
1085 | | - |
1086 | | - # Get the command object to test |
1087 | | - self.cmd = network.CreateNetwork(self.app, None) |
1088 | | - |
1089 | | - def test_create_no_options(self): |
1090 | | - arglist = [] |
1091 | | - verifylist = [] |
1092 | | - |
1093 | | - # Missing required args should raise exception here |
1094 | | - self.assertRaises(tests_utils.ParserException, self.check_parser, |
1095 | | - self.cmd, arglist, verifylist) |
1096 | | - |
1097 | | - def test_create_default_options(self): |
1098 | | - arglist = [ |
1099 | | - "--subnet", self._network.cidr, |
1100 | | - self._network.label, |
1101 | | - ] |
1102 | | - verifylist = [ |
1103 | | - ('subnet', self._network.cidr), |
1104 | | - ('name', self._network.label), |
1105 | | - ] |
1106 | | - parsed_args = self.check_parser(self.cmd, arglist, verifylist) |
1107 | | - |
1108 | | - columns, data = self.cmd.take_action(parsed_args) |
1109 | | - |
1110 | | - self.compute.networks.create.assert_called_once_with(**{ |
1111 | | - 'cidr': self._network.cidr, |
1112 | | - 'label': self._network.label, |
1113 | | - }) |
1114 | | - self.assertEqual(self.columns, columns) |
1115 | | - self.assertEqual(self.data, data) |
1116 | | - |
1117 | | - |
1118 | | -class TestDeleteNetworkCompute(TestNetworkCompute): |
1119 | | - |
1120 | | - def setUp(self): |
1121 | | - super(TestDeleteNetworkCompute, self).setUp() |
1122 | | - |
1123 | | - self.app.client_manager.network_endpoint_enabled = False |
1124 | | - |
1125 | | - # The networks to delete |
1126 | | - self._networks = compute_fakes.FakeNetwork.create_networks(count=3) |
1127 | | - |
1128 | | - self.compute.networks.delete.return_value = None |
1129 | | - |
1130 | | - # Return value of utils.find_resource() |
1131 | | - self.compute.networks.get = \ |
1132 | | - compute_fakes.FakeNetwork.get_networks(networks=self._networks) |
1133 | | - |
1134 | | - # Get the command object to test |
1135 | | - self.cmd = network.DeleteNetwork(self.app, None) |
1136 | | - |
1137 | | - def test_delete_one_network(self): |
1138 | | - arglist = [ |
1139 | | - self._networks[0].label, |
1140 | | - ] |
1141 | | - verifylist = [ |
1142 | | - ('network', [self._networks[0].label]), |
1143 | | - ] |
1144 | | - parsed_args = self.check_parser(self.cmd, arglist, verifylist) |
1145 | | - |
1146 | | - result = self.cmd.take_action(parsed_args) |
1147 | | - |
1148 | | - self.compute.networks.delete.assert_called_once_with( |
1149 | | - self._networks[0].id) |
1150 | | - self.assertIsNone(result) |
1151 | | - |
1152 | | - def test_delete_multiple_networks(self): |
1153 | | - arglist = [] |
1154 | | - for n in self._networks: |
1155 | | - arglist.append(n.label) |
1156 | | - verifylist = [ |
1157 | | - ('network', arglist), |
1158 | | - ] |
1159 | | - parsed_args = self.check_parser(self.cmd, arglist, verifylist) |
1160 | | - |
1161 | | - result = self.cmd.take_action(parsed_args) |
1162 | | - |
1163 | | - calls = [] |
1164 | | - for n in self._networks: |
1165 | | - calls.append(call(n.id)) |
1166 | | - self.compute.networks.delete.assert_has_calls(calls) |
1167 | | - self.assertIsNone(result) |
1168 | | - |
1169 | | - def test_delete_multiple_networks_exception(self): |
1170 | | - arglist = [ |
1171 | | - self._networks[0].id, |
1172 | | - 'xxxx-yyyy-zzzz', |
1173 | | - self._networks[1].id, |
1174 | | - ] |
1175 | | - verifylist = [ |
1176 | | - ('network', arglist), |
1177 | | - ] |
1178 | | - parsed_args = self.check_parser(self.cmd, arglist, verifylist) |
1179 | | - |
1180 | | - # Fake exception in utils.find_resource() |
1181 | | - # In compute v2, we use utils.find_resource() to find a network. |
1182 | | - # It calls get() several times, but find() only one time. So we |
1183 | | - # choose to fake get() always raise exception, then pass through. |
1184 | | - # And fake find() to find the real network or not. |
1185 | | - self.compute.networks.get.side_effect = Exception() |
1186 | | - ret_find = [ |
1187 | | - self._networks[0], |
1188 | | - Exception(), |
1189 | | - self._networks[1], |
1190 | | - ] |
1191 | | - self.compute.networks.find.side_effect = ret_find |
1192 | | - |
1193 | | - # Fake exception in delete() |
1194 | | - ret_delete = [ |
1195 | | - None, |
1196 | | - Exception(), |
1197 | | - ] |
1198 | | - self.compute.networks.delete = mock.Mock(side_effect=ret_delete) |
1199 | | - |
1200 | | - self.assertRaises(exceptions.CommandError, self.cmd.take_action, |
1201 | | - parsed_args) |
1202 | | - |
1203 | | - # The second call of utils.find_resource() should fail. So delete() |
1204 | | - # was only called twice. |
1205 | | - calls = [ |
1206 | | - call(self._networks[0].id), |
1207 | | - call(self._networks[1].id), |
1208 | | - ] |
1209 | | - self.compute.networks.delete.assert_has_calls(calls) |
1210 | | - |
1211 | | - |
1212 | | -class TestListNetworkCompute(TestNetworkCompute): |
1213 | | - |
1214 | | - # The networks going to be listed up. |
1215 | | - _networks = compute_fakes.FakeNetwork.create_networks(count=3) |
1216 | | - |
1217 | | - columns = ( |
1218 | | - 'ID', |
1219 | | - 'Name', |
1220 | | - 'Subnet', |
1221 | | - ) |
1222 | | - |
1223 | | - data = [] |
1224 | | - for net in _networks: |
1225 | | - data.append(( |
1226 | | - net.id, |
1227 | | - net.label, |
1228 | | - net.cidr, |
1229 | | - )) |
1230 | | - |
1231 | | - def setUp(self): |
1232 | | - super(TestListNetworkCompute, self).setUp() |
1233 | | - |
1234 | | - self.app.client_manager.network_endpoint_enabled = False |
1235 | | - |
1236 | | - self.compute.networks.list.return_value = self._networks |
1237 | | - |
1238 | | - # Get the command object to test |
1239 | | - self.cmd = network.ListNetwork(self.app, None) |
1240 | | - |
1241 | | - def test_network_list_no_options(self): |
1242 | | - arglist = [] |
1243 | | - verifylist = [] |
1244 | | - parsed_args = self.check_parser(self.cmd, arglist, verifylist) |
1245 | | - |
1246 | | - # In base command class Lister in cliff, abstract method take_action() |
1247 | | - # returns a tuple containing the column names and an iterable |
1248 | | - # containing the data to be listed. |
1249 | | - columns, data = self.cmd.take_action(parsed_args) |
1250 | | - |
1251 | | - self.compute.networks.list.assert_called_once_with() |
1252 | | - self.assertEqual(self.columns, columns) |
1253 | | - self.assertEqual(self.data, list(data)) |
1254 | | - |
1255 | | - |
1256 | | -class TestShowNetworkCompute(TestNetworkCompute): |
1257 | | - |
1258 | | - # The network to show. |
1259 | | - _network = compute_fakes.FakeNetwork.create_one_network() |
1260 | | - |
1261 | | - columns = ( |
1262 | | - 'bridge', |
1263 | | - 'bridge_interface', |
1264 | | - 'broadcast', |
1265 | | - 'cidr', |
1266 | | - 'cidr_v6', |
1267 | | - 'created_at', |
1268 | | - 'deleted', |
1269 | | - 'deleted_at', |
1270 | | - 'dhcp_server', |
1271 | | - 'dhcp_start', |
1272 | | - 'dns1', |
1273 | | - 'dns2', |
1274 | | - 'enable_dhcp', |
1275 | | - 'gateway', |
1276 | | - 'gateway_v6', |
1277 | | - 'host', |
1278 | | - 'id', |
1279 | | - 'injected', |
1280 | | - 'label', |
1281 | | - 'mtu', |
1282 | | - 'multi_host', |
1283 | | - 'netmask', |
1284 | | - 'netmask_v6', |
1285 | | - 'priority', |
1286 | | - 'project_id', |
1287 | | - 'rxtx_base', |
1288 | | - 'share_address', |
1289 | | - 'updated_at', |
1290 | | - 'vlan', |
1291 | | - 'vpn_private_address', |
1292 | | - 'vpn_public_address', |
1293 | | - 'vpn_public_port', |
1294 | | - ) |
1295 | | - |
1296 | | - data = ( |
1297 | | - _network.bridge, |
1298 | | - _network.bridge_interface, |
1299 | | - _network.broadcast, |
1300 | | - _network.cidr, |
1301 | | - _network.cidr_v6, |
1302 | | - _network.created_at, |
1303 | | - _network.deleted, |
1304 | | - _network.deleted_at, |
1305 | | - _network.dhcp_server, |
1306 | | - _network.dhcp_start, |
1307 | | - _network.dns1, |
1308 | | - _network.dns2, |
1309 | | - _network.enable_dhcp, |
1310 | | - _network.gateway, |
1311 | | - _network.gateway_v6, |
1312 | | - _network.host, |
1313 | | - _network.id, |
1314 | | - _network.injected, |
1315 | | - _network.label, |
1316 | | - _network.mtu, |
1317 | | - _network.multi_host, |
1318 | | - _network.netmask, |
1319 | | - _network.netmask_v6, |
1320 | | - _network.priority, |
1321 | | - _network.project_id, |
1322 | | - _network.rxtx_base, |
1323 | | - _network.share_address, |
1324 | | - _network.updated_at, |
1325 | | - _network.vlan, |
1326 | | - _network.vpn_private_address, |
1327 | | - _network.vpn_public_address, |
1328 | | - _network.vpn_public_port, |
1329 | | - ) |
1330 | | - |
1331 | | - def setUp(self): |
1332 | | - super(TestShowNetworkCompute, self).setUp() |
1333 | | - |
1334 | | - self.app.client_manager.network_endpoint_enabled = False |
1335 | | - |
1336 | | - # Return value of utils.find_resource() |
1337 | | - self.compute.networks.get.return_value = self._network |
1338 | | - |
1339 | | - # Get the command object to test |
1340 | | - self.cmd = network.ShowNetwork(self.app, None) |
1341 | | - |
1342 | | - def test_show_no_options(self): |
1343 | | - arglist = [] |
1344 | | - verifylist = [] |
1345 | | - |
1346 | | - self.assertRaises(tests_utils.ParserException, self.check_parser, |
1347 | | - self.cmd, arglist, verifylist) |
1348 | | - |
1349 | | - def test_show_all_options(self): |
1350 | | - arglist = [ |
1351 | | - self._network.label, |
1352 | | - ] |
1353 | | - verifylist = [ |
1354 | | - ('network', self._network.label), |
1355 | | - ] |
1356 | | - |
1357 | | - parsed_args = self.check_parser(self.cmd, arglist, verifylist) |
1358 | | - columns, data = self.cmd.take_action(parsed_args) |
1359 | | - |
1360 | | - self.assertEqual(self.columns, columns) |
1361 | | - self.assertEqual(self.data, data) |
0 commit comments