示例#1
0
def test_model_insertrow(stubitemdata1, stub_model, stub_model_indexes):
    m = stub_model[0]
    rows = (0, 0, 2)
    parent = stub_model_indexes[0]
    parentitem = parent.internalPointer()
    for r in rows:
        i = easymodel.TreeItem(stubitemdata1())
        inserted = m.insertRow(r, i, parent)
        assert inserted is True
        assert i._model is m
        assert i._parent is parentitem
        assert parent.internalPointer().childItems[r] is i
        assert m.index(r, 0, parent).internalPointer() is i

    newidata = stubitemdata1()
    newi = newidata.to_item(data=newidata)
    newi2 = stubitemdata1().to_item(newi)
    newi3 = stubitemdata1().to_item()
    newi2.add_child(newi3)
    assert newi3._parent is newi2
    assert newi2.childItems[0] is newi3
    newi.set_parent(i)
    assert newi._model is m
    assert newi2._model is m
    assert newi._parent is i
    assert newi2._parent is newi
    assert newi.childItems[0] is newi2
    assert i.childItems[0] is newi
示例#2
0
def stub_tree(stubitemdata1, stubitemdata2):
    """Simple :class:`easymodel.TreeItem` tree.

    :root: TreeItem(None)
    :itdata1: stubitemdata2
    :c1: TreeItem(itdata1, root)
    :c2: TreeItem(stubitemdata2, root)
    :c3: TreeItem(stubitemdata1, c2)

    :returns: (root, c1, c2, c3, itdata1)
    """
    root = easymodel.TreeItem(None)
    itdata1 = stubitemdata2()
    c1 = easymodel.TreeItem(itdata1, root)
    c2 = easymodel.TreeItem(stubitemdata2(), root)
    c3 = easymodel.TreeItem(stubitemdata1(), c2)
    return (
        root,
        c1,
        c2,
        c3,
        itdata1,
    )
示例#3
0
def test_model_headerdata(stub_model):
    m = stub_model[0]
    for i in range(10):
        assert m.headerData(i, QtCore.Qt.Horizontal, DR) == str(i + 1)
        assert m.headerData(i, QtCore.Qt.Vertical, DR) == str(i + 1)

    rootdata = easymodel.ListItemData(['Sec1', 'Head2', 'Chap3'])
    root = easymodel.TreeItem(rootdata)
    m2 = easymodel.TreeModel(root)

    assert m2.headerData(0, QtCore.Qt.Horizontal, DR) == 'Sec1'
    assert m2.headerData(1, QtCore.Qt.Horizontal, DR) == 'Head2'
    assert m2.headerData(2, QtCore.Qt.Horizontal, DR) == 'Chap3'
    assert m2.headerData(3, QtCore.Qt.Horizontal, DR) == '4'
    assert m2.headerData(99, QtCore.Qt.Horizontal, DR) == '100'
    assert m2.headerData(3, QtCore.Qt.Vertical, DR) == '4'
    assert m2.headerData(99, QtCore.Qt.Vertical, DR) == '100'
示例#4
0
def model():
    rootdata = easymodel.ListItemData(['Column0', 'Column1'])
    root = easymodel.TreeItem(rootdata)
    # Create a new model with the root
    model = easymodel.TreeModel(root)
    datal0r0 = easymodel.ListItemData(['l0r0c0', 'l0r0c1'])
    datal0r1 = easymodel.ListItemData(['l0r1c0', 'l0r1c1'])
    datal1r0 = easymodel.ListItemData(['l1r0c0', 'l1r0c1'])
    datal1r1 = easymodel.ListItemData(['l1r1c0', 'l1r1c1'])
    datal2r0 = easymodel.ListItemData(['l2r0c0', 'l2r0c1'])
    datal2r1 = easymodel.ListItemData(['l2r1c0', 'l2r1c1'])
    iteml0r0 = easymodel.TreeItem(datal0r0, parent=root)
    easymodel.TreeItem(datal0r1, parent=root)
    iteml1r0 = easymodel.TreeItem(datal1r0, parent=iteml0r0)
    easymodel.TreeItem(datal1r1, parent=iteml0r0)
    easymodel.TreeItem(datal2r0, parent=iteml1r0)
    easymodel.TreeItem(datal2r1, parent=iteml1r0)
    return model
示例#5
0
def stub_model(stubitemdata1, stubitemdata2):
    """Tree model. Returns (m, root, c1, c2, c3, c4, c5)

    :m: the model
    :root: TreeItem(None)
    :c1: TreeItem(stubitemdata2(), root)
    :c2: TreeItem(stubitemdata2(), root)
    :c3: TreeItem(stubitemdata1(), c2)
    :c4: TreeItem(stubitemdata1(), c2)
    :c5: TreeItem(stubitemdata1(), c4)
    """
    root = easymodel.TreeItem(None)
    m = easymodel.TreeModel(root)
    c1 = easymodel.TreeItem(stubitemdata2(), root)
    c2 = easymodel.TreeItem(stubitemdata2(), root)
    c3 = easymodel.TreeItem(stubitemdata1(), c2)
    c4 = easymodel.TreeItem(stubitemdata1(), c2)
    c5 = easymodel.TreeItem(stubitemdata1(), c4)
    return (m, root, c1, c2, c3, c4, c5)
示例#6
0
def test_treeitem_set_data(new, stubitemdata1):
    itdata = stubitemdata1()
    ti = easymodel.TreeItem(itdata, )
    ti.set_data(0, new, DR)
    assert ti.data(0, DR) == new
示例#7
0
def test_treeitem_internal_data(stub_tree):
    for i in stub_tree[1:-1]:
        assert i.internal_data() is None
    l = [1, 2, 3]
    data = easymodel.ListItemData(l)
    assert easymodel.TreeItem(data).internal_data() is l