def METHOD_NAME(
    dtype, alpha, algorithm, nrows, column_info, n_parts, client, delayed
):
    ncols, n_info = column_info
    X, y = make_regression(
        n_samples=nrows,
        n_features=ncols,
        n_informative=n_info,
        n_parts=n_parts,
        client=client,
        dtype=dtype,
    )
    elasticnet = ElasticNet(
        alpha=np.array([alpha]),
        fit_intercept=True,
        normalize=False,
        max_iter=1000,
        selection=algorithm,
        tol=1e-10,
        client=client,
    )
    elasticnet.fit(X, y)
    y_hat = elasticnet.predict(X, delayed=delayed)
    # based on differences with scikit-learn 0.22
    if alpha == 0.2:
        assert r2_score(y.compute(), y_hat.compute()) >= 0.96
    else:
        assert r2_score(y.compute(), y_hat.compute()) >= 0.80