25 print(f
"Check {name}: '{value}' == '{ref}' --> {isOk}")
35 selection.selectAll(doc.rootNode(), 255)
36 node = doc.createFilterLayer(
"TestFilter", filter, selection)
37 doc.rootNode().addChildNode(node,
None)
39 filter2 = node.filter()
40 cfg = filter2.configuration()
41 for curveId, curveValue
in curves.items():
42 cfg.setProperty(curveId, curveValue)
43 doc.refreshProjection()
52 nodes = doc.rootNode().childNodes()
54 if nodes[1].name() ==
"TestFilter":
57 filter = nodes[1].filter()
59 cfg = filter.configuration()
60 for curveId, curveValue
in curves.items():
61 cfg.setProperty(curveId, curveValue)
63 doc.refreshProjection()
75 nodes = doc.rootNode().childNodes()
77 if nodes[1].name() ==
"TestFilter":
80 filter = nodes[1].filter()
82 cfg = filter.configuration()
83 for curveId, curveValue
in curves.items():
84 if not checkResult(curveId, cfg.property(curveId), curveValue):
93 curvesPCC = {
'nTransfers': 8,
94 'curve0':
'0,0;0.5,1;1,0;',
95 'curve1':
'0,0.01;1,0.91;',
96 'curve2':
'0,0.02;1,0.92;',
97 'curve3':
'0,0.03;1,0.93;',
98 'curve4':
'0,0.04;1,0.94;',
99 'curve5':
'0,0.05;1,0.95;',
100 'curve6':
'0,0.06;1,0.96;',
101 'curve7':
'0,0.07;1,0.97;'
103 curvesPCM = {
'nTransfers': 8,
104 'curve0':
'0,1;0.5,1;0,9;',
105 'curve1':
'0,0.11;1,0.91;',
106 'curve2':
'0,0.22;1,0.92;',
107 'curve3':
'0,0.33;1,0.93;',
108 'curve4':
'0,0.44;1,0.94;',
109 'curve5':
'0,0.55;1,0.95;',
110 'curve6':
'0,0.66;1,0.96;',
111 'curve7':
'0,0.77;1,0.97;'
114 curvesCCC = {
'nTransfers': 8,
115 'curve0':
'0,0;0.5,1;1,0;',
116 'curve1':
'0,0.01;1,0.91;',
117 'curve2':
'0,0.02;1,0.92;',
118 'curve3':
'0,0.03;1,0.93;',
119 'curve4':
'0,0.04;1,0.94;',
120 'curve5':
'0,0.05;1,0.95;',
121 'curve6':
'0,0.06;1,0.96;',
122 'curve7':
'0,0.07;1,0.97;',
132 curvesCCM = {
'nTransfers': 8,
133 'curve0':
'0,1;0.5,1;0,9;',
134 'curve1':
'0,0.11;1,0.91;',
135 'curve2':
'0,0.22;1,0.92;',
136 'curve3':
'0,0.33;1,0.93;',
137 'curve4':
'0,0.44;1,0.94;',
138 'curve5':
'0,0.55;1,0.95;',
139 'curve6':
'0,0.66;1,0.96;',
140 'curve7':
'0,0.77;1,0.97;',
152 with tempfile.TemporaryDirectory()
as tmpDirname:
155 print(
"-- Testing 'perchannel' filter")
156 tmpFileNamePC = os.path.join(tmpDirname,
'testing_filter_pc.kra')
162 print(
"-- Testing 'crosschannel' filter")
163 tmpFileNameCC = os.path.join(tmpDirname,
'testing_filter_cc.kra')
170 print(
'Global check: OK')
172 print(
'Global check: INVALID')
static Krita * instance()
instance retrieve the singleton instance of the Application object.
modifyDocument(fileName, curves)
checkResult(name, value, ref)
createDocument(fileName, filterName, curves)
checkDocument(fileName, curves)