def test_get_version_with_no_args(self): bad_args = (None, [], {}, ()) for arg in bad_args: try: product.get_versions(None, arg) except Fault as f: self.assertEqual(f.faultCode, 400, AssertMessage.SHOULD_BE_400) else: self.fail(AssertMessage.NOT_VALIDATE_ARGS)
def test_get_version_with_bad_args(self): bad_args = (True, False, '', 'aaaa', object) for arg in bad_args: try: product.get_versions(None, arg) except Fault as f: self.assertEqual(f.faultCode, 400, AssertMessage.SHOULD_BE_400) else: self.fail(AssertMessage.NOT_VALIDATE_ARGS)
def test_add_version_with_non_exist_prod(self): try: product.get_versions(self.admin_request, { "product": 111111, "value": "New Version 2" }) except Fault as f: self.assertEqual(f.faultCode, 404, AssertMessage.SHOULD_BE_404) else: self.fail(AssertMessage.NOT_VALIDATE_ARGS)
def test_add_version_with_illegal_field(self): try: product.get_versions(self.admin_request, { "product": 1, "value": "New Version 2", "data": "data" }) except Fault as f: self.assertEqual(f.faultCode, 400, AssertMessage.SHOULD_BE_400) else: self.fail(AssertMessage.NOT_VALIDATE_ARGS)
def test_get_version_with_non_exist_prod(self): try: product.get_versions(None, 99999) except Fault as f: self.assertEqual(f.faultCode, 404, AssertMessage.SHOULD_BE_404) else: self.fail(AssertMessage.NOT_VALIDATE_ARGS) try: product.get_versions(None, "Missing Product") except Fault as f: self.assertEqual(f.faultCode, 404, AssertMessage.SHOULD_BE_404) else: self.fail(AssertMessage.NOT_VALIDATE_ARGS)
def test_get_versions_with_name(self): try: prod = product.get_versions(None, "StarCraft") except Fault: self.fail(AssertMessage.UNEXCEPT_ERROR) else: self.assertIsNotNone(prod) self.assertEqual(len(prod), 6) self.assertEqual(prod[0]['value'], '0.6') self.assertEqual(prod[1]['value'], '0.7') self.assertEqual(prod[2]['value'], '0.8') self.assertEqual(prod[3]['value'], '0.9') self.assertEqual(prod[4]['value'], '1.0') self.assertEqual(prod[5]['value'], 'unspecified')
def test_get_versions_with_name(self): prod = product.get_versions(None, self.product_name) self.assertIsNotNone(prod) versions = sorted(map(itemgetter('value'), prod)) self.assertEqual(self.versions + ['unspecified'], versions)
def test_get_versions_with_name(self): prod = product.get_versions(None, self.product_name) self.assertIsNotNone(prod) versions = [item['value'] for item in prod] versions.sort() self.assertEqual(self.versions + ['unspecified'], versions)