Co-authored-by: Thomas J. Fan <thomasjpfan@gmail.com>
Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
Co-authored-by: Jérémie du Boisberranger <jeremiedbb@users.noreply.github.com>
* CLN use pytest raises ctxt manager for class weights & estimators [skip ci]
* CLN use pytest raises ctxt manager for multiclass test
* CLN use pytest warns in estimator checks test
* CLN use pytest raises ctxt manager for random test
* CLN use pytest raises ctxt manager for sparsefuncs test
* CLN use pytest raises ctxt manager for testing utils tests
* CLN use pytest raises ctxt manager for utils tests
* CLN use pytest raises ctxt manager for validation tests
* revert test_estimator_check.py to upstream master
Previously error messages for mismatches parameters on function/method
signatures and docstrings were not explicit or user-friendly. This
changes provides a more explicit error message and in addition notifies
the relation of missing/mismatching parameters from signature to
docstring and from docstring to signature.
* start work on separating instance-level tests
* minor refactoring / fixes to work without tags
* add clone into check_supervised_y_2d estimator check (which made other checks fail)
* remove duplicate check_estimator_unfitted assert
* add issue reference to whatsnew entry
* added some clones, minor fixes from vene's review
* rename estimator arg to estimator_org to make a visible distinction before and after cloning.
* more renaming for more explicit clones
* org -> orig
* allclose, fix orig stuff
* don't use set_testing_parameters in the checks!
* minor fixes for allclose
* fix some test, add more tests on classes
* added the test using pickles.
* move assert_almost_equal_dense_sparse to utils.testing, rename to assert_allclose_sparse_dense, test it
* make assert_allclose_dense_sparse more stringent
* more allclose fixes
* run test_check_estimator on all estimators
* rename set_testing_parameters to set_checking_parameters so nose doesn't think it's a tests (and I don't want to import stuff from nose as we want to remove it)
* fix in set_checking_parameters so that common tests pass
* more fixes to assert_allclose_dense_sparse
* rename alg to clusterer, don't scream even though I really want to
* ok this is not a pretty strict test that runs check_estimator with and without fitting on an instance. I also check if ``fit`` is called on the instance that is passed.
* simplify test as they didn't help at all
* it works!!! omfg
* run check_estimator clone test only on one of the configs, don't run locally by default
* Add `slow_test` decorator and documentation
* run test_check_estimator only on some estimators
* fix diags in test for older scipy
* fix pep8 and shorten
* use joblib.hash for inequality check because the pickle state machine is weird
* Remove Python 2.6 support
Some details about some slightly orthogonal changes:
* Note about cheking safely for nan is likely not valid any more (commit
introducing it is c80ca91b)
* scipy.linalg.qr econ parameter removed since scipy 0.9 in favour of
mode='economic'
* Remove unnecessary libgfortran in conda create command
* Putative fix by setting the random seed
* Revert unintended change
* Reinstate previous logic for checking for NaNs
* Reinstate change in error message
Error messages from Python 2.7 assertRegexp does not contain the
function name, in contrast with Python 3 assertRegex
* use less nose.tools import to simplify future transition to activly developing test suites/runners
* assert_equal -> assert_array_equal in test_feature_hasher_pairs_with_string_values
and one missed ImportError that should be replaced with AttributeError
* test for py2.6 compat with except AttributeError
* fix importing of SkipTest
* force using nose in python2.6 for now
* there was no assert_dict_equal in py2.6. but we can use assert_equal
although failed test will look a little bit ugly
* remove nose imports from doc/datasets
The LDA accronym for Linear Discriminant Analysis is ambiguous
because of the newly introduced Latent Dirichlet Allocation model.
We therefore deprecate the sklearn.lda.LDA and sklearn.lda.QDA
in favor of explicit names.