def test_compare_filter_group_with_equivalent_multiple_args_in_different_order_returns_true(): group1 = create_is_in_filter_group("term", ["value1", "value2", "value3"]) group2 = create_is_in_filter_group("term", ["value3", "value1", "value2"]) assert group1 == group2 assert str(group1) == group2 assert tuple(group1) == group2 assert list(group1) == group2 assert group1 == str(group2) assert group1 == tuple(group2) assert group1 == list(group2)
def test_create_is_in_filter_group_returns_obj_with_correct_json_representation(): filter_group = create_is_in_filter_group("isinterm", ["isinvalue1", "isinvalue2"]) assert ( str(filter_group) == '{"filterClause":"OR",' ' "filters":[{"operator":"IS", "term":"isinterm", "value":"isinvalue1"},' '{"operator":"IS", "term":"isinterm", "value":"isinvalue2"}]}' )
def test_filter_group_when_does_not_contain_expected_query_filter_returns_false( filter_class, ): group = create_is_in_filter_group("term", ["value1", "value2", "value3"]) assert filter_class not in group assert str(filter_class) not in group assert tuple(filter_class) not in group assert list(filter_class) not in group
def test_filter_group_contains_expected_query_filter_returns_true( filter_class): group = create_is_in_filter_group("term", ["value1", "value2", "value3"]) assert filter_class in group assert str(filter_class) in group assert tuple(filter_class) in group assert list(filter_class) in group
def test_filter_group_when_changed_filter_clause_has_correct_json_representation( ): group = create_is_in_filter_group("term", ["value1", "value2", "value3"]) assert (str(group) == '{"filterClause":"OR", "filters"' ':[{"operator":"IS", "term":"term", "value":"value1"},' '{"operator":"IS", "term":"term", "value":"value2"},' '{"operator":"IS", "term":"term", "value":"value3"}]}') group.filter_clause = "AND" assert (str(group) == '{"filterClause":"AND", "filters"' ':[{"operator":"IS", "term":"term", "value":"value1"},' '{"operator":"IS", "term":"term", "value":"value2"},' '{"operator":"IS", "term":"term", "value":"value3"}]}')