def test_boolean_processor_exception(): processor = BooleanProcessor(true_values=['Yes'], false_values=['No']) with pytest.raises(ColumnError) as exc_info: processor('I do not know.') assert exc_info.value.messages == [ "It is expected one of values: ['Yes', 'No']" ]
def test_boolean_processor(value, expected_value): processor = BooleanProcessor() assert processor(value) is expected_value
def test_boolean_processor_custom_values(value, expected_value): processor = BooleanProcessor(true_values=['True'], false_values=['False']) assert processor(value) is expected_value
1: 'First', 2: 'Second' }, IntegerProcessor(), 'Second'), ( ' 31.12.2020 ', { datetime.date(2020, 12, 31): 'New Year', datetime.date(2020, 11, 11): 'typical day', }, DateProcessor(formats=['%d.%m.%Y']), 'New Year', ), ('True', { True: 'ok', False: 'fail' }, BooleanProcessor(), 'ok'), ), ) def test_choice_processor(value, choices, raw_value_processor, expected_value): processor = ChoiceProcessor(choices=choices, raw_value_processor=raw_value_processor) assert processor(value) == expected_value @pytest.mark.parametrize( 'value, choices, raw_value_processor, expected_error_message', ( ('3', { '1': 'First', '2': 'Second'