Пример #1
0
def test_field_allow_none_false_apply_exists():
    filter_obj = Mock(validated_data={"name": None})
    field = Field(allow_none=False)
    field.__set_name__(None, "name")
    field._apply_filter = Mock()
    field.apply_filter(filter_obj)
    field._apply_filter.assert_not_called()
Пример #2
0
def test_field_allow_none_true_apply_exists():
    filter_obj = Mock(validated_data={"name": None})
    field = Field(allow_none=True)
    field.__set_name__(None, "name")
    field._apply_filter = Mock()
    field.apply_filter(filter_obj)
    field._apply_filter.assert_called_once_with(filter_obj, None)
Пример #3
0
def test_field_allow_none_apply_does_not_exist_in_data(allow_none):
    filter_obj = Mock(validated_data={})
    field = Field(allow_none=allow_none)
    field.__set_name__(None, "name")
    field._apply_filter = Mock()
    field.apply_filter(filter_obj)
    field._apply_filter.assert_not_called()
Пример #4
0
def test_field_apply_with_default_lookup_operator():
    field = Field()
    field.__set_name__(None, "first_name")
    parent_filter = Mock(validated_data={"first_name": "test"},
                         Meta=Mock(model=User))
    field.post_init(parent_filter)
    assert compares_expressions(field.apply_filter(parent_filter),
                                User.first_name == "test")
Пример #5
0
def test_resolve_fk_is_not_called():
    field = Field()
    field.__set_name__(None, "name")
    field.resolve_fk = Mock()
    parent_filter = Mock()
    field.post_init(parent_filter)
    assert field.parent_filter is parent_filter
    assert field.resolve_fk.call_count == 0
Пример #6
0
def test_resolve_fk_is_called():
    field = Field()
    field.__set_name__(None, "name")
    field.is_foreign_key = True
    field.resolve_fk = Mock()
    parent_filter = Mock()
    field.post_init(parent_filter)
    assert field.parent_filter is parent_filter
    assert field.resolve_fk.call_args_list == [call()]
Пример #7
0
def test_field_apply_does_not_exist_in_data():
    field = Field()
    field.__set_name__(None, "name")
    assert field.apply_filter(Mock(validated_data={})).compare(empty_sql())
Пример #8
0
def test_set_column_with_custom_column_as_str():
    field = Field(custom_column="my_column")
    field.__set_name__(None, "name")
    field._set_column()
    assert isinstance(field._column, column("a").__class__)
    assert str(field._column) == "my_column"
Пример #9
0
def test_set_column_with_custom_column():
    mocked_column = Mock()
    field = Field(custom_column=mocked_column)
    field.__set_name__(None, "name")

    assert field._column is mocked_column
Пример #10
0
def test_set_column():
    field = Field()
    mocked_column = Mock()
    field._column = mocked_column
    field.__set_name__(None, "name")
    assert field._column is mocked_column