def test_block_batch_replace(self): t = Template() for x in xrange(10): t.add(Block(5, posx=x)) t.add(Block(431, posy=x)) t.add(Block(432, posx=3, posy=3, posz=3)) assert t.num_blocks() == 21 oranges = len(t.get_all_blocks(color='orange')) t.replace({'color': 'orange'}, {'color': 'blue'}) blues = t.get_all_blocks(color='blue') assert oranges == len(blues)
def test_save_new_data(self): saved_name = tpl_dir + 'generate.smtpl' t1 = Template() b1 = Block.from_itemname('Activation Module') b2 = Block(409, posy=1) t1.connect_blocks(b1, b2) t1.add(b1) t1.add(b2) t1.save(saved_name) t2 = Template.fromSMTPL(saved_name) os.remove(saved_name) assert t1.num_blocks() == t2.num_blocks() assert t1.num_connections() == t2.num_connections()
def test_block_query(self): t = Template() for x in xrange(10): t.add(Block(5, posx=x)) t.add(Block(431, posy=x)) t.add(Block(432, posx=3, posy=3, posz=3)) assert t.num_blocks() == 21 orange_blocks = t.get_all_blocks(color='orange') assert len(orange_blocks) == 11 orange_hulls = t.get_all_blocks(color='orange', shape=shape('block')) print[b.shape for b in orange_hulls] assert len(orange_hulls) == 10 orange_wedges = t.get_all_blocks(color='orange', shape=shape('wedge')) assert len(orange_wedges) == 1
def test_init(self): t = Template() t.add(Block(5)) t.add(Block(5, posy=1)) assert t.num_blocks() == 2