| from unittest import TestCase |
|
|
| from lagent.actions.builtin_actions import FinishAction, InvalidAction, NoAction |
| from lagent.schema import ActionStatusCode |
|
|
|
|
| class TestFinishAction(TestCase): |
|
|
| def test_call(self): |
| action = FinishAction() |
| response = 'finish' |
| action_return = action(response) |
| self.assertEqual(action_return.state, ActionStatusCode.SUCCESS) |
| self.assertDictEqual(action_return.result, dict(text='finish')) |
|
|
|
|
| class TestInvalidAction(TestCase): |
|
|
| def test_call(self): |
| action = InvalidAction() |
| response = 'invalid' |
| action_return = action(response) |
| self.assertEqual(action_return.state, ActionStatusCode.API_ERROR) |
| self.assertEqual(action_return.errmsg, response) |
|
|
| action = InvalidAction(err_msg='error') |
| action_return = action() |
| self.assertEqual(action_return.state, ActionStatusCode.API_ERROR) |
| self.assertEqual(action_return.errmsg, 'error') |
|
|
|
|
| class TestNoAction(TestCase): |
|
|
| def test_call(self): |
| action = NoAction() |
| response = 'no' |
| action_return = action(response) |
| self.assertEqual(action_return.state, ActionStatusCode.API_ERROR) |
| self.assertEqual(action_return.errmsg, response) |
|
|
| action = NoAction(err_msg='error') |
| action_return = action() |
| self.assertEqual(action_return.state, ActionStatusCode.API_ERROR) |
| self.assertEqual(action_return.errmsg, 'error') |
|
|