Added common function for generating colour ranges, and added test for the common file
This commit is contained in:
+12
-1
@@ -3,6 +3,7 @@
|
||||
"""
|
||||
|
||||
from os import path, mkdir
|
||||
from itertools import chain
|
||||
|
||||
def ensureDir(theDir):
|
||||
if not path.isdir(theDir):
|
||||
@@ -28,7 +29,7 @@ def cmpFiles(fileOne, fileTwo, ignoreLines=[]):
|
||||
if n+1 in ignoreLines:
|
||||
print("Ignoring line %d" % (n+1))
|
||||
continue
|
||||
|
||||
|
||||
if lnOne != lnTwo:
|
||||
print("Diff on line %d:" % (n+1))
|
||||
print(" << '%s'" % lnOne)
|
||||
@@ -39,3 +40,13 @@ def cmpFiles(fileOne, fileTwo, ignoreLines=[]):
|
||||
foTwo.close()
|
||||
|
||||
return not diffFound
|
||||
|
||||
def cmpList(listOne, listTwo):
|
||||
flatOne = list(chain.from_iterable([listOne]))
|
||||
flatTwo = list(chain.from_iterable([listTwo]))
|
||||
if len(flatOne) != len(flatTwo):
|
||||
return False
|
||||
for i in range(len(flatOne)):
|
||||
if flatOne[i] != flatTwo[i]:
|
||||
return False
|
||||
return True
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""novelWriter Common Class Tester
|
||||
"""
|
||||
|
||||
import nw
|
||||
from nw.common import *
|
||||
from nwtools import cmpList
|
||||
|
||||
def testCheckString():
|
||||
assert checkString(None, "NotNone",True) is None
|
||||
assert checkString("None","NotNone",True) is None
|
||||
assert checkString("None","NotNone",False) == "None"
|
||||
assert checkString(None, "NotNone",False) == "NotNone"
|
||||
assert checkString(1, "NotNone",False) == "NotNone"
|
||||
assert checkString(1.0, "NotNone",False) == "NotNone"
|
||||
assert checkString(True, "NotNone",False) == "NotNone"
|
||||
|
||||
def testCheckInt():
|
||||
assert checkInt(None, 3,True) is None
|
||||
assert checkInt("None",3,True) is None
|
||||
assert checkInt(None, 3,False) == 3
|
||||
assert checkInt(1, 3,False) == 1
|
||||
assert checkInt(1.0, 3,False) == 1
|
||||
assert checkInt(True, 3,False) == 1
|
||||
|
||||
def testCheckBool():
|
||||
assert checkBool(None, 3, True) is None
|
||||
assert checkBool("None", 3, True) is None
|
||||
assert checkBool("True", False,False) == True
|
||||
assert checkBool("False",True, False) == False
|
||||
assert checkBool("Boo", None, False) is None
|
||||
assert checkBool(0, None, False) == False
|
||||
assert checkBool(1, None, False) == True
|
||||
assert checkBool(2, None, False) is None
|
||||
assert checkBool(0.0, None, False) is None
|
||||
assert checkBool(1.0, None, False) is None
|
||||
assert checkBool(2.0, None, False) is None
|
||||
|
||||
def testColRange():
|
||||
assert colRange([0,0], [0,0], 0) is None
|
||||
assert cmpList(colRange([200,50,0], [50,200,0], 1), [200,50,0])
|
||||
assert cmpList(colRange([200,50,0], [50,200,0], 2), [[200,50,0],[50,200,0]])
|
||||
assert cmpList(colRange([200,50,0], [50,200,0], 3), [[200,50,0],[125,125,0],[50,200,0]])
|
||||
assert cmpList(colRange([200,50,0], [50,200,0], 4), [[200,50,0],[150,100,0],[100,150,0],[50,200,0]])
|
||||
assert cmpList(colRange([200,50,0], [50,200,0], 5), [[200,50,0],[162,87,0],[124,124,0],[86,161,0],[50,200,0]])
|
||||
Reference in New Issue
Block a user