summaryrefslogtreecommitdiff
path: root/tests/protocol/test_wire.py
diff options
context:
space:
mode:
authorƁukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com>2017-05-18 19:58:02 +0200
committerusd-importer <ubuntu-server@lists.ubuntu.com>2017-05-31 09:53:12 +0000
commit4fb0b5a09b26135ade285844da5d7dfe582a8d4c (patch)
tree09b1e5867d6e7501118cdd0af0012b51fc216530 /tests/protocol/test_wire.py
parent473ad6fbfe0b9c3b362b530492928303f2b4c7f3 (diff)
downloadvyos-walinuxagent-4fb0b5a09b26135ade285844da5d7dfe582a8d4c.tar.gz
vyos-walinuxagent-4fb0b5a09b26135ade285844da5d7dfe582a8d4c.zip
Import patches-unapplied version 2.2.12-0ubuntu1 to ubuntu/artful-proposed
Imported using git-ubuntu import. Changelog parent: 473ad6fbfe0b9c3b362b530492928303f2b4c7f3 New changelog entries: * New upstream release (LP: #1690854). - Refreshed debian/patches/disable_import_test.patch.
Diffstat (limited to 'tests/protocol/test_wire.py')
-rw-r--r--tests/protocol/test_wire.py53
1 files changed, 28 insertions, 25 deletions
diff --git a/tests/protocol/test_wire.py b/tests/protocol/test_wire.py
index dda7a2b..ba9fc7d 100644
--- a/tests/protocol/test_wire.py
+++ b/tests/protocol/test_wire.py
@@ -152,11 +152,12 @@ class TestWireProtocolGetters(AgentTestCase):
wire_protocol_client = WireProtocol(wireserver_url).client
wire_protocol_client.ext_conf = ExtensionsConfig(None)
wire_protocol_client.ext_conf.status_upload_blob = testurl
+ wire_protocol_client.ext_conf.status_upload_blob_type = testtype
wire_protocol_client.status_blob.vm_status = vmstatus
with patch.object(WireClient, "get_goal_state") as patch_get_goal_state:
with patch.object(HostPluginProtocol, "put_vm_status") as patch_host_ga_plugin_upload:
- with patch.object(StatusBlob, "upload", return_value=True) as patch_default_upload:
+ with patch.object(StatusBlob, "upload") as patch_default_upload:
HostPluginProtocol.set_default_channel(False)
wire_protocol_client.upload_status_blob()
@@ -190,7 +191,25 @@ class TestWireProtocolGetters(AgentTestCase):
self.assertTrue(HostPluginProtocol.is_default_channel())
HostPluginProtocol.set_default_channel(False)
- def test_upload_status_blob_error_reporting(self, *args):
+ def test_upload_status_blob_unknown_type_assumes_block(self, *args):
+ vmstatus = VMStatus(message="Ready", status="Ready")
+ wire_protocol_client = WireProtocol(wireserver_url).client
+ wire_protocol_client.ext_conf = ExtensionsConfig(None)
+ wire_protocol_client.ext_conf.status_upload_blob = testurl
+ wire_protocol_client.ext_conf.status_upload_blob_type = "NotALegalType"
+ wire_protocol_client.status_blob.vm_status = vmstatus
+
+ with patch.object(WireClient, "get_goal_state") as patch_get_goal_state:
+ with patch.object(StatusBlob, "prepare") as patch_prepare:
+ with patch.object(StatusBlob, "upload") as patch_default_upload:
+ HostPluginProtocol.set_default_channel(False)
+ wire_protocol_client.upload_status_blob()
+
+ patch_prepare.assert_called_once_with("BlockBlob")
+ patch_default_upload.assert_called_once_with(testurl)
+ patch_get_goal_state.assert_not_called()
+
+ def test_upload_status_blob_reports_prepare_error(self, *args):
vmstatus = VMStatus(message="Ready", status="Ready")
wire_protocol_client = WireProtocol(wireserver_url).client
wire_protocol_client.ext_conf = ExtensionsConfig(None)
@@ -199,29 +218,13 @@ class TestWireProtocolGetters(AgentTestCase):
wire_protocol_client.status_blob.vm_status = vmstatus
goal_state = GoalState(WireProtocolData(DATA_FILE).goal_state)
- with patch.object(HostPluginProtocol,
- "ensure_initialized",
- return_value=True):
- with patch.object(StatusBlob,
- "put_block_blob",
- side_effect=HttpError("error")):
- with patch.object(StatusBlob,
- "get_blob_type",
- return_value='BlockBlob'):
- with patch.object(HostPluginProtocol,
- "put_vm_status"):
- with patch.object(WireClient,
- "report_blob_type",
- side_effect=MagicMock()):
- with patch.object(event,
- "add_event") as patch_add_event:
- HostPluginProtocol.set_default_channel(False)
- wire_protocol_client.get_goal_state = Mock(return_value=goal_state)
- wire_protocol_client.upload_status_blob()
- wire_protocol_client.get_goal_state.assert_called_once()
- self.assertTrue(patch_add_event.call_count == 1)
- self.assertTrue(patch_add_event.call_args_list[0][1]['op'] == 'ReportStatus')
- self.assertFalse(HostPluginProtocol.is_default_channel())
+ with patch.object(StatusBlob, "prepare",
+ side_effect=Exception) as mock_prepare:
+ with patch.object(WireClient, "report_status_event") as mock_event:
+ wire_protocol_client.upload_status_blob()
+
+ mock_prepare.assert_called_once()
+ mock_event.assert_called_once()
def test_get_in_vm_artifacts_profile_blob_not_available(self, *args):
wire_protocol_client = WireProtocol(wireserver_url).client