tests/subfiles.py

changeset 92
b8d72909d593
parent 89
d2b277cb948e
child 95
a3536e51f6bc
equal deleted inserted replaced
91:c71a7d863c2e 92:b8d72909d593
138 ), 138 ),
139 ) 139 )
140 @problem_type('unnecessary-invertnext', 140 @problem_type('unnecessary-invertnext',
141 severity = 'warning', 141 severity = 'warning',
142 message = 'flat subfile unnecessarily inverted using BFC INVERTNEXT' 142 message = 'flat subfile unnecessarily inverted using BFC INVERTNEXT'
143 )
144 @problem_type('mirrored-studs',
145 severity = 'warning',
146 message = lambda primitive: str.format(
147 '"{primitive}" should not be mirrored',
148 primitive = primitive,
149 )
150 )
151 @problem_type('mirrored-studs-indirect',
152 severity = 'warning',
153 message = lambda primitive: str.format(
154 '"{primitive}" should not be mirrored because it contains studs',
155 primitive = primitive,
156 )
143 ) 157 )
144 def dependent_subfile_tests(model): 158 def dependent_subfile_tests(model):
145 ''' 159 '''
146 Tests subfile references for such qualities that are dependent on the 160 Tests subfile references for such qualities that are dependent on the
147 actual contents of the subfiles. Checks whether moved-to files are used. 161 actual contents of the subfiles. Checks whether moved-to files are used.
207 if has_invertnext and subfile.flatness: 221 if has_invertnext and subfile.flatness:
208 yield report_problem( 222 yield report_problem(
209 'unnecessary-invertnext', 223 'unnecessary-invertnext',
210 bad_object = subfile_reference, 224 bad_object = subfile_reference,
211 ) 225 )
226 from filecache import is_logo_stud_name
227 # Test whether any stud subfile is mirrored.
228 if is_logo_stud_name(subfile_reference.subfile_path) \
229 and subfile_reference.matrix.is_mirrored():
230 yield report_problem(
231 'mirrored-studs',
232 bad_object = subfile_reference,
233 primitive = subfile_reference.subfile_path,
234 )
235 elif subfile.has_studs and subfile_reference.matrix.is_mirrored():
236 yield report_problem(
237 'mirrored-studs-indirect',
238 bad_object = subfile_reference,
239 primitive = subfile_reference.subfile_path,
240 )
212 241
213 def dimensions_description(dimensions): 242 def dimensions_description(dimensions):
214 if isinstance(dimensions, str): 243 if isinstance(dimensions, str):
215 return dimensions 244 return dimensions
216 else: 245 else:

mercurial