fails += [f'missing design of ID: {d_id}']
# check all recorded designs have matching bricks (at least via alts)
- for design_id, design in self.designs.items():
- if not [p for p in self.bricks.values()
- if p.design_id in design.all_ids]:
- fails += [f'missing bricks for design of ID: {design_id}']
+ bricked_designs = set(b.design_id for b in self.bricks.values())
+ for design in [v for k, v in self.designs.items()
+ if (k not in bricked_designs)
+ and not [id_ for id_ in v.all_ids
+ if id_ in bricked_designs]]:
+ fails += [f'missing bricks for design of ID: {design.id_}']
# check all bricks' colors are recorded
for color_id in [v.color_id for v in self.bricks.values()