def test_check_point_clouds_value_err_inf(): """Cases in which part of the input is infinite and we throw a ValueError.""" ex = CreateInputs( n_samples, n_1, n_2, n_samples_extra, n_1_extra, n_2_extra).\ insert_inf() # Check that, by default, np.inf is only accepted when distance_matrices # is True. # 1) Array input with pytest.raises(ValueError): check_point_clouds(ex.X_rectang) # 2) List input with pytest.raises(ValueError): check_point_clouds(ex.X_list_rectang) # Check that we error if we explicitly set force_all_finite to True # 1) Array input with pytest.raises(ValueError): check_point_clouds(ex.X, distance_matrices=True, force_all_finite=True) # 2) List input with pytest.raises(ValueError): check_point_clouds(ex.X_list, distance_matrices=True, force_all_finite=True)
def test_check_point_clouds_warn_finite(): """Cases in which the input is finite but we throw warnings.""" ex = CreateInputs(n_samples, n_1, n_2, n_samples_extra, n_1_extra, n_2_extra) # Check that we throw warnings when arrays are square and distance_matrices # is False # 1) Array input with pytest.warns(DataDimensionalityWarning): check_point_clouds(ex.X) # 2) List input with pytest.warns(DataDimensionalityWarning): check_point_clouds(ex.X_list)
def test_check_point_clouds_regular_inf(): """Cases in which part of the input is infinite and no warnings or errors should be thrown by check_point_clouds.""" ex = CreateInputs( n_samples, n_1, n_2, n_samples_extra, n_1_extra, n_2_extra).\ insert_inf() check_point_clouds(ex.X, distance_matrices=True) check_point_clouds(ex.X_list, distance_matrices=True) check_point_clouds(ex.X_rectang, force_all_finite=False) check_point_clouds(ex.X_list_rectang, force_all_finite=False)
def test_check_point_clouds_value_err_finite(): """Cases in which the input is finite but we throw a ValueError.""" ex = CreateInputs(n_samples, n_1, n_2, n_samples_extra, n_1_extra, n_2_extra) # Check that we error on 1d array input with pytest.raises(ValueError): check_point_clouds(np.asarray(ex.X_list_tot, dtype=object)) # Check that we error on 2d array input with pytest.raises(ValueError): check_point_clouds(ex.X[0]) # Check that we throw errors when arrays are not square and # distance_matrices is True. # 1) Array input with pytest.raises(ValueError): check_point_clouds(ex.X_rectang, distance_matrices=True) # 2) List input with pytest.raises(ValueError): check_point_clouds(ex.X_list_rectang, distance_matrices=True)
def test_check_point_clouds_value_err_nan(force_all_finite): """Cases in which part of the input is NaN and we throw a ValueError.""" ex = CreateInputs( n_samples, n_1, n_2, n_samples_extra, n_1_extra, n_2_extra).\ insert_nan() # Check that we error when force_all_finite is True or False # 1) Array input with pytest.raises(ValueError): check_point_clouds(ex.X, distance_matrices=True, force_all_finite=force_all_finite) with pytest.raises(ValueError): check_point_clouds(ex.X_rectang, force_all_finite=force_all_finite) # 2) List input with pytest.raises(ValueError): check_point_clouds(ex.X_list, distance_matrices=True, force_all_finite=force_all_finite) with pytest.raises(ValueError): check_point_clouds(ex.X_list_rectang, force_all_finite=force_all_finite)
def test_check_point_clouds_regular_finite(): """Cases in which the input is finite and no warnings or errors should be thrown by check_point_clouds.""" ex = CreateInputs(n_samples, n_1, n_2, n_samples_extra, n_1_extra, n_2_extra) check_point_clouds(ex.X_rectang) check_point_clouds(ex.X_list_rectang) check_point_clouds(ex.X_list_rectang_diff_rows) check_point_clouds(ex.X, distance_matrices=True) check_point_clouds(ex.X_list, distance_matrices=True) check_point_clouds(ex.X_list_tot, distance_matrices=True)