def test_simple_choose_n_farthest_points_with_a_starting_point(): point_set = [[0, 1], [0, 0], [1, 0], [1, 1]] i = 0 for point in point_set: # The iteration starts with the given starting point sub_set = gudhi.choose_n_farthest_points( points=point_set, nb_points=1, starting_point=i ) assert sub_set[0] == point_set[i] i = i + 1 # The iteration finds then the farthest sub_set = gudhi.choose_n_farthest_points( points=point_set, nb_points=2, starting_point=1 ) assert sub_set[1] == point_set[3] sub_set = gudhi.choose_n_farthest_points( points=point_set, nb_points=2, starting_point=3 ) assert sub_set[1] == point_set[1] sub_set = gudhi.choose_n_farthest_points( points=point_set, nb_points=2, starting_point=0 ) assert sub_set[1] == point_set[2] sub_set = gudhi.choose_n_farthest_points( points=point_set, nb_points=2, starting_point=2 ) assert sub_set[1] == point_set[0] # Test the limits assert ( gudhi.choose_n_farthest_points(points=[], nb_points=0, starting_point=0) == [] ) assert ( gudhi.choose_n_farthest_points(points=[], nb_points=1, starting_point=0) == [] ) assert ( gudhi.choose_n_farthest_points(points=[], nb_points=0, starting_point=1) == [] ) assert ( gudhi.choose_n_farthest_points(points=[], nb_points=1, starting_point=1) == [] ) # From off file test for i in range(0, 7): assert ( len( gudhi.choose_n_farthest_points( off_file="subsample.off", nb_points=i, starting_point=i ) ) == i )
def test_simple_choose_n_farthest_points_randomed(): point_set = [[0, 1], [0, 0], [1, 0], [1, 1]] # Test the limits assert gudhi.choose_n_farthest_points(points=[], nb_points=0) == [] assert gudhi.choose_n_farthest_points(points=[], nb_points=1) == [] assert gudhi.choose_n_farthest_points(points=point_set, nb_points=0) == [] # Go furter than point set on purpose for iter in range(1, 10): sub_set = gudhi.choose_n_farthest_points(points=point_set, nb_points=iter) for sub in sub_set: found = False for point in point_set: if point == sub: found = True # Check each sub set point is existing in the point set assert found == True # From off file test for i in range(0, 7): assert (len( gudhi.choose_n_farthest_points(off_file="subsample.off", nb_points=i)) == i)