diff options
| author | Joshua Harlow <harlowja@yahoo-inc.com> | 2015-03-10 18:01:44 -0700 |
|---|---|---|
| committer | Joshua Harlow <harlowja@yahoo-inc.com> | 2015-03-11 12:53:15 -0700 |
| commit | ad133adea6ee293f0cfc6145a483fa0cfc27faf6 (patch) | |
| tree | 6989d2c82383391ab2c33ebc575f1894699a2f33 /taskflow/tests | |
| parent | 1478f52c9ad8c21d9fa5396118bde54ab8cc6bd7 (diff) | |
| download | taskflow-ad133adea6ee293f0cfc6145a483fa0cfc27faf6.tar.gz | |
Add + use failure json schema validation
Change-Id: Ie3aa386c831459a028ba494570bafd53b998126e
Diffstat (limited to 'taskflow/tests')
| -rw-r--r-- | taskflow/tests/unit/test_failure.py | 31 | ||||
| -rw-r--r-- | taskflow/tests/unit/worker_based/test_server.py | 8 |
2 files changed, 35 insertions, 4 deletions
diff --git a/taskflow/tests/unit/test_failure.py b/taskflow/tests/unit/test_failure.py index c8f83b9..fab9cb9 100644 --- a/taskflow/tests/unit/test_failure.py +++ b/taskflow/tests/unit/test_failure.py @@ -137,6 +137,36 @@ class FromExceptionTestCase(test.TestCase, GeneralFailureObjTestsMixin): class FailureObjectTestCase(test.TestCase): + def test_invalids(self): + f = { + 'exception_str': 'blah', + 'traceback_str': 'blah', + 'exc_type_names': [], + } + self.assertRaises(exceptions.InvalidFormat, + failure.Failure.validate, f) + f = { + 'exception_str': 'blah', + 'exc_type_names': ['Exception'], + } + self.assertRaises(exceptions.InvalidFormat, + failure.Failure.validate, f) + f = { + 'exception_str': 'blah', + 'traceback_str': 'blah', + 'exc_type_names': ['Exception'], + 'version': -1, + } + self.assertRaises(exceptions.InvalidFormat, + failure.Failure.validate, f) + + def test_valid_from_dict_to_dict(self): + f = _captured_failure('Woot!') + d_f = f.to_dict() + failure.Failure.validate(d_f) + f2 = failure.Failure.from_dict(d_f) + self.assertTrue(f.matches(f2)) + def test_dont_catch_base_exception(self): try: raise SystemExit() @@ -358,6 +388,7 @@ class FailureCausesTest(test.TestCase): self.assertIsNotNone(f) d_f = f.to_dict() + failure.Failure.validate(d_f) f = failure.Failure.from_dict(d_f) self.assertEqual(2, len(f.causes)) self.assertEqual("Still not working", f.causes[0].exception_str) diff --git a/taskflow/tests/unit/worker_based/test_server.py b/taskflow/tests/unit/worker_based/test_server.py index fea5d1c..9b7815c 100644 --- a/taskflow/tests/unit/worker_based/test_server.py +++ b/taskflow/tests/unit/worker_based/test_server.py @@ -108,7 +108,7 @@ class TestServer(test.MockTestCase): def test_parse_request(self): request = self.make_request() - bundle = server.Server._parse_request(**request) + bundle = pr.Request.from_dict(request) task_cls, task_name, action, task_args = bundle self.assertEqual((task_cls, task_name, action, task_args), (self.task.name, self.task.name, self.task_action, @@ -116,7 +116,7 @@ class TestServer(test.MockTestCase): def test_parse_request_with_success_result(self): request = self.make_request(action='revert', result=1) - bundle = server.Server._parse_request(**request) + bundle = pr.Request.from_dict(request) task_cls, task_name, action, task_args = bundle self.assertEqual((task_cls, task_name, action, task_args), (self.task.name, self.task.name, 'revert', @@ -126,7 +126,7 @@ class TestServer(test.MockTestCase): def test_parse_request_with_failure_result(self): a_failure = failure.Failure.from_exception(Exception('test')) request = self.make_request(action='revert', result=a_failure) - bundle = server.Server._parse_request(**request) + bundle = pr.Request.from_dict(request) task_cls, task_name, action, task_args = bundle self.assertEqual((task_cls, task_name, action, task_args), (self.task.name, self.task.name, 'revert', @@ -137,7 +137,7 @@ class TestServer(test.MockTestCase): failures = {'0': failure.Failure.from_exception(Exception('test1')), '1': failure.Failure.from_exception(Exception('test2'))} request = self.make_request(action='revert', failures=failures) - bundle = server.Server._parse_request(**request) + bundle = pr.Request.from_dict(request) task_cls, task_name, action, task_args = bundle self.assertEqual( (task_cls, task_name, action, task_args), |
