57 lines
1.4 KiB
Python
57 lines
1.4 KiB
Python
from openfeature.exception import ErrorCode
|
|
from openfeature.flag_evaluation import FlagEvaluationDetails, Reason
|
|
|
|
|
|
def test_evaluation_details_reason_should_be_a_string():
|
|
# Given
|
|
flag_key = "my-flag"
|
|
flag_value = 100
|
|
variant = "1-hundred"
|
|
flag_metadata = {}
|
|
reason = Reason.DEFAULT
|
|
error_code = ErrorCode.GENERAL
|
|
error_message = "message"
|
|
|
|
# When
|
|
flag_details = FlagEvaluationDetails(
|
|
flag_key,
|
|
flag_value,
|
|
variant,
|
|
flag_metadata,
|
|
reason,
|
|
error_code,
|
|
error_message,
|
|
)
|
|
|
|
# Then
|
|
assert flag_key == flag_details.flag_key
|
|
assert flag_value == flag_details.value
|
|
assert variant == flag_details.variant
|
|
assert error_code == flag_details.error_code
|
|
assert error_message == flag_details.error_message
|
|
assert reason == flag_details.reason
|
|
|
|
|
|
def test_evaluation_details_reason_should_be_a_string_when_set():
|
|
# Given
|
|
flag_key = "my-flag"
|
|
flag_value = 100
|
|
variant = "1-hundred"
|
|
reason = Reason.DEFAULT
|
|
error_code = ErrorCode.GENERAL
|
|
error_message = "message"
|
|
|
|
# When
|
|
flag_details = FlagEvaluationDetails(
|
|
flag_key,
|
|
flag_value,
|
|
variant,
|
|
reason,
|
|
error_code,
|
|
error_message,
|
|
)
|
|
flag_details.reason = Reason.STATIC
|
|
|
|
# Then
|
|
assert Reason.STATIC == flag_details.reason # noqa: SIM300
|