core/tests/util
Marc Khouri 72c35468b3 Remove asyncio.test_utils to fix tests in Docker/Python 3.7 (#12102)
The module `asyncio.test_utils` has been removed from Python in the 3.7 branch, because it was intended to be a private module for internal testing of asyncio. For more information, see the upstream bug report at https://bugs.python.org/issue32273 and the upstream PR at https://github.com/python/cpython/pull/4785.

For this commit, I have migrated the small amount of functionality that was being used from the `asyncio.test_utils` directly into the `RunThreadsafeTests` Class. To see the original `asyncio.test_utils.TestCase` class, which I pulled some functionality from, please see: https://github.com/python/cpython/blob/3.6/Lib/asyncio/test_utils.py#L440

Note: In addition to being broken in 3.7, this test case also seems to be broken in Python 3.6.4 when using Docker. This PR fixes the test when run in docker.

To reproduce: `./script/test_docker -- tests/util/test_async.py`
failing output (prior to this commit):

```
... trimmed ...
py36 runtests: PYTHONHASHSEED='3262989550'
py36 runtests: commands[0] | py.test --timeout=9 --duration=10 --cov --cov-report= tests/util/test_async.py
Test session starts (platform: linux, Python 3.6.4, pytest 3.3.1, pytest-sugar 0.9.0)
rootdir: /usr/src/app, inifile: setup.cfg
plugins: timeout-1.2.1, sugar-0.9.0, cov-2.5.1, aiohttp-0.3.0
timeout: 9.0s method: signal

―――――――――――――――――― ERROR collecting tests/util/test_async.py ――――――――――――――――――――――――
ImportError while importing test module '/usr/src/app/tests/util/test_async.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
tests/util/test_async.py:3: in <module>
from asyncio import test_utils
/usr/local/lib/python3.6/asyncio/test_utils.py:36: in <module>
from test import support
E ImportError: cannot import name 'support'
```
2018-02-02 14:59:05 +00:00
..
__init__.py Fix PEP257 issues 2016-03-09 11:15:04 +01:00
test_async.py Remove asyncio.test_utils to fix tests in Docker/Python 3.7 (#12102) 2018-02-02 14:59:05 +00:00
test_color.py make RGB values consistent as int. fixes #10766 (#10782) 2017-11-27 11:31:35 +01:00
test_distance.py Spelling fixes (#12041) 2018-01-29 23:37:19 +01:00
test_dt.py assertEquals is deprecated (#7777) 2017-05-25 22:21:22 -07:00
test_init.py Unit tests to improve core coverage (#9659) 2017-10-02 20:25:04 -07:00
test_location.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
test_logging.py Unit tests to improve core coverage (#9659) 2017-10-02 20:25:04 -07:00
test_package.py Fix check for running inside venv (#8481) 2017-07-15 07:25:02 -07:00
test_unit_system.py Entity and climate: do not convert temperature unnecessary (#4522) 2016-11-22 17:38:04 -08:00
test_yaml.py Spelling fixes (#11940) 2018-01-27 11:58:27 -08:00