Exemple #1
0
def test_base_case(group, maintain_order):
    new_group = removeit(group.copy(), (2, "blue"),
                         maintain_order=maintain_order)

    del group[2]
    del group["blue"]
    assert new_group == group
Exemple #2
0
def test_base_case(group, maintain_order):
    new_group = removeit(group.copy(), {2, "blue"},
                         maintain_order=maintain_order)

    group.discard(2)
    group.discard("blue")
    assert new_group == group
Exemple #3
0
def test_remove_same_element_twice_with_order(group):
    new_group = removeit(tuple(group), ("blue", "blue"), maintain_order=True)

    group = list(group)
    group.remove("blue")
    group = tuple(group)
    assert new_group == group
Exemple #4
0
def test_base_case_with_order(group):
    new_group = removeit(tuple(group), (2, "blue"), maintain_order=True)

    group = list(group)
    group.remove(2)
    group.remove("blue")
    group = tuple(group)
    assert new_group == group
Exemple #5
0
def test_remove_same_element_twice_no_order(group):
    new_group = removeit(group.copy(), ["blue", "blue"], maintain_order=False)

    orig_len = len(group)
    group.remove("blue")
    assert all([x in group for x in new_group])
    assert all([x in new_group for x in group])
    assert len(new_group) == orig_len - 1
Exemple #6
0
def test_remove_duplicates_with_order(group):
    new_group = removeit(tuple(group), ("purple", ), maintain_order=True)

    group = list(group)
    group.remove("purple")
    group.remove("purple")
    group = tuple(group)
    assert new_group == group
Exemple #7
0
def test_base_case_no_order(group):
    new_group = removeit(group.copy(), [2, "blue"], maintain_order=False)

    orig_len = len(group)
    group.remove(2)
    group.remove("blue")
    assert all([x in group for x in new_group])
    assert all([x in new_group for x in group])
    assert len(new_group) == orig_len - 2
Exemple #8
0
def test_remove_duplicates_no_order(group):
    new_group = removeit(group.copy(), ["purple"], maintain_order=False)

    orig_len = len(group)
    group.remove("purple")
    group.remove("purple")
    assert all([x in group for x in new_group])
    assert all([x in new_group for x in group])
    assert len(new_group) == orig_len - 2
Exemple #9
0
def test_empty_both(maintain_order):
    new_group = removeit(dict(), dict(), maintain_order=maintain_order)

    assert new_group == dict()
Exemple #10
0
def test_empty_remove(group, maintain_order):
    new_group = removeit(group.copy(), dict(), maintain_order=maintain_order)

    assert new_group == group
Exemple #11
0
def test_empty_collection(group, maintain_order):
    new_group = removeit(dict(), ("purple", ), maintain_order=maintain_order)

    assert new_group == dict()
Exemple #12
0
def test_remove_same_element_twice(group, maintain_order):
    new_group = removeit(group.copy(), ("blue", "blue"),
                         maintain_order=maintain_order)

    del group["blue"]
    assert new_group == group
Exemple #13
0
def test_empty_collection(group, maintain_order):
    new_group = removeit({}, {"purple"}, maintain_order=maintain_order)

    assert new_group == {}
Exemple #14
0
def test_unsupported_type_remove(group, maintain_order):
    with pytest.raises(TypeError) as exception:
        new_group = removeit(tuple(group), 1.21, maintain_order=maintain_order)

    assert "to_remove argument must be of type" in str(exception.value)
Exemple #15
0
def test_empty_collection(group, maintain_order):
    new_group = removeit([], ["purple"], maintain_order=maintain_order)

    assert new_group == []
Exemple #16
0
def test_remove_same_element_twice_with_order(group):
    new_group = removeit(group.copy(), ["blue", "blue"], maintain_order=True)

    group.remove("blue")
    assert new_group == group
Exemple #17
0
def test_remove_duplicates_with_order(group):
    new_group = removeit(group.copy(), ["purple"], maintain_order=True)

    group.remove("purple")
    group.remove("purple")
    assert new_group == group
Exemple #18
0
def test_base_case_with_order(group):
    new_group = removeit(group.copy(), [2, "blue"], maintain_order=True)

    group.remove(2)
    group.remove("blue")
    assert new_group == group
Exemple #19
0
def test_empty_both(maintain_order):
    new_group = removeit(tuple(), tuple(), maintain_order=maintain_order)

    assert new_group == tuple()
Exemple #20
0
def test_unsupported_type_collection(maintain_order):
    with pytest.raises(TypeError) as exception:
        new_group = removeit(1.21, ("purple", ), maintain_order=maintain_order)

    assert "collection argument must be of type" in str(exception.value)
Exemple #21
0
def test_empty_collection(maintain_order):
    new_group = removeit(tuple(), ("purple", ), maintain_order=maintain_order)

    assert new_group == tuple()
Exemple #22
0
def test_empty_both(maintain_order):
    new_group = removeit([], [], maintain_order=maintain_order)

    assert new_group == []
Exemple #23
0
from removeit.removeit import removeit

group = (1, 2, 3, 3, "purple", "blue", -1, 0, "purple", -2.1, 2.1, (2, 3, 5)
         )  # for hand testing
# group = group * 20000  # uncomment when using for cProfile, and comment out the print()s below
res = removeit(group, ("blue", "blue"), maintain_order=False)
print(res)
print(len(res))
print()
Exemple #24
0
def test_remove_duplicates(group, maintain_order):
    new_group = removeit(group.copy(), {"purple"},
                         maintain_order=maintain_order)

    group.discard("purple")
    assert new_group == group
Exemple #25
0
def test_remove_duplicates(group, maintain_order):
    new_group = removeit(group.copy(), ("purple", ),
                         maintain_order=maintain_order)

    del group["purple"]
    assert new_group == group
Exemple #26
0
def test_empty_remove(group, maintain_order):
    new_group = removeit(tuple(group), tuple(), maintain_order=maintain_order)

    assert new_group == group
Exemple #27
0
def test_remove_same_element_twice(group, maintain_order):
    new_group = removeit(group.copy(), {"blue", "blue"},
                         maintain_order=maintain_order)

    group.discard("blue")
    assert new_group == group