def test_to_raw_value__if_value_has_another_type__should_raise_error( self, datatype, value): get_cb = Mock() set_cb = Mock(return_value=555) validation_cb = Mock(return_value=False) obj = Field('my_name', datatype, get_cb, set_cb, validation_cb) with pytest.raises(TypeError): obj.to_raw_value(value)
def test_to_raw_value__if_type_is_enum__should_return_its_value_string_representation( self): obj = Field('my_name', EnumStub) res = obj.to_raw_value(EnumStub.val2) assert res == '456'
def test_to_raw_value__if_type_set__should_return_string_representation( self, datatype, value): obj = Field('my_name', datatype) res = obj.to_raw_value(value) assert type(res) == str and res == str(value)
def test_to_raw_value__on_all_defaults__should_return_the_same_string( self): obj = Field('my_name') res = obj.to_raw_value('value1') assert res == 'value1'
def test_to_raw_value__if_set_cb_set__should_use_its_value_and_cast_to_string( self, datatype, value, set_cb, expect): get_cb = Mock() obj = Field('my_name', datatype, get_cb, set_cb) res = obj.to_raw_value(value) assert res == expect and type(res) == type(expect) get_cb.assert_not_called()
def test_to_raw_value__if_set_cb_and_validation_cb_passed__should_return_string_of_get_cb_value( self, datatype, value, set_cb, expect): get_cb = Mock() validation_cb = Mock(return_value=True) obj = Field('my_name', datatype, get_cb, set_cb, validation_cb) res = obj.to_raw_value(value) assert res == expect and type(res) == type(expect) get_cb.assert_not_called() validation_cb.assert_called_once_with(value)