def create_new_network(network, box_size, random): number_of_square = box_size * box_size for antenna in range(number_of_square): if can_antenna_be_turned_on(antenna, network, box_size) and _flip_coin(random): network = turn_on_antenna(antenna, network) else: network = turn_off_antenna(antenna, network) return network
def test_can_antenna_be_turned_on(self): # □-□-□-□-■ # □-□-□-□-□ # □-□-■-□-□ # □-□-□-□-■ # □-□-□-□-□ network = create_network([4, 12, 20]) assert can_antenna_be_turned_on(0, network, 5) assert can_antenna_be_turned_on(1, network, 5) assert can_antenna_be_turned_on(5, network, 5) assert can_antenna_be_turned_on(19, network, 5) assert not can_antenna_be_turned_on(3, network, 5) assert not can_antenna_be_turned_on(7, network, 5) assert not can_antenna_be_turned_on(11, network, 5) assert not can_antenna_be_turned_on(13, network, 5) assert not can_antenna_be_turned_on(17, network, 5)