def run_single_file(input_filename, min_len_nt, results_foldername, display_plots=False, print_to_console=True): coordinates, edges, faces, edge_length_vec, file_name, \ staple_name, singleXOs = ply_to_input( input_filename, results_foldername, min_len_nt) scaf_seq = [] # Using default scaffold sequence scaf_name = [] # Using default scaffold name full_file_name = DX_cage_design( # noqa: F841 coordinates, edges, faces, edge_length_vec, file_name, staple_name, singleXOs, scaf_seq, scaf_name, results_foldername, print_to_console=print_to_console) if display_plots: from matplotlib import pyplot as plt plt.show()
def test_unused_vertex_is_removed(self): coordinates, edges, faces, edge_length_vec, file_name, staple_name, \ singleXOs = ply_to_input("01_tetrahedron", '', min_len_nt=52) # Note there are 5 coordinates in the starting file: assert len(coordinates) == 4 assert len(faces) == 4 # Shouldn't have changed # Started as coordinates[4]: assert list(coordinates[3]) == [0.577350, 0.000000, -0.204124] # Started as [1, 2, 4] assert faces[3] == [1, 2, 3]
def test_arbitrary_face_is_correct(self): coordinates, edges, faces, edge_length_vec, file_name, staple_name, \ singleXOs = ply_to_input("01_tetrahedron", '', min_len_nt=52) assert faces[11] == [3, 9, 4]
def test_arbitrary_coordinate_is_correct(self): coordinates, edges, faces, edge_length_vec, file_name, staple_name, \ singleXOs = ply_to_input("01_tetrahedron", '', min_len_nt=52) assert list(coordinates[-5]) == [0.851000, -0.618000, -0.526000]
def test_list_lengths_are_correct(self): coordinates, edges, faces, edge_length_vec, file_name, staple_name, \ singleXOs = ply_to_input("05_icosahedron", '', min_len_nt=52) assert len(coordinates) == 12 assert len(faces) == 20
def test_plot_function_is_not_called_if_results_foldername_not_set( self, plotter_mock): ply_to_input("01_tetrahedron", results_foldername='i_am_defined') assert plotter_mock.call_count == 1
def test_single_xos_used_when_min_len_nt_is_long(self): coordinates, edges, faces, edge_length_vec, file_name, staple_name, \ singleXOs = ply_to_input("01_tetrahedron", '', min_len_nt=43) assert singleXOs == 1
def test_arbitrary_coordinate_is_correct(self): coordinates, edges, faces, edge_length_vec, file_name, staple_name, \ singleXOs = ply_to_input("01_tetrahedron", '', min_len_nt=52) assert list(coordinates[1]) == [-0.288675, -0.500000, -0.204124]