Refactor all require decorators to use skipUnless when possible
# What does this PR do?

I was refactoring the Accelerate tests today and I noticed we use `if .. else..` as a conditional for skipping tests based on imports. Unittest has `skipUnless` and `skipIf`, letting us simplify those decorators to be one line. 

E.g.:

```python
    if not _run_slow_tests:
        return unittest.skip("test is slow")(test_case)
    else:
        return test_case
```
Can be:
```python
    return unittest.skipUnless(_run_slow_tests, "test is slow")(test_case)
```

(Adding you as a reviewer for this Sylvain, unsure who else should be added)
_The documentation is not available anymore as the PR was closed or merged._<|||||>Thank you 🚀 for this PR, and also for pinning me so that I can learn!