Martin Packman has proposed merging
lp:~gz/maas/move_update_hardware_details_tests into lp:maas with
lp:~gz/maas/populate_tags as a prerequisite.
Requested reviews:
MAAS Maintainers (maas-maintainers)
For more details, see:
https://code.launchpad.net/~gz/maas/move_update_hardware_details_tests/+merge/126226
Simple cleanup of tests added in earlier branches. Moves tests that are really
about Node to maasserver.tests.test_node and leaves just the bits verifying
that the right thing gets called on metadataserver.tests.test_api. I'd like to
just verify the right method on Node got called, but don't want to stub out the
method really, so have faked it by checking that memory gets reset to zero.
--
https://code.launchpad.net/~gz/maas/move_update_hardware_details_tests/+merge/126226
Your team MAAS Maintainers is requested to review the proposed merge of
lp:~gz/maas/move_update_hardware_details_tests into lp:maas.
=== modified file 'src/maasserver/tests/test_node.py'
--- src/maasserver/tests/test_node.py 2012-09-24 11:19:14 +0000
+++ src/maasserver/tests/test_node.py 2012-09-25 11:24:31 +0000
@@ -454,6 +454,47 @@
node.set_hardware_details(xmlbytes)
self.assertEqual(xmlbytes, node.hardware_details)
+ def test_hardware_updates_cpu_count(self):
+ node = factory.make_node()
+ xmlbytes = (
+ '<node id="core">'
+ '<node id="cpu:0" class="processor"/>'
+ '<node id="cpu:1" class="processor"/>'
+ '</node>')
+ node.set_hardware_details(xmlbytes)
+ node = reload_object(node)
+ self.assertEqual(2, node.cpu_count)
+
+ def test_hardware_updates_memory(self):
+ node = factory.make_node()
+ xmlbytes = (
+ '<node id="memory">'
+ '<size units="bytes">4294967296</size>'
+ '</node>')
+ node.set_hardware_details(xmlbytes)
+ node = reload_object(node)
+ self.assertEqual(4096, node.memory)
+
+ def test_hardware_updates_tags_match(self):
+ tag1 = factory.make_tag(factory.getRandomString(10), "/node")
+ tag2 = factory.make_tag(factory.getRandomString(10), "//node")
+ node = factory.make_node()
+ xmlbytes = '<node/>'
+ node.set_hardware_details(xmlbytes)
+ node = reload_object(node)
+ self.assertEqual([tag1, tag2], list(node.tags.all()))
+
+ def test_hardware_updates_tags_no_match(self):
+ tag1 = factory.make_tag(factory.getRandomString(10), "/missing")
+ tag2 = factory.make_tag(factory.getRandomString(10), "/nothing")
+ node = factory.make_node()
+ node.tags = [tag2]
+ node.save()
+ xmlbytes = '<node/>'
+ node.set_hardware_details(xmlbytes)
+ node = reload_object(node)
+ self.assertEqual([], list(node.tags.all()))
+
class NodeTransitionsTests(TestCase):
"""Test the structure of NODE_TRANSITIONS."""
=== modified file 'src/metadataserver/tests/test_api.py'
--- src/metadataserver/tests/test_api.py 2012-09-25 11:24:31 +0000
+++ src/metadataserver/tests/test_api.py 2012-09-25 11:24:31 +0000
@@ -495,62 +495,14 @@
self.assertEqual(size_limit, len(stored_data))
def test_signal_stores_lshw_file_on_node(self):
- node = factory.make_node(status=NODE_STATUS.COMMISSIONING)
+ node = factory.make_node(status=NODE_STATUS.COMMISSIONING, memory=512)
client = self.make_node_client(node=node)
xmlbytes = "<t\xe9st/>".encode("utf-8")
response = self.call_signal(client, files={'01-lshw.out': xmlbytes})
self.assertEqual(httplib.OK, response.status_code)
node = reload_object(node)
self.assertEqual(xmlbytes, node.hardware_details)
-
- def test_signal_stores_lshw_with_cpu_count(self):
- node = factory.make_node(status=NODE_STATUS.COMMISSIONING)
- client = self.make_node_client(node=node)
- xmlbytes = (
- '<node id="core">'
- '<node id="cpu:0" class="processor"/>'
- '<node id="cpu:1" class="processor"/>'
- '</node>').encode("utf-8")
- response = self.call_signal(client, files={'01-lshw.out': xmlbytes})
- self.assertEqual(httplib.OK, response.status_code)
- node = reload_object(node)
- self.assertEqual(2, node.cpu_count)
-
- def test_signal_stores_lshw_with_memory(self):
- node = factory.make_node(status=NODE_STATUS.COMMISSIONING)
- client = self.make_node_client(node=node)
- xmlbytes = (
- '<node id="memory">'
- '<size units="bytes">4294967296</size>'
- '</node>').encode("utf-8")
- response = self.call_signal(client, files={'01-lshw.out': xmlbytes})
- self.assertEqual(httplib.OK, response.status_code)
- node = reload_object(node)
- self.assertEqual(4, node.memory)
-
- def test_signal_lshw_tags_match(self):
- tag1 = factory.make_tag(factory.getRandomString(10), "/node")
- tag2 = factory.make_tag(factory.getRandomString(10), "//node")
- node = factory.make_node(status=NODE_STATUS.COMMISSIONING)
- client = self.make_node_client(node=node)
- xmlbytes = '<node/>'.encode("utf-8")
- response = self.call_signal(client, files={'01-lshw.out': xmlbytes})
- self.assertEqual(httplib.OK, response.status_code)
- node = reload_object(node)
- self.assertEqual([tag1, tag2], list(node.tags.all()))
-
- def test_signal_lshw_tags_no_match(self):
- tag1 = factory.make_tag(factory.getRandomString(10), "/missing")
- tag2 = factory.make_tag(factory.getRandomString(10), "/nothing")
- node = factory.make_node(status=NODE_STATUS.COMMISSIONING)
- node.tags = [tag2]
- node.save()
- client = self.make_node_client(node=node)
- xmlbytes = '<node/>'.encode("utf-8")
- response = self.call_signal(client, files={'01-lshw.out': xmlbytes})
- self.assertEqual(httplib.OK, response.status_code)
- node = reload_object(node)
- self.assertEqual([], list(node.tags.all()))
+ self.assertEqual(0, node.memory)
def test_api_retrieves_node_metadata_by_mac(self):
mac = factory.make_mac_address()
_______________________________________________
Mailing list: https://launchpad.net/~launchpad-reviewers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~launchpad-reviewers
More help : https://help.launchpad.net/ListHelp