final OrdinaryLeastSquaresRegression olsRegression = new OrdinaryLeastSquaresRegression();
try {
wlsRegression.regress(x, (double[]) null, yNoIntercept, false);
Assert.fail();
} catch (final IllegalArgumentException e) {
LeastSquaresRegressionResult wls = wlsRegression.regress(x, w1, yIntercept, true);
LeastSquaresRegressionResult ols = olsRegression.regress(x, yIntercept, true);
assertRegressions(n, 4, wls, ols);
wls = wlsRegression.regress(x, w1, yNoIntercept, false);
ols = olsRegression.regress(x, yNoIntercept, false);
assertRegressions(n, 3, wls, ols);
wls = wlsRegression.regress(x, w2, yIntercept, true);
ols = olsRegression.regress(x, yIntercept, true);
assertRegressions(n, 4, wls, ols);
wls = wlsRegression.regress(x, w2, yNoIntercept, false);
ols = olsRegression.regress(x, yNoIntercept, false);
assertRegressions(n, 3, wls, ols);