def test_integration_nonperfect_linear(): X, y = data_gen(nrows=100, Non_perfect=True) X_train, X_test, y_train, y_test = train_test_split(X, y) scores = cross_validation(lm(), X=X_train, y=y_train, shuffle=False) summary = summary_cv(scores) assert summary['mean'] < 1 and summary['median'] < 1 and summary[ 'sd'] > 0, 'Non-perfect linear relation test does not give correct summary'
def test_integration_nonperfect_linear(): X, y = data_gen(nrows=100, Non_perfect=True) X_train, X_test, y_train, y_test = train_test_split(X, y) scores = cross_validation(lm(), X=X_train, y=y_train, shuffle=False) summary = summary_cv(scores) assert summary['mean'] < 1 and summary['median'] < 1 and summary[ 'sd'] > 0, 'Non-perfect linear relation test does not give correct summary'
def test_sd_is_float(): assert isinstance(summary_cv(gen_summary())['sd'], float)
def test_output_length(): assert len(summary_cv(gen_summary())) == 3
def test_input_contains_over_1(): with pytest.raises(ValueError): summary_cv(scores=[0.96, 0.97, 1.98])
def test_zero_length_input(): with pytest.raises(TypeError): summary_cv(scores=[])
def test_input_as_tuple(): with pytest.raises(TypeError): summary_cv(scores=(0.96, 0.97, 0.98, 0.99))
def test_summary_cv_sd(): assert summary_cv(gen_summary())['sd'] == 0.009
def test_sd_is_float(): assert isinstance(summary_cv(gen_summary())['sd'], float)
def test_summary_cv(): assert summary_cv(gen_summary())['mean'] == 0.9666667 assert summary_cv(gen_summary())['sd'] == 0.01032796 assert summary_cv(gen_summary())['mode'] == 0.97 assert summary_cv(gen_summary())['median'] == 0.97
def test_is_float(): assert isinstance(summary_cv(gen_summary())['mean'], float) assert isinstance(summary_cv(gen_summary())['sd'], float) assert isinstance(summary_cv(gen_summary())['mode'], float) assert isinstance(summary_cv(gen_summary())['median'], float)
def test_input_contains_over_1(): with pytest.raises(ValueError('`scores` must be between 0 and 1.')): summary_cv(scores=[0.96, 0.97, 1.98])
def test_input_contains_negative(): with pytest.raises(ValueError('`scores` must be a nonnegative number.')): summary_cv(scores=[0.96, 0.97, -0.98])
def test_zero_length_input(): with pytest.raises(DimensionError('`scores` cannot be of length zero.')): summary_cv(scores=[])
def test_summary_cv_sd(): assert summary_cv(gen_summary())['sd'] == 0.009
def test_input_contains_string(): with pytest.raises(TypeError('Elements of `scores` must be numbers.')): summary_cv(scores=c(0.96, 0.97, "0.98"))
def test_input_as_dataframe(): with pytest.raises(TypeError): summary_cv(scores=pd.DataFrame( data={'cv_scores': [0.97, 0.96, 0.98, 0.97, 0.95, 0.97]}))
def test_summary_cv_median(): assert summary_cv(gen_summary())['median'] == 0.97
def test_input_as_tuple(): with pytest.raises(TypeError): summary_cv(scores=(0.96, 0.97, 0.98, 0.99))
def test_input_as_dataframe(): with pytest.raises(TypeError): summary_cv(scores=pd.DataFrame(data={'cv_scores': [0.97, 0.96, 0.98, 0.97, 0.95, 0.97]}))
def test_input_contains_string(): with pytest.raises(TypeError): summary_cv(scores=[0.96, 0.97, "0.98"])
def test_input_contains_string(): with pytest.raises(TypeError): summary_cv(scores=[0.96, 0.97, "0.98"])
def test_zero_length_input(): with pytest.raises(TypeError): summary_cv(scores=[])
def test_input_contains_negative(): with pytest.raises(ValueError): summary_cv(scores=[0.96, 0.97, -0.98])
def test_input_contains_negative(): with pytest.raises(ValueError): summary_cv(scores=[0.96, 0.97, -0.98])
def test_is_dict(): assert isinstance(summary_cv(gen_summary()), dict)
def test_input_contains_over_1(): with pytest.raises(ValueError): summary_cv(scores=[0.96, 0.97, 1.98])
def test_median_is_float(): assert isinstance(summary_cv(gen_summary())['median'], float)
def test_is_dict(): assert isinstance(summary_cv(gen_summary()), dict)
def test_summary_cv_median(): assert summary_cv(gen_summary())['median'] == 0.97
def test_output_length(): assert len(summary_cv(gen_summary())) == 3
def test_median_is_float(): assert isinstance(summary_cv(gen_summary())['median'], float)
def test_input_as_tuple(): with pytest.raises(TypeError('`scores` must be a list.')): summary_cv(scores=(0.96, 0.97, 0.98, 0.99))