Skip to content

Commit 9663ba8

Browse files
Fixed unit test error
1 parent 1d64f95 commit 9663ba8

File tree

1 file changed

+9
-15
lines changed

1 file changed

+9
-15
lines changed

SoftLayer/testing/xmlrpc.py

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -45,18 +45,17 @@ def do_POST(self):
4545
req.args = args[1:]
4646
req.filter = _item_by_key_postfix(headers, 'ObjectFilter') or None
4747
req.mask = _item_by_key_postfix(headers, 'ObjectMask').get('mask')
48-
req.identifier = _item_by_key_postfix(headers,
49-
'InitParameters').get('id')
50-
req.transport_headers = dict(((k.lower(), v)
51-
for k, v in self.headers.items()))
48+
req.identifier = _item_by_key_postfix(headers, 'InitParameters').get('id')
49+
req.transport_headers = dict(((k.lower(), v) for k, v in self.headers.items()))
5250
req.headers = headers
5351

5452
# Get response
5553
response = self.server.transport(req)
5654

57-
response_body = xmlrpc.client.dumps((response,),
58-
allow_none=True,
59-
methodresponse=True)
55+
# Need to convert BACK to list, so xmlrpc can dump it out properly.
56+
if isinstance(response, SoftLayer.transports.transport.SoftLayerListResult):
57+
response = list(response)
58+
response_body = xmlrpc.client.dumps((response,), allow_none=True, methodresponse=True)
6059

6160
self.send_response(200)
6261
self.send_header("Content-type", "application/xml; charset=UTF-8")
@@ -70,18 +69,14 @@ def do_POST(self):
7069
self.send_response(200)
7170
self.end_headers()
7271
response = xmlrpc.client.Fault(404, str(ex))
73-
response_body = xmlrpc.client.dumps(response,
74-
allow_none=True,
75-
methodresponse=True)
72+
response_body = xmlrpc.client.dumps(response, allow_none=True, methodresponse=True)
7673
self.wfile.write(response_body.encode('utf-8'))
7774

7875
except SoftLayer.SoftLayerAPIError as ex:
7976
self.send_response(200)
8077
self.end_headers()
8178
response = xmlrpc.client.Fault(ex.faultCode, str(ex.reason))
82-
response_body = xmlrpc.client.dumps(response,
83-
allow_none=True,
84-
methodresponse=True)
79+
response_body = xmlrpc.client.dumps(response, allow_none=True, methodresponse=True)
8580
self.wfile.write(response_body.encode('utf-8'))
8681
except Exception:
8782
self.send_response(500)
@@ -103,7 +98,6 @@ def _item_by_key_postfix(dictionary, key_prefix):
10398
def create_test_server(transport, host='localhost', port=0):
10499
"""Create a test XML-RPC server in a new thread."""
105100
server = TestServer(transport, (host, port), TestHandler)
106-
thread = threading.Thread(target=server.serve_forever,
107-
kwargs={'poll_interval': 0.01})
101+
thread = threading.Thread(target=server.serve_forever, kwargs={'poll_interval': 0.01})
108102
thread.start()
109103
return server

0 commit comments

Comments
 (0)