summaryrefslogtreecommitdiffstats
path: root/nova/tests
diff options
context:
space:
mode:
authorArata Notsu <notsu@virtualtech.jp>2013-04-03 19:31:09 +0900
committerArata Notsu <notsu@virtualtech.jp>2013-04-11 16:31:11 +0900
commit64a0bcae5aacff2bf2445ab519b837b4e01cce60 (patch)
tree243170bab11e611acaac302b034387360a7fe491 /nova/tests
parent6b2af9c084754a1e678f741bfc6b97e13f1cf8a5 (diff)
downloadnova-64a0bcae5aacff2bf2445ab519b837b4e01cce60.tar.gz
nova-64a0bcae5aacff2bf2445ab519b837b4e01cce60.tar.xz
nova-64a0bcae5aacff2bf2445ab519b837b4e01cce60.zip
baremetal: Change node api related to prov_mac_address
Now prov_mac_address is going to be dropped from bm_nodes table. This patch adjust api to the change. A user is expected to create a node without specifying prov_mac_address, then add an interface having the address to the node. However, for compatibility, a user still can specify prov_mac_address when create a node. In this case, an interface having prov_mac_address is automatically added to the node. In response body of create, index and show, "prov_mac_address" field no longer exists since they are showed as a member of "interfaces" fileld. DocImpact Change-Id: I6653829364b0a641442d45e766493180d6f2a880
Diffstat (limited to 'nova/tests')
-rw-r--r--nova/tests/api/openstack/compute/contrib/test_baremetal_nodes.py1
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.json.tpl1
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.xml.tpl1
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.json.tpl1
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.xml.tpl1
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-req.json.tpl13
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-req.xml.tpl11
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-resp.json.tpl19
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-resp.xml.tpl19
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.json.tpl1
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.xml.tpl1
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.json.tpl1
-rw-r--r--nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.xml.tpl1
-rw-r--r--nova/tests/integrated/test_api_samples.py15
14 files changed, 77 insertions, 9 deletions
diff --git a/nova/tests/api/openstack/compute/contrib/test_baremetal_nodes.py b/nova/tests/api/openstack/compute/contrib/test_baremetal_nodes.py
index 76ebd8dec..23d06cad2 100644
--- a/nova/tests/api/openstack/compute/contrib/test_baremetal_nodes.py
+++ b/nova/tests/api/openstack/compute/contrib/test_baremetal_nodes.py
@@ -46,7 +46,6 @@ class BareMetalNodesTest(test.TestCase):
'pm_address': "10.1.2.3",
'pm_user': "pm_user",
'pm_password': "pm_pass",
- 'prov_mac_address': "12:34:56:78:90:ab",
'terminal_port': 8000,
'interfaces': [],
}
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.json.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.json.tpl
index 82b6485b9..389517ed7 100644
--- a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.json.tpl
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.json.tpl
@@ -7,7 +7,6 @@
"pm_address": "10.1.2.3",
"pm_user": "pm_user",
"pm_password": "pm_pass",
- "prov_mac_address": "12:34:56:78:90:ab",
"terminal_port": 8000
}
}
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.xml.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.xml.tpl
index 8065c41c1..a06b8d73f 100644
--- a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.xml.tpl
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-req.xml.tpl
@@ -6,6 +6,5 @@
local_gb="128"
pm_address="10.1.2.3"
pm_user="pm_user"
- prov_mac_address="12:34:56:78:90:ab"
terminal_port="8000"
/>
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.json.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.json.tpl
index a0d976b99..855b67150 100644
--- a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.json.tpl
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.json.tpl
@@ -6,7 +6,6 @@
"local_gb": 128,
"pm_address": "10.1.2.3",
"pm_user": "pm_user",
- "prov_mac_address": "12:34:56:78:90:ab",
"terminal_port": 8000,
"instance_uuid": null,
"id": %(node_id)s,
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.xml.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.xml.tpl
index 1c3700841..15d0640c9 100644
--- a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.xml.tpl
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-resp.xml.tpl
@@ -6,7 +6,6 @@
local_gb="128"
pm_address="10.1.2.3"
pm_user="pm_user"
- prov_mac_address="12:34:56:78:90:ab"
terminal_port="8000"
instance_uuid="None"
id="%(node_id)s">
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-req.json.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-req.json.tpl
new file mode 100644
index 000000000..458aa1282
--- /dev/null
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-req.json.tpl
@@ -0,0 +1,13 @@
+{
+ "node": {
+ "service_host": "host",
+ "cpus": 8,
+ "memory_mb": 8192,
+ "local_gb": 128,
+ "pm_address": "10.1.2.3",
+ "pm_user": "pm_user",
+ "pm_password": "pm_pass",
+ "prov_mac_address": "%(address)s",
+ "terminal_port": 8000
+ }
+}
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-req.xml.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-req.xml.tpl
new file mode 100644
index 000000000..2c7273709
--- /dev/null
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-req.xml.tpl
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<node
+ service_host="host"
+ cpus="8"
+ memory_mb="8192"
+ local_gb="128"
+ pm_address="10.1.2.3"
+ pm_user="pm_user"
+ prov_mac_address="%(address)s"
+ terminal_port="8000"
+/>
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-resp.json.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-resp.json.tpl
new file mode 100644
index 000000000..dae8d4373
--- /dev/null
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-resp.json.tpl
@@ -0,0 +1,19 @@
+{
+ "node": {
+ "service_host": "host",
+ "cpus": 8,
+ "memory_mb": 8192,
+ "local_gb": 128,
+ "pm_address": "10.1.2.3",
+ "pm_user": "pm_user",
+ "terminal_port": 8000,
+ "instance_uuid": null,
+ "id": %(node_id)s,
+ "interfaces": [{
+ "id": %(interface_id)s,
+ "address": "%(address)s",
+ "datapath_id": null,
+ "port_no": null
+ }]
+ }
+}
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-resp.xml.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-resp.xml.tpl
new file mode 100644
index 000000000..b036a1d47
--- /dev/null
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-create-with-address-resp.xml.tpl
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<node
+ service_host="host"
+ cpus="8"
+ memory_mb="8192"
+ local_gb="128"
+ pm_address="10.1.2.3"
+ pm_user="pm_user"
+ terminal_port="8000"
+ instance_uuid="None"
+ id="%(node_id)s">
+ <interfaces>
+ <interface
+ id="%(interface_id)s"
+ address="%(address)s"
+ datapath_id="None"
+ port_no="None"/>
+ </interfaces>
+</node>
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.json.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.json.tpl
index 4a5e03701..a38bdf6d7 100644
--- a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.json.tpl
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.json.tpl
@@ -6,7 +6,6 @@
"local_gb": 128,
"pm_address": "10.1.2.3",
"pm_user": "pm_user",
- "prov_mac_address": "12:34:56:78:90:ab",
"terminal_port": 8000,
"instance_uuid": null,
"id": %(node_id)s,
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.xml.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.xml.tpl
index f8cfc3885..5bb51d4be 100644
--- a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.xml.tpl
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-list-resp.xml.tpl
@@ -7,7 +7,6 @@
local_gb="128"
pm_address="10.1.2.3"
pm_user="pm_user"
- prov_mac_address="12:34:56:78:90:ab"
terminal_port="8000"
instance_uuid="None"
id="%(node_id)s">
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.json.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.json.tpl
index 67a878a4a..dae8d4373 100644
--- a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.json.tpl
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.json.tpl
@@ -6,7 +6,6 @@
"local_gb": 128,
"pm_address": "10.1.2.3",
"pm_user": "pm_user",
- "prov_mac_address": "12:34:56:78:90:ab",
"terminal_port": 8000,
"instance_uuid": null,
"id": %(node_id)s,
diff --git a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.xml.tpl b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.xml.tpl
index 667024116..7fc10026e 100644
--- a/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.xml.tpl
+++ b/nova/tests/integrated/api_samples/os-baremetal-nodes/baremetal-node-show-resp.xml.tpl
@@ -6,7 +6,6 @@
local_gb="128"
pm_address="10.1.2.3"
pm_user="pm_user"
- prov_mac_address="12:34:56:78:90:ab"
terminal_port="8000"
instance_uuid="None"
id="%(node_id)s">
diff --git a/nova/tests/integrated/test_api_samples.py b/nova/tests/integrated/test_api_samples.py
index c0c908e07..5a2327bc0 100644
--- a/nova/tests/integrated/test_api_samples.py
+++ b/nova/tests/integrated/test_api_samples.py
@@ -2782,9 +2782,24 @@ class BareMetalNodesJsonTest(ApiSampleTestBase, bm_db_base.BMDBTestCase):
return self._verify_response("baremetal-node-create-resp", subs,
response, 200)
+ def _create_node_with_address(self):
+ address = '12:34:56:78:90:ab'
+ req_subs = {'address': address}
+ response = self._do_post("os-baremetal-nodes",
+ "baremetal-node-create-with-address-req",
+ req_subs)
+ subs = {'node_id': '(?P<id>\d+)',
+ 'interface_id': '\d+',
+ 'address': address}
+ return self._verify_response("baremetal-node-create-with-address-resp",
+ subs, response, 200)
+
def test_create_node(self):
self._create_node()
+ def test_create_node_with_address(self):
+ self._create_node_with_address()
+
def test_list_nodes(self):
node_id = self._create_node()
interface_id = self._add_interface(node_id)