catch_warnings blocks more robust

Explicitely calling clean_warning_registry before with block.
Fix for #3494 
Maybe, I am out of context.
Are you sure that it's still [order dependant](https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/utils/testing.py#L158)?