|
import pytest |
|
|
|
from .test_base import _HTTPErrorGenerator |
|
from ...exception.master import MasterErrorCode, \ |
|
get_master_exception_class_by_error_code, get_master_exception_by_error, MasterSuccess, \ |
|
MasterSystemShuttingDown, MasterTaskDataInvalid, MasterSlaveTokenNotGiven, MasterSlaveTokenInvalid, \ |
|
MasterSelfTokenNotGiven, MasterSelfTokenInvalid, MasterChannelInvalid, \ |
|
MasterChannelNotGiven, MasterMasterTokenInvalid, MasterMasterTokenNotGiven |
|
|
|
|
|
@pytest.mark.unittest |
|
class TestInteractionExceptionMaster(_HTTPErrorGenerator): |
|
|
|
def test_error_code(self): |
|
assert len(MasterErrorCode.__members__) == 11 |
|
assert MasterErrorCode.SUCCESS == 0 |
|
|
|
def test_exception_class(self): |
|
assert get_master_exception_class_by_error_code(MasterErrorCode.SUCCESS) == MasterSuccess |
|
|
|
assert get_master_exception_class_by_error_code( |
|
MasterErrorCode.SYSTEM_SHUTTING_DOWN |
|
) == MasterSystemShuttingDown |
|
|
|
assert get_master_exception_class_by_error_code(MasterErrorCode.CHANNEL_NOT_GIVEN) == MasterChannelNotGiven |
|
assert get_master_exception_class_by_error_code(MasterErrorCode.CHANNEL_INVALID) == MasterChannelInvalid |
|
|
|
assert get_master_exception_class_by_error_code( |
|
MasterErrorCode.MASTER_TOKEN_NOT_GIVEN |
|
) == MasterMasterTokenNotGiven |
|
assert get_master_exception_class_by_error_code( |
|
MasterErrorCode.MASTER_TOKEN_INVALID |
|
) == MasterMasterTokenInvalid |
|
|
|
assert get_master_exception_class_by_error_code(MasterErrorCode.SELF_TOKEN_NOT_GIVEN) == MasterSelfTokenNotGiven |
|
assert get_master_exception_class_by_error_code(MasterErrorCode.SELF_TOKEN_INVALID) == MasterSelfTokenInvalid |
|
|
|
assert get_master_exception_class_by_error_code( |
|
MasterErrorCode.SLAVE_TOKEN_NOT_GIVEN |
|
) == MasterSlaveTokenNotGiven |
|
assert get_master_exception_class_by_error_code(MasterErrorCode.SLAVE_TOKEN_INVALID) == MasterSlaveTokenInvalid |
|
|
|
assert get_master_exception_class_by_error_code(MasterErrorCode.TASK_DATA_INVALID) == MasterTaskDataInvalid |
|
|
|
def test_get_master_exception_by_error(self): |
|
err = get_master_exception_by_error(self._generate_exception(101, 'This is system shutting down.')) |
|
assert isinstance(err, MasterSystemShuttingDown) |
|
assert not err.success |
|
assert err.status_code == 400 |
|
assert err.code == 101 |
|
assert err.message == 'This is system shutting down.' |
|
assert err.data == {} |
|
|
|
err = get_master_exception_by_error(self._generate_exception(601, 'Task data invalid.', data={'value': 233})) |
|
assert isinstance(err, MasterTaskDataInvalid) |
|
assert not err.success |
|
assert err.status_code == 400 |
|
assert err.code == 601 |
|
assert err.message == 'Task data invalid.' |
|
assert err.data == {'value': 233} |
|
|