mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-05-17 11:22:28 +12:00
Checkpoint: outlineItem tests
This commit is contained in:
parent
159e1c3f75
commit
a0fac27e07
23
manuskript/tests/models/conftest.py
Normal file
23
manuskript/tests/models/conftest.py
Normal file
|
@ -0,0 +1,23 @@
|
|||
#!/usr/bin/env python
|
||||
# --!-- coding: utf8 --!--
|
||||
|
||||
"""Conf for models."""
|
||||
|
||||
import pytest
|
||||
from manuskript.models import outlineModel, outlineItem
|
||||
|
||||
@pytest.fixture
|
||||
def outlineModelBasic():
|
||||
"""Returns an outlineModel with a few items:
|
||||
* Folder
|
||||
* Text
|
||||
* Text
|
||||
"""
|
||||
mdl = outlineModel(parent=None)
|
||||
|
||||
root = mdl.rootItem
|
||||
f = outlineItem(title="Folder", parent=root)
|
||||
t1 = outlineItem(title="Text 1", _type="md", parent=f)
|
||||
t2 = outlineItem(title="Text 2", _type="md", parent=root)
|
||||
|
||||
return mdl
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
import pytest
|
||||
|
||||
from manuskript.models.outlineItem import outlineItem
|
||||
from manuskript.models import outlineItem
|
||||
|
||||
@pytest.fixture
|
||||
def outlineItemFolder():
|
||||
|
@ -27,3 +27,54 @@ def test_outlineItemsProperties(outlineItemFolder, outlineItemText):
|
|||
assert folder.isFolder() == True
|
||||
assert text.isFolder() == False
|
||||
assert text.isText() == True
|
||||
assert text.isMD() == text.isMMD() == True
|
||||
|
||||
assert text.title() == "Text"
|
||||
assert text.compile() == True
|
||||
text.setData(text.enum.compile, 0)
|
||||
assert text.compile() == False
|
||||
assert folder.POV() == ""
|
||||
assert folder.status() == ""
|
||||
assert folder.POV() == ""
|
||||
assert folder.customIcon() == ""
|
||||
folder.setCustomIcon("custom")
|
||||
assert folder.customIcon() == "custom"
|
||||
|
||||
text.setData(text.enum.text, "Sample **text**.")
|
||||
assert text.wordCount() == 2
|
||||
assert text.data(text.enum.revisions) == []
|
||||
text.setData(text.enum.setGoal, 4)
|
||||
assert text.data(text.enum.goalPercentage) == .5
|
||||
|
||||
def test_modelStuff(outlineModelBasic):
|
||||
|
||||
# Simplification
|
||||
model = outlineModelBasic
|
||||
|
||||
root = model.rootItem
|
||||
assert len(root.children()) == 2
|
||||
folder = root.child(0)
|
||||
text1 = folder.child(0)
|
||||
text2 = root.child(1)
|
||||
assert text1.compile() == True
|
||||
folder.setData(folder.enum.compile, 0)
|
||||
assert text1.compile() == False
|
||||
|
||||
text1.setData(text1.enum.text, "Sample text.")
|
||||
assert text1.wordCount() == 2
|
||||
assert folder.wordCount() == 2
|
||||
assert folder.stats() != ""
|
||||
|
||||
text1.setData(text1.enum.text, "Sample\n---\ntext.")
|
||||
folder.split("invalid mark")
|
||||
assert folder.childCount() == 1
|
||||
folder.split("\n---\n")
|
||||
assert folder.childCount() == 2
|
||||
text1.mergeWith([folder.child(1)])
|
||||
assert text1.text() == "Sample\n\ntext."
|
||||
text1.setData(text1.enum.text, "Sample\nNewTitle\ntext.")
|
||||
text1.splitAt(7, 8)
|
||||
assert folder.child(1).title() == "NewTitle"
|
||||
folder.removeChild(1)
|
||||
folder.removeChild(0)
|
||||
assert folder.childCount() == 0
|
||||
|
|
Loading…
Reference in a new issue