From 9d860f29579bc3764ccb9e34f8ae7d51cfc3ea09 Mon Sep 17 00:00:00 2001 From: Filipp Lepalaan Date: Tue, 29 Sep 2015 00:05:36 +0300 Subject: Fixed FetchDiagnosticDetails --- gsxws/core.py | 10 +++++++--- tests/test_gsxws.py | 8 +++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/gsxws/core.py b/gsxws/core.py index 9ebe1bf..0beed92 100644 --- a/gsxws/core.py +++ b/gsxws/core.py @@ -292,7 +292,7 @@ class GsxRequest(object): # Send GSX client certs with every request try: self.gsx_cert = os.environ['GSX_CERT'] - self.gsx_key = os.environ['GSX_KEY'] + self.gsx_key = os.environ['GSX_KEY'] except KeyError as e: raise GsxError('SSL configuration error: %s' % e) @@ -316,6 +316,10 @@ class GsxRequest(object): # @hack for Reported Symptom/Issue API which nests two ReportedSymptomIssueRequest elements if method.endswith("Request"): request_name = method + + # @hack FetchDiagnosticDetails doesn't follow the naming conventions + if method.endswith('FetchDiagnosticDetails'): + request_name = 'FetchDiagnosticDetailsRequestData' request = ET.SubElement(root, request_name) request.append(GSX_SESSION) @@ -327,8 +331,8 @@ class GsxRequest(object): request.append(self.data) data = ET.tostring(self.env, "UTF-8") - res = self._send(method, data) - xml = res.text.encode('utf-8') + res = self._send(method, data) + xml = res.text.encode('utf-8') self.xml_response = xml if res.status_code > 200: diff --git a/tests/test_gsxws.py b/tests/test_gsxws.py index e18cbe0..593b8ca 100644 --- a/tests/test_gsxws.py +++ b/tests/test_gsxws.py @@ -44,14 +44,16 @@ class ComptiaTestCase(RemoteTestCase): self.assertIsInstance(data['E'], dict) -class DiagnosticsTestCase(RemoteTestCase): +class DiagnosticsTestCase(TestCase): def setUp(self): - super(DiagnosticsTestCase, self).setUp() + from gsxws.core import connect + connect(os.getenv('GSX_USER'), os.getenv('GSX_SOLDTO'), os.getenv('GSX_ENV')) + self.sn = os.getenv('GSX_SN') + device = Product(sn=self.sn) self.diag = diagnostics.Diagnostics(serialNumber=self.sn) self.diag.shipTo = os.getenv('GSX_SHIPTO') def test_fetch(self): - self.diag = diagnostics.Diagnostics(alternateDeviceId=self.sn) res = self.diag.fetch() for r in res.diagnosticTestData.testResult.result: -- cgit v1.2.3