Beispiel #1
0
def test_move_big_group():
    root = RootGroup()

    # * root        ==>  * root
    #   * group1    ==>    * group1
    #     - e1      ==>      - e1
    #     * group2  ==>    * group2
    #       - e2    ==>      - e2
    #       - e3    ==>      - e3
    #     * group3  ==>      * group4
    #       - e4    ==>       - e5
    #   * group4    ==>       - e6
    #     - e5      ==>       * group5
    #     - e6      ==>         - e7
    #     * group5  ==>         - e8
    #       - e7    ==>       * group6
    #       - e8    ==>         - e9
    #     * group6  ==>    * group3
    #       - e9    ==>      - e4

    group1 = root.add_group("group1")
    group1.add_entry("e1")
    group2 = group1.add_group("group2")
    group2.add_entry("e2")
    group2.add_entry("e3")
    group3 = group1.add_group("group3")
    group2.add_entry("e4")

    group4 = root.add_group("group4")
    group4.add_entry("e5")
    group4.add_entry("e6")
    group5 = group4.add_group("group5")
    group5.add_entry("e7")
    group5.add_entry("e8")
    group6 = group4.add_group("group6")
    group6.add_entry("e9")

    assert group1.level == 0
    assert group2.level == 1
    assert group3.level == 1
    assert group4.level == 0
    assert group5.level == 1
    assert group6.level == 1

    group2.move_group(group4)

    assert group1.level == 0
    assert group2.level == 1
    assert group3.level == 1
    assert group4.level == 2
    assert group5.level == 3
    assert group6.level == 3

    assert len(root.get_groups()) == 1
    assert group4 not in root.get_groups()
    assert group1 in root.get_groups()

    assert len(group2.get_groups()) == 1
    assert group4 in group2.get_groups()
Beispiel #2
0
def test_move_big_group():
    root = RootGroup()

    # * root        ==>  * root
    #   * group1    ==>    * group1
    #     - e1      ==>      - e1
    #     * group2  ==>    * group2
    #       - e2    ==>      - e2
    #       - e3    ==>      - e3
    #     * group3  ==>      * group4
    #       - e4    ==>       - e5
    #   * group4    ==>       - e6
    #     - e5      ==>       * group5
    #     - e6      ==>         - e7
    #     * group5  ==>         - e8
    #       - e7    ==>       * group6
    #       - e8    ==>         - e9
    #     * group6  ==>    * group3
    #       - e9    ==>      - e4

    group1 = root.add_group("group1")
    group1.add_entry("e1")
    group2 = group1.add_group("group2")
    group2.add_entry("e2")
    group2.add_entry("e3")
    group3 = group1.add_group("group3")
    group2.add_entry("e4")

    group4 = root.add_group("group4")
    group4.add_entry("e5")
    group4.add_entry("e6")
    group5 = group4.add_group("group5")
    group5.add_entry("e7")
    group5.add_entry("e8")
    group6 = group4.add_group("group6")
    group6.add_entry("e9")

    assert group1.level == 0
    assert group2.level == 1
    assert group3.level == 1
    assert group4.level == 0
    assert group5.level == 1
    assert group6.level == 1

    group2.move_group(group4)

    assert group1.level == 0
    assert group2.level == 1
    assert group3.level == 1
    assert group4.level == 2
    assert group5.level == 3
    assert group6.level == 3

    assert len(root.get_groups()) == 1
    assert group4 not in root.get_groups()
    assert group1 in root.get_groups()

    assert len(group2.get_groups()) == 1
    assert group4 in group2.get_groups()
Beispiel #3
0
def test_move_entry():
    root = RootGroup()

    group1 = root.add_group("test group")
    group2 = root.add_group("test group 2")

    entry = group1.add_entry("test entry")

    group2.move_entry(entry)

    assert len(group1.get_entries()) == 0
    assert len(group2.get_entries()) == 1
    assert entry in group2.get_entries()
Beispiel #4
0
def test_move_entry():
    root = RootGroup()

    group1 = root.add_group("test group")
    group2 = root.add_group("test group 2")

    entry = group1.add_entry("test entry")

    group2.move_entry(entry)

    assert len(group1.get_entries()) == 0
    assert len(group2.get_entries()) == 1
    assert entry in group2.get_entries()
Beispiel #5
0
def test_remove_group_2():
    root = RootGroup()

    group1 = root.add_group("test group 1")
    group2 = root.add_group("test group 2")
    group3 = root.add_group("test group 3")

    assert len(root.get_groups()) == 3

    group2.remove()

    assert len(root.get_groups()) == 2
    assert group1 in root.get_groups()
    assert group2 not in root.get_groups()
    assert group3 in root.get_groups()
Beispiel #6
0
def test_remove_group_2():
    root = RootGroup()

    group1 = root.add_group("test group 1")
    group2 = root.add_group("test group 2")
    group3 = root.add_group("test group 3")

    assert len(root.get_groups()) == 3

    group2.remove()

    assert len(root.get_groups()) == 2
    assert group1 in root.get_groups()
    assert group2 not in root.get_groups()
    assert group3 in root.get_groups()
Beispiel #7
0
def test_create_subgroup():
    parent_group = RootGroup().add_group("test group")
    group = parent_group.add_group("test group")

    assert len(parent_group.get_groups()) == 1
    assert group in parent_group.get_groups()
    assert group.level == 1
Beispiel #8
0
def test_create_subgroup():
    parent_group = RootGroup().add_group("test group")
    group = parent_group.add_group("test group")

    assert len(parent_group.get_groups()) == 1
    assert group in parent_group.get_groups()
    assert group.level == 1
Beispiel #9
0
def test_remove_group_twice():
    root = RootGroup()

    group = root.add_group("test group 1")

    root.remove_group(group)
    with pytest.raises(ValueError):
        root.remove_group(group)
Beispiel #10
0
def test_move_existing_group():
    root = RootGroup()

    parent = root.add_group("parent")
    group1 = parent.add_group("test group 1")

    with pytest.raises(ValueError):
        parent.move_group(group1)
Beispiel #11
0
def test_move_group_itself():
    root = RootGroup()

    parent = root.add_group("parent")
    group1 = parent.add_group("test group 1")

    with pytest.raises(ValueError):
        group1.move_group(group1)
Beispiel #12
0
def test_remove_group_twice():
    root = RootGroup()

    group = root.add_group("test group 1")

    root.remove_group(group)
    with pytest.raises(ValueError):
        root.remove_group(group)
Beispiel #13
0
def test_move_entry_itself():
    root = RootGroup()
    group1 = root.add_group("test group")

    entry = group1.add_entry("test entry")

    with pytest.raises(ValueError):
        group1.move_entry(entry)
Beispiel #14
0
def test_move_entry_itself():
    root = RootGroup()
    group1 = root.add_group("test group")

    entry = group1.add_entry("test entry")

    with pytest.raises(ValueError):
        group1.move_entry(entry)
Beispiel #15
0
def test_move_group_itself():
    root = RootGroup()

    parent = root.add_group("parent")
    group1 = parent.add_group("test group 1")

    with pytest.raises(ValueError):
        group1.move_group(group1)
Beispiel #16
0
def test_move_existing_group():
    root = RootGroup()

    parent = root.add_group("parent")
    group1 = parent.add_group("test group 1")

    with pytest.raises(ValueError):
        parent.move_group(group1)
Beispiel #17
0
def test_create_group():
    root = RootGroup()

    assert len(root.get_groups()) == 0

    group = root.add_group("test group")

    assert group.title == "test group"
    assert group.level == 0

    assert len(root.get_groups()) == 1
    assert group in root.get_groups()
Beispiel #18
0
def test_create_group():
    root = RootGroup()

    assert len(root.get_groups()) == 0

    group = root.add_group("test group")

    assert group.title == "test group"
    assert group.level == 0

    assert len(root.get_groups()) == 1
    assert group in root.get_groups()
Beispiel #19
0
def test_remove_subgroup():
    root = RootGroup()

    parent = root.add_group("parent")

    group1 = parent.add_group("test group 1")
    group2 = parent.add_group("test group 2")
    group3 = parent.add_group("test group 3")

    assert len(parent.get_groups()) == 3

    parent.remove_group(group2)

    assert len(parent.get_groups()) == 2
    assert group1 in parent.get_groups()
    assert group2 not in parent.get_groups()
    assert group3 in parent.get_groups()
Beispiel #20
0
def test_remove_subgroup():
    root = RootGroup()

    parent = root.add_group("parent")

    group1 = parent.add_group("test group 1")
    group2 = parent.add_group("test group 2")
    group3 = parent.add_group("test group 3")

    assert len(parent.get_groups()) == 3

    parent.remove_group(group2)

    assert len(parent.get_groups()) == 2
    assert group1 in parent.get_groups()
    assert group2 not in parent.get_groups()
    assert group3 in parent.get_groups()
Beispiel #21
0
def test_move_group():
    root = RootGroup()

    parent = root.add_group("parent")

    group1 = parent.add_group("test group 1")
    group2 = parent.add_group("test group 2")

    assert len(parent.get_groups()) == 2
    assert len(group1.get_groups()) == 0

    group1.move_group(group2)

    # Check group has been removed from old parent
    assert len(parent.get_groups()) == 1
    assert group2 not in parent.get_groups()

    # Check groups has been added to new parent correctly
    assert len(group1.get_groups()) == 1
    assert group2 in group1.get_groups()
    assert group2.level == group1.level + 1
Beispiel #22
0
def test_move_group():
    root = RootGroup()

    parent = root.add_group("parent")

    group1 = parent.add_group("test group 1")
    group2 = parent.add_group("test group 2")

    assert len(parent.get_groups()) == 2
    assert len(group1.get_groups()) == 0

    group1.move_group(group2)

    # Check group has been removed from old parent
    assert len(parent.get_groups()) == 1
    assert group2 not in parent.get_groups()

    # Check groups has been added to new parent correctly
    assert len(group1.get_groups()) == 1
    assert group2 in group1.get_groups()
    assert group2.level == group1.level + 1