def test_merge() -> None:
    assert merge([], []) == []
    assert merge([], [1]) == [1]
    assert merge([1, 3], [2]) == [1, 2, 3]
    assert merge([1, 2, 3], [4]) == [1, 2, 3, 4]
    assert merge([2, 6, 7, 9, 13], [1, 3, 5, 8, 10, 11, 14]) == [
        1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 13, 14
    ]
Example #2
0
def test_get_employee_paid_more_than():
    # more:write some real output to check
    for i in range(0, 100000):
        if i in range(0, int(single_e.salary)):
            assert single_e.get_employees_paid_more_than(i) == [single_e]
        else:
            assert single_e.get_employees_paid_more_than(i) == []

    for i in range(0, 100000):
        if i in range(0, int(single_l.salary)):
            assert single_l.get_employees_paid_more_than(i) == [single_l]
        else:
            assert single_l.get_employees_paid_more_than(i) == []

    lst = L30.get_all_subordinates()
    lst.append(L30)
    lst_salary = []
    for item in lst:
        if item.salary not in lst_salary:
            lst_salary = merge(lst_salary, [item.salary])
    assert len(lst_salary) == 23
    assert increasing(lst_salary) is True
    i = 0
    while i + 1 < len(lst_salary):
        if i == 0:
            for t in range(0, lst_salary[0]):
                for item in lst:
                    lsst = merge(item.get_all_subordinates(), [item])
                    assert increasing(lsst) is True
                    assert no_duplicate(lsst) is True
                    assert item.get_employees_paid_more_than(t) == lsst
                    assert increasing_eid(lsst)

        else:
            for t in range(lst_salary[i], lst_salary[i + 1]):
                for item in lst:
                    lsst = merge(item.get_all_subordinates(), [item])
                    lsst2 = []
                    for item2 in lsst:
                        lsst2.append(item2)
                    assert lsst2 == lsst
                    assert increasing(lsst) is True
                    assert increasing(lsst2) is True
                    assert no_duplicate(lsst) is True
                    assert no_duplicate(lsst2) is True
                    for item2 in lsst:
                        if item2.salary <= lst_salary[i]:
                            lsst2.remove(item2)
                    assert increasing(lsst2) is True
                    assert no_duplicate(lsst2) is True
                    assert item.get_employees_paid_more_than(t) == lsst2
                    assert increasing_eid(item.get_employees_paid_more_than(t))
        i += 1
def test_add_employee():
    lst = []
    lst2 = []
    lst3 = [1, 23, 56, 77]
    lst4 = [1, 23, 56, 78]
    lst44 = [13, 24, 55, 74]
    lst5 = [1, 2, 2, 3, 3, 4]
    lst6 = [1, 4, 4, 5, 7]
    assert merge(lst, lst2) == []
    assert merge(lst2, lst) == []
    assert merge(lst, lst3) == [1, 23, 56, 77]
    assert merge(lst3, lst) == [1, 23, 56, 77]
    assert merge(lst, lst5) == [1, 2, 2, 3, 3, 4]
    assert merge(lst5, lst) == [1, 2, 2, 3, 3, 4]
    assert merge(lst3, lst3) == [1, 1, 23, 23, 56, 56, 77, 77]
    assert merge(lst3, lst3) == [1, 1, 23, 23, 56, 56, 77, 77]
    assert merge(lst3, lst4) == [1, 1, 23, 23, 56, 56, 77, 78]
    assert merge(lst4, lst3) == [1, 1, 23, 23, 56, 56, 77, 78]
    assert merge(lst3, lst44) == [1, 13, 23, 24, 55, 56, 74, 77]
    assert merge(lst44, lst3) == [1, 13, 23, 24, 55, 56, 74, 77]
    assert merge(lst3, lst5) == [1, 1, 2, 2, 3, 3, 4, 23, 56, 77]
    assert merge(lst5, lst3) == [1, 1, 2, 2, 3, 3, 4, 23, 56, 77]
    assert merge(lst, lst5) == [1, 2, 2, 3, 3, 4]
    assert merge(lst5, lst) == [1, 2, 2, 3, 3, 4]
    assert merge(lst5, lst5) == [1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4]
    assert merge(lst5, lst6) == [1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 7]
    assert merge(lst6, lst5) == [1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 7]
Example #4
0
def test_merge_empty() -> None:
    """Tests merge."""
    result = organization_hierarchy.merge([], [])
    assert len(result) == 0
Example #5
0
def test_merge_many_items() -> None:
    """Tests merge."""
    result = organization_hierarchy.merge([135, 148, 157, 207, 209],
                                          [136, 137, 165, 240])
    assert result == [135, 136, 137, 148, 157, 165, 207, 209, 240]
Example #6
0
def test_merge_same_items() -> None:
    """Tests merge."""
    result = organization_hierarchy.merge([1, 2, 3], [1, 2, 3])
    assert result == [1, 1, 2, 2, 3, 3]
Example #7
0
def test_merge_single_items() -> None:
    """Tests merge."""
    result = organization_hierarchy.merge([1], [2])
    assert result == [1, 2]
Example #8
0
def test_merge_second_is_empty() -> None:
    """Tests merge."""
    result = organization_hierarchy.merge([1, 2, 3], [])
    assert result == [1, 2, 3]