From 2af984917e7cf3ee649ed3a531a872e7aaeba713 Mon Sep 17 00:00:00 2001
From: Paulus Schoutsen <balloob@gmail.com>
Date: Sun, 3 May 2020 11:27:19 -0700
Subject: [PATCH] Use asynctest-mock in most places (#35109)

* Use asynctest-mock in most places

* Fix broken patch in pilight
---
 tests/auth/mfa_modules/test_notify.py         |  2 +-
 tests/auth/mfa_modules/test_totp.py           |  2 +-
 tests/auth/test_init.py                       |  2 +-
 tests/components/abode/common.py              |  3 +--
 .../abode/test_alarm_control_panel.py         |  4 ++--
 tests/components/abode/test_camera.py         |  4 ++--
 tests/components/abode/test_config_flow.py    |  3 +--
 tests/components/abode/test_cover.py          |  4 ++--
 tests/components/abode/test_init.py           |  4 ++--
 tests/components/abode/test_light.py          |  4 ++--
 tests/components/abode/test_lock.py           |  4 ++--
 tests/components/abode/test_switch.py         |  4 ++--
 tests/components/androidtv/patchers.py        |  2 +-
 .../components/androidtv/test_media_player.py |  3 ++-
 tests/components/api/test_init.py             |  2 +-
 tests/components/apns/test_notify.py          |  2 +-
 tests/components/apprise/test_notify.py       |  4 ++--
 tests/components/aprs/test_device_tracker.py  |  3 +--
 tests/components/arlo/test_sensor.py          |  5 ++--
 tests/components/atag/test_config_flow.py     |  4 +---
 tests/components/august/test_gateway.py       |  4 +---
 tests/components/auth/test_init.py            |  2 +-
 tests/components/auth/test_login_flow.py      |  3 +--
 .../automation/test_homeassistant.py          |  4 +---
 tests/components/automation/test_init.py      |  2 +-
 .../automation/test_numeric_state.py          |  2 +-
 tests/components/automation/test_state.py     |  2 +-
 tests/components/automation/test_sun.py       |  2 +-
 tests/components/automation/test_time.py      |  2 +-
 tests/components/axis/test_init.py            |  4 +---
 tests/components/axis/test_switch.py          |  4 ++--
 .../binary_sensor/test_device_condition.py    |  2 +-
 .../test_device_tracker.py                    |  2 +-
 tests/components/bom/test_sensor.py           |  2 +-
 tests/components/broadlink/test_init.py       |  3 ++-
 tests/components/caldav/test_calendar.py      |  3 +--
 tests/components/camera/test_init.py          |  3 +--
 tests/components/canary/test_init.py          |  2 +-
 tests/components/canary/test_sensor.py        |  2 +-
 .../cast/test_home_assistant_cast.py          |  3 +--
 tests/components/climate/test_init.py         |  2 +-
 tests/components/cloud/conftest.py            |  4 ++--
 tests/components/cloud/test_binary_sensor.py  |  4 +---
 tests/components/cloud/test_google_config.py  |  4 +---
 tests/components/cloud/test_prefs.py          |  4 ++--
 tests/components/coinmarketcap/test_sensor.py |  2 +-
 tests/components/command_line/test_notify.py  |  2 +-
 tests/components/command_line/test_sensor.py  |  2 +-
 tests/components/config/test_group.py         |  3 +--
 tests/components/config/test_script.py        |  4 ++--
 tests/components/config/test_zwave.py         |  2 +-
 tests/components/daikin/test_config_flow.py   |  2 +-
 tests/components/darksky/test_sensor.py       |  2 +-
 tests/components/darksky/test_weather.py      |  2 +-
 tests/components/default_config/test_init.py  |  4 ++--
 tests/components/demo/test_camera.py          |  4 ++--
 tests/components/demo/test_geo_location.py    |  2 +-
 tests/components/demo/test_notify.py          |  2 +-
 .../components/denonavr/test_media_player.py  |  4 ++--
 tests/components/derivative/test_sensor.py    |  3 ++-
 tests/components/dialogflow/test_init.py      |  3 ++-
 tests/components/dsmr/test_sensor.py          |  2 +-
 tests/components/emulated_hue/test_hue_api.py |  2 +-
 tests/components/emulated_hue/test_init.py    |  4 ++--
 tests/components/emulated_hue/test_upnp.py    |  2 +-
 .../components/emulated_roku/test_binding.py  |  4 +---
 tests/components/emulated_roku/test_init.py   |  4 +---
 .../facebox/test_image_processing.py          |  4 ++--
 tests/components/fail2ban/test_sensor.py      |  2 +-
 tests/components/feedreader/test_init.py      |  2 +-
 tests/components/ffmpeg/test_init.py          |  3 +--
 tests/components/fido/test_sensor.py          |  2 +-
 tests/components/file/test_notify.py          |  2 +-
 tests/components/file/test_sensor.py          |  2 +-
 tests/components/filter/test_sensor.py        |  2 +-
 tests/components/folder_watcher/test_init.py  |  3 ++-
 tests/components/foobot/test_sensor.py        |  2 +-
 tests/components/freebox/conftest.py          |  4 ++--
 tests/components/fritzbox/__init__.py         |  4 ++--
 tests/components/fritzbox/conftest.py         |  4 ++--
 .../components/fritzbox/test_binary_sensor.py |  2 +-
 tests/components/fritzbox/test_climate.py     |  2 +-
 tests/components/fritzbox/test_config_flow.py |  3 ++-
 tests/components/fritzbox/test_init.py        |  3 +--
 tests/components/fritzbox/test_sensor.py      |  2 +-
 tests/components/fritzbox/test_switch.py      |  2 +-
 .../garmin_connect/test_config_flow.py        |  3 +--
 tests/components/gdacs/__init__.py            |  2 +-
 .../components/geo_rss_events/test_sensor.py  |  2 +-
 tests/components/geofency/test_init.py        |  6 ++---
 tests/components/geonetnz_quakes/__init__.py  |  2 +-
 tests/components/geonetnz_volcano/__init__.py |  2 +-
 tests/components/google/conftest.py           |  4 ++--
 tests/components/google/test_calendar.py      |  2 +-
 tests/components/google/test_init.py          |  4 ++--
 .../components/google_assistant/test_trait.py |  3 +--
 tests/components/google_translate/test_tts.py |  2 +-
 tests/components/google_wifi/test_sensor.py   |  2 +-
 tests/components/gpslogger/test_init.py       |  4 ++--
 tests/components/graphite/test_init.py        |  2 +-
 tests/components/group/test_init.py           |  2 +-
 tests/components/group/test_light.py          |  3 +--
 tests/components/group/test_notify.py         |  2 +-
 .../components/group/test_reproduce_state.py  |  3 ++-
 tests/components/hangouts/test_config_flow.py |  4 ++--
 tests/components/hassio/test_http.py          |  3 ++-
 tests/components/hddtemp/test_sensor.py       |  2 +-
 .../here_travel_time/test_sensor.py           |  2 +-
 tests/components/history/test_init.py         |  2 +-
 tests/components/history_stats/test_sensor.py |  2 +-
 tests/components/homeassistant/test_scene.py  |  3 +--
 tests/components/homekit/common.py            |  2 +-
 tests/components/homekit/conftest.py          |  4 ++--
 tests/components/homekit/test_accessories.py  |  2 +-
 .../homekit/test_get_accessories.py           |  4 ++--
 tests/components/homekit/test_homekit.py      |  3 +--
 tests/components/homekit/test_type_fans.py    |  2 +-
 .../homekit/test_type_thermostats.py          |  2 +-
 tests/components/html5/test_notify.py         |  3 ++-
 tests/components/http/test_auth.py            |  3 ++-
 tests/components/http/test_ban.py             |  3 +--
 tests/components/http/test_cors.py            |  3 ++-
 tests/components/http/test_data_validator.py  |  4 ++--
 tests/components/http/test_init.py            |  3 ++-
 tests/components/http/test_view.py            |  4 +---
 tests/components/hue/conftest.py              |  3 ++-
 tests/components/hue/test_config_flow.py      |  3 +--
 tests/components/hue/test_light.py            |  3 ++-
 tests/components/hue/test_sensor_base.py      |  3 ++-
 tests/components/icloud/conftest.py           |  4 ++--
 tests/components/icloud/test_config_flow.py   |  3 +--
 tests/components/ifttt/test_init.py           |  4 ++--
 .../ign_sismologia/test_geo_location.py       |  2 +-
 .../components/image_processing/test_init.py  |  4 +---
 tests/components/input_boolean/test_init.py   |  2 +-
 tests/components/input_datetime/test_init.py  |  2 +-
 tests/components/input_number/test_init.py    |  5 ++--
 tests/components/input_select/test_init.py    |  5 ++--
 tests/components/input_text/test_init.py      |  5 ++--
 tests/components/integration/test_sensor.py   |  3 ++-
 .../islamic_prayer_times/test_config_flow.py  |  3 +--
 .../islamic_prayer_times/test_init.py         |  2 +-
 .../islamic_prayer_times/test_sensor.py       |  3 +--
 tests/components/jewish_calendar/__init__.py  |  3 ++-
 tests/components/kira/test_init.py            |  2 +-
 tests/components/kira/test_remote.py          |  2 +-
 tests/components/kira/test_sensor.py          |  2 +-
 tests/components/lastfm/test_sensor.py        |  4 ++--
 .../components/light/test_device_condition.py |  2 +-
 tests/components/light/test_init.py           |  2 +-
 tests/components/linky/conftest.py            |  4 ++--
 tests/components/linky/test_config_flow.py    |  3 +--
 tests/components/locative/test_init.py        |  4 ++--
 tests/components/lovelace/test_dashboard.py   |  3 +--
 tests/components/luftdaten/test_init.py       |  4 ++--
 tests/components/mailgun/test_init.py         |  3 ++-
 .../manual/test_alarm_control_panel.py        |  2 +-
 .../manual_mqtt/test_alarm_control_panel.py   |  2 +-
 tests/components/melissa/test_climate.py      |  3 +--
 tests/components/meteo_france/conftest.py     |  4 ++--
 .../meteo_france/test_config_flow.py          |  3 +--
 tests/components/mfi/test_sensor.py           |  2 +-
 tests/components/mfi/test_switch.py           |  2 +-
 tests/components/mhz19/test_sensor.py         |  2 +-
 tests/components/mikrotik/test_config_flow.py |  2 +-
 tests/components/minio/test_minio.py          |  3 +--
 tests/components/mochad/test_light.py         |  2 +-
 tests/components/mochad/test_switch.py        |  2 +-
 tests/components/moon/test_sensor.py          |  2 +-
 tests/components/mqtt/test_binary_sensor.py   |  2 +-
 tests/components/mqtt/test_climate.py         | 22 ++++--------------
 tests/components/mqtt/test_common.py          |  2 +-
 tests/components/mqtt/test_discovery.py       |  3 +--
 tests/components/mqtt/test_sensor.py          |  2 +-
 .../components/mqtt_eventstream/test_init.py  |  2 +-
 tests/components/mqtt_room/test_sensor.py     |  2 +-
 .../components/mqtt_statestream/test_init.py  |  3 +--
 tests/components/neato/test_config_flow.py    |  3 +--
 tests/components/neato/test_init.py           |  3 +--
 tests/components/nextbus/test_sensor.py       |  2 +-
 .../nsw_fuel_station/test_sensor.py           |  2 +-
 .../test_geo_location.py                      |  3 +--
 tests/components/nuheat/test_init.py          |  4 ++--
 tests/components/nws/conftest.py              |  4 +---
 tests/components/onboarding/test_views.py     |  2 +-
 tests/components/openerz/test_sensor.py       |  4 ++--
 tests/components/owntracks/test_helper.py     |  4 ++--
 .../panasonic_viera/test_config_flow.py       |  4 +---
 tests/components/panasonic_viera/test_init.py |  3 +--
 tests/components/panel_custom/test_init.py    |  4 ++--
 tests/components/pi_hole/test_init.py         |  4 +---
 tests/components/pilight/test_init.py         | 10 ++++----
 tests/components/ptvsd/test_ptvsd.py          |  4 +---
 tests/components/pushbullet/test_notify.py    |  2 +-
 .../pvpc_hourly_pricing/test_config_flow.py   |  2 +-
 .../pvpc_hourly_pricing/test_sensor.py        |  2 +-
 tests/components/python_script/test_init.py   |  2 +-
 .../qld_bushfire/test_geo_location.py         |  2 +-
 tests/components/radarr/test_sensor.py        | 19 +++++++--------
 tests/components/random/test_binary_sensor.py |  2 +-
 tests/components/recorder/test_init.py        |  2 +-
 tests/components/recorder/test_migrate.py     |  5 ++--
 tests/components/recorder/test_purge.py       |  2 +-
 tests/components/recorder/test_util.py        |  3 +--
 tests/components/reddit/test_sensor.py        |  2 +-
 .../components/remember_the_milk/test_init.py |  2 +-
 tests/components/rest/test_binary_sensor.py   |  2 +-
 tests/components/rest/test_sensor.py          |  2 +-
 tests/components/rflink/test_binary_sensor.py |  2 +-
 tests/components/rflink/test_init.py          |  4 ++--
 tests/components/ring/common.py               |  3 +--
 tests/components/ring/test_binary_sensor.py   |  3 ++-
 tests/components/script/test_init.py          |  2 +-
 .../signal_messenger/test_notify.py           |  3 ++-
 .../components/simplisafe/test_config_flow.py |  3 +--
 .../components/sleepiq/test_binary_sensor.py  |  2 +-
 tests/components/sleepiq/test_init.py         |  2 +-
 tests/components/sleepiq/test_sensor.py       |  2 +-
 tests/components/smhi/common.py               |  2 +-
 tests/components/smhi/test_init.py            |  4 ++--
 tests/components/smtp/test_notify.py          |  2 +-
 .../components/solaredge/test_config_flow.py  |  3 +--
 tests/components/soma/test_config_flow.py     |  3 +--
 tests/components/somfy/test_config_flow.py    |  2 +-
 tests/components/sonarr/test_sensor.py        | 23 ++++++++++---------
 .../soundtouch/test_media_player.py           |  4 +---
 tests/components/spotify/test_config_flow.py  |  3 +--
 tests/components/statistics/test_sensor.py    |  2 +-
 tests/components/stream/test_init.py          |  4 +---
 tests/components/stream/test_recorder.py      |  2 +-
 tests/components/sun/test_init.py             |  3 ++-
 .../switch/test_device_condition.py           |  2 +-
 tests/components/synology_dsm/conftest.py     |  4 ++--
 .../synology_dsm/test_config_flow.py          |  2 +-
 tests/components/system_log/test_init.py      |  3 ++-
 tests/components/tcp/test_binary_sensor.py    |  2 +-
 tests/components/tcp/test_sensor.py           |  2 +-
 tests/components/time_date/test_sensor.py     |  2 +-
 tests/components/timer/test_init.py           |  2 +-
 tests/components/tod/test_binary_sensor.py    |  2 +-
 tests/components/toon/test_config_flow.py     |  3 +--
 .../totalconnect/test_config_flow.py          |  3 +--
 tests/components/tplink/test_common.py        |  3 ++-
 tests/components/tplink/test_light.py         |  3 ++-
 tests/components/traccar/test_init.py         |  4 ++--
 tests/components/tradfri/test_light.py        |  2 +-
 .../transmission/test_config_flow.py          |  2 +-
 tests/components/transport_nsw/test_sensor.py |  2 +-
 tests/components/trend/test_binary_sensor.py  |  2 +-
 tests/components/tts/test_init.py             |  2 +-
 tests/components/twilio/test_init.py          |  4 ++--
 tests/components/twitch/test_twitch.py        |  4 ++--
 tests/components/uptime/test_sensor.py        |  2 +-
 .../test_geo_location.py                      |  2 +-
 tests/components/utility_meter/test_init.py   |  3 ++-
 tests/components/utility_meter/test_sensor.py |  2 +-
 tests/components/velbus/test_config_flow.py   |  3 +--
 tests/components/vera/test_binary_sensor.py   |  4 ++--
 tests/components/vera/test_climate.py         |  4 ++--
 tests/components/vera/test_config_flow.py     |  3 +--
 tests/components/vera/test_cover.py           |  4 ++--
 tests/components/vera/test_light.py           |  4 ++--
 tests/components/vera/test_lock.py            |  4 ++--
 tests/components/vera/test_scene.py           |  4 ++--
 tests/components/vera/test_sensor.py          |  3 ++-
 tests/components/vera/test_switch.py          |  4 ++--
 .../verisure/test_ethernet_status.py          |  3 ++-
 tests/components/verisure/test_lock.py        |  3 ++-
 tests/components/version/test_sensor.py       |  4 ++--
 tests/components/vesync/test_config_flow.py   |  3 +--
 tests/components/vizio/test_media_player.py   |  3 +--
 tests/components/vultr/test_binary_sensor.py  |  2 +-
 tests/components/vultr/test_init.py           |  2 +-
 tests/components/vultr/test_sensor.py         |  2 +-
 tests/components/vultr/test_switch.py         |  2 +-
 tests/components/wake_on_lan/test_switch.py   |  2 +-
 tests/components/webhook/test_init.py         |  4 ++--
 tests/components/webostv/test_media_player.py |  2 +-
 tests/components/websocket_api/test_init.py   |  4 ++--
 tests/components/withings/test_common.py      |  3 +--
 .../components/workday/test_binary_sensor.py  |  2 +-
 .../xiaomi_miio/test_config_flow.py           |  4 +---
 tests/components/yamaha/test_media_player.py  |  2 +-
 tests/components/yessssms/test_notify.py      |  3 ++-
 tests/components/yr/test_sensor.py            |  2 +-
 tests/components/zha/common.py                |  3 +--
 tests/components/zha/test_fan.py              |  4 ++--
 tests/components/zha/test_light.py            |  3 +--
 tests/components/zwave/conftest.py            |  3 +--
 tests/components/zwave/test_binary_sensor.py  |  2 +-
 tests/components/zwave/test_cover.py          |  3 +--
 tests/components/zwave/test_init.py           |  3 +--
 tests/components/zwave/test_light.py          |  7 +++---
 tests/components/zwave/test_lock.py           |  3 +--
 tests/components/zwave/test_node_entity.py    |  2 +-
 tests/components/zwave/test_switch.py         |  3 +--
 tests/helpers/test_check_config.py            |  2 +-
 tests/helpers/test_condition.py               |  4 ++--
 .../helpers/test_config_entry_oauth2_flow.py  |  2 +-
 tests/helpers/test_config_validation.py       |  3 ++-
 tests/helpers/test_deprecation.py             |  4 ++--
 tests/helpers/test_device_registry.py         |  2 +-
 tests/helpers/test_entity.py                  |  8 +++----
 tests/helpers/test_entity_registry.py         |  2 +-
 tests/helpers/test_event.py                   |  2 +-
 tests/helpers/test_integration_platform.py    |  3 +--
 tests/helpers/test_network.py                 |  4 ++--
 tests/helpers/test_state.py                   |  2 +-
 tests/helpers/test_sun.py                     |  3 ++-
 tests/helpers/test_template.py                |  3 ++-
 tests/mock/zwave.py                           |  4 ++--
 tests/scripts/test_auth.py                    |  3 +--
 tests/scripts/test_check_config.py            |  2 +-
 tests/scripts/test_init.py                    |  4 ++--
 tests/test_main.py                            |  4 ++--
 tests/util/test_async.py                      |  3 ++-
 tests/util/test_init.py                       |  3 ++-
 tests/util/test_json.py                       |  3 ++-
 tests/util/test_yaml.py                       |  2 +-
 319 files changed, 456 insertions(+), 522 deletions(-)

diff --git a/tests/auth/mfa_modules/test_notify.py b/tests/auth/mfa_modules/test_notify.py
index c79d76baf4f..65ee5d5d0c5 100644
--- a/tests/auth/mfa_modules/test_notify.py
+++ b/tests/auth/mfa_modules/test_notify.py
@@ -1,12 +1,12 @@
 """Test the HMAC-based One Time Password (MFA) auth module."""
 import asyncio
-from unittest.mock import patch
 
 from homeassistant import data_entry_flow
 from homeassistant.auth import auth_manager_from_config, models as auth_models
 from homeassistant.auth.mfa_modules import auth_mfa_module_from_config
 from homeassistant.components.notify import NOTIFY_SERVICE_SCHEMA
 
+from tests.async_mock import patch
 from tests.common import MockUser, async_mock_service
 
 MOCK_CODE = "123456"
diff --git a/tests/auth/mfa_modules/test_totp.py b/tests/auth/mfa_modules/test_totp.py
index d0a4f3cf3ac..b14b20297eb 100644
--- a/tests/auth/mfa_modules/test_totp.py
+++ b/tests/auth/mfa_modules/test_totp.py
@@ -1,11 +1,11 @@
 """Test the Time-based One Time Password (MFA) auth module."""
 import asyncio
-from unittest.mock import patch
 
 from homeassistant import data_entry_flow
 from homeassistant.auth import auth_manager_from_config, models as auth_models
 from homeassistant.auth.mfa_modules import auth_mfa_module_from_config
 
+from tests.async_mock import patch
 from tests.common import MockUser
 
 MOCK_CODE = "123456"
diff --git a/tests/auth/test_init.py b/tests/auth/test_init.py
index edcd01d51e1..f303a59179b 100644
--- a/tests/auth/test_init.py
+++ b/tests/auth/test_init.py
@@ -1,6 +1,5 @@
 """Tests for the Home Assistant auth module."""
 from datetime import timedelta
-from unittest.mock import Mock, patch
 
 import jwt
 import pytest
@@ -12,6 +11,7 @@ from homeassistant.auth.const import MFA_SESSION_EXPIRATION
 from homeassistant.core import callback
 from homeassistant.util import dt as dt_util
 
+from tests.async_mock import Mock, patch
 from tests.common import CLIENT_ID, MockUser, ensure_auth_manager_loaded, flush_store
 
 
diff --git a/tests/components/abode/common.py b/tests/components/abode/common.py
index aabc732daa2..157a5441bb1 100644
--- a/tests/components/abode/common.py
+++ b/tests/components/abode/common.py
@@ -1,10 +1,9 @@
 """Common methods used across tests for Abode."""
-from unittest.mock import patch
-
 from homeassistant.components.abode import DOMAIN as ABODE_DOMAIN
 from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/abode/test_alarm_control_panel.py b/tests/components/abode/test_alarm_control_panel.py
index ca546157c93..d64b211f304 100644
--- a/tests/components/abode/test_alarm_control_panel.py
+++ b/tests/components/abode/test_alarm_control_panel.py
@@ -1,6 +1,4 @@
 """Tests for the Abode alarm control panel device."""
-from unittest.mock import PropertyMock, patch
-
 import abodepy.helpers.constants as CONST
 
 from homeassistant.components.abode import ATTR_DEVICE_ID
@@ -19,6 +17,8 @@ from homeassistant.const import (
 
 from .common import setup_platform
 
+from tests.async_mock import PropertyMock, patch
+
 DEVICE_ID = "alarm_control_panel.abode_alarm"
 
 
diff --git a/tests/components/abode/test_camera.py b/tests/components/abode/test_camera.py
index 8b11671a456..0e843c59023 100644
--- a/tests/components/abode/test_camera.py
+++ b/tests/components/abode/test_camera.py
@@ -1,12 +1,12 @@
 """Tests for the Abode camera device."""
-from unittest.mock import patch
-
 from homeassistant.components.abode.const import DOMAIN as ABODE_DOMAIN
 from homeassistant.components.camera import DOMAIN as CAMERA_DOMAIN
 from homeassistant.const import ATTR_ENTITY_ID, STATE_IDLE
 
 from .common import setup_platform
 
+from tests.async_mock import patch
+
 
 async def test_entity_registry(hass):
     """Tests that the devices are registered in the entity registry."""
diff --git a/tests/components/abode/test_config_flow.py b/tests/components/abode/test_config_flow.py
index d9762296e70..01508d412a2 100644
--- a/tests/components/abode/test_config_flow.py
+++ b/tests/components/abode/test_config_flow.py
@@ -1,12 +1,11 @@
 """Tests for the Abode config flow."""
-from unittest.mock import patch
-
 from abodepy.exceptions import AbodeAuthenticationException
 
 from homeassistant import data_entry_flow
 from homeassistant.components.abode import config_flow
 from homeassistant.const import CONF_PASSWORD, CONF_USERNAME, HTTP_INTERNAL_SERVER_ERROR
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 CONF_POLLING = "polling"
diff --git a/tests/components/abode/test_cover.py b/tests/components/abode/test_cover.py
index bb1b8fceffb..b166ec5464a 100644
--- a/tests/components/abode/test_cover.py
+++ b/tests/components/abode/test_cover.py
@@ -1,6 +1,4 @@
 """Tests for the Abode cover device."""
-from unittest.mock import patch
-
 from homeassistant.components.abode import ATTR_DEVICE_ID
 from homeassistant.components.cover import DOMAIN as COVER_DOMAIN
 from homeassistant.const import (
@@ -13,6 +11,8 @@ from homeassistant.const import (
 
 from .common import setup_platform
 
+from tests.async_mock import patch
+
 DEVICE_ID = "cover.garage_door"
 
 
diff --git a/tests/components/abode/test_init.py b/tests/components/abode/test_init.py
index 3f73ccd77ce..1598e7bfa91 100644
--- a/tests/components/abode/test_init.py
+++ b/tests/components/abode/test_init.py
@@ -1,6 +1,4 @@
 """Tests for the Abode module."""
-from unittest.mock import patch
-
 from homeassistant.components.abode import (
     DOMAIN as ABODE_DOMAIN,
     SERVICE_CAPTURE_IMAGE,
@@ -11,6 +9,8 @@ from homeassistant.components.alarm_control_panel import DOMAIN as ALARM_DOMAIN
 
 from .common import setup_platform
 
+from tests.async_mock import patch
+
 
 async def test_change_settings(hass):
     """Test change_setting service."""
diff --git a/tests/components/abode/test_light.py b/tests/components/abode/test_light.py
index f0eee4b209b..6506746783c 100644
--- a/tests/components/abode/test_light.py
+++ b/tests/components/abode/test_light.py
@@ -1,6 +1,4 @@
 """Tests for the Abode light device."""
-from unittest.mock import patch
-
 from homeassistant.components.abode import ATTR_DEVICE_ID
 from homeassistant.components.light import (
     ATTR_BRIGHTNESS,
@@ -19,6 +17,8 @@ from homeassistant.const import (
 
 from .common import setup_platform
 
+from tests.async_mock import patch
+
 DEVICE_ID = "light.living_room_lamp"
 
 
diff --git a/tests/components/abode/test_lock.py b/tests/components/abode/test_lock.py
index 45e17861d33..6850eebe0ce 100644
--- a/tests/components/abode/test_lock.py
+++ b/tests/components/abode/test_lock.py
@@ -1,6 +1,4 @@
 """Tests for the Abode lock device."""
-from unittest.mock import patch
-
 from homeassistant.components.abode import ATTR_DEVICE_ID
 from homeassistant.components.lock import DOMAIN as LOCK_DOMAIN
 from homeassistant.const import (
@@ -13,6 +11,8 @@ from homeassistant.const import (
 
 from .common import setup_platform
 
+from tests.async_mock import patch
+
 DEVICE_ID = "lock.test_lock"
 
 
diff --git a/tests/components/abode/test_switch.py b/tests/components/abode/test_switch.py
index 3ec9648d87d..5c480b33225 100644
--- a/tests/components/abode/test_switch.py
+++ b/tests/components/abode/test_switch.py
@@ -1,6 +1,4 @@
 """Tests for the Abode switch device."""
-from unittest.mock import patch
-
 from homeassistant.components.abode import (
     DOMAIN as ABODE_DOMAIN,
     SERVICE_TRIGGER_AUTOMATION,
@@ -16,6 +14,8 @@ from homeassistant.const import (
 
 from .common import setup_platform
 
+from tests.async_mock import patch
+
 AUTOMATION_ID = "switch.test_automation"
 AUTOMATION_UID = "47fae27488f74f55b964a81a066c3a01"
 DEVICE_ID = "switch.test_switch"
diff --git a/tests/components/androidtv/patchers.py b/tests/components/androidtv/patchers.py
index c49b6ad11e9..85c80dd0b1c 100644
--- a/tests/components/androidtv/patchers.py
+++ b/tests/components/androidtv/patchers.py
@@ -1,6 +1,6 @@
 """Define patches used for androidtv tests."""
 
-from unittest.mock import mock_open, patch
+from tests.async_mock import mock_open, patch
 
 
 class AdbDeviceTcpFake:
diff --git a/tests/components/androidtv/test_media_player.py b/tests/components/androidtv/test_media_player.py
index c9f2c271000..fa4f6ffbed6 100644
--- a/tests/components/androidtv/test_media_player.py
+++ b/tests/components/androidtv/test_media_player.py
@@ -1,7 +1,6 @@
 """The tests for the androidtv platform."""
 import base64
 import logging
-from unittest.mock import patch
 
 from androidtv.exceptions import LockNotAcquiredException
 
@@ -41,6 +40,8 @@ from homeassistant.setup import async_setup_component
 
 from . import patchers
 
+from tests.async_mock import patch
+
 # Android TV device with Python ADB implementation
 CONFIG_ANDROIDTV_PYTHON_ADB = {
     DOMAIN: {
diff --git a/tests/components/api/test_init.py b/tests/components/api/test_init.py
index e73b65661c9..1c93158ec03 100644
--- a/tests/components/api/test_init.py
+++ b/tests/components/api/test_init.py
@@ -1,7 +1,6 @@
 """The tests for the Home Assistant API component."""
 # pylint: disable=protected-access
 import json
-from unittest.mock import patch
 
 from aiohttp import web
 import pytest
@@ -12,6 +11,7 @@ from homeassistant.bootstrap import DATA_LOGGING
 import homeassistant.core as ha
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
 from tests.common import async_mock_service
 
 
diff --git a/tests/components/apns/test_notify.py b/tests/components/apns/test_notify.py
index 61092899e24..5c69e19435e 100644
--- a/tests/components/apns/test_notify.py
+++ b/tests/components/apns/test_notify.py
@@ -1,7 +1,6 @@
 """The tests for the APNS component."""
 import io
 import unittest
-from unittest.mock import Mock, mock_open, patch
 
 from apns2.errors import Unregistered
 import yaml
@@ -11,6 +10,7 @@ import homeassistant.components.notify as notify
 from homeassistant.core import State
 from homeassistant.setup import setup_component
 
+from tests.async_mock import Mock, mock_open, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 CONFIG = {
diff --git a/tests/components/apprise/test_notify.py b/tests/components/apprise/test_notify.py
index 8135f4e8e2c..125971016cb 100644
--- a/tests/components/apprise/test_notify.py
+++ b/tests/components/apprise/test_notify.py
@@ -1,8 +1,8 @@
 """The tests for the apprise notification platform."""
-from unittest.mock import MagicMock, patch
-
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import MagicMock, patch
+
 BASE_COMPONENT = "notify"
 
 
diff --git a/tests/components/aprs/test_device_tracker.py b/tests/components/aprs/test_device_tracker.py
index dc0cf09f28d..95cdf4befec 100644
--- a/tests/components/aprs/test_device_tracker.py
+++ b/tests/components/aprs/test_device_tracker.py
@@ -1,11 +1,10 @@
 """Test APRS device tracker."""
-from unittest.mock import Mock, patch
-
 import aprslib
 
 import homeassistant.components.aprs.device_tracker as device_tracker
 from homeassistant.const import EVENT_HOMEASSISTANT_START
 
+from tests.async_mock import Mock, patch
 from tests.common import get_test_home_assistant
 
 DEFAULT_PORT = 14580
diff --git a/tests/components/arlo/test_sensor.py b/tests/components/arlo/test_sensor.py
index 15b85959ff0..e75db4a57dd 100644
--- a/tests/components/arlo/test_sensor.py
+++ b/tests/components/arlo/test_sensor.py
@@ -1,6 +1,5 @@
 """The tests for the Netgear Arlo sensors."""
 from collections import namedtuple
-from unittest.mock import MagicMock, patch
 
 import pytest
 
@@ -12,6 +11,8 @@ from homeassistant.const import (
     UNIT_PERCENTAGE,
 )
 
+from tests.async_mock import patch
+
 
 def _get_named_tuple(input_dict):
     return namedtuple("Struct", input_dict.keys())(*input_dict.values())
@@ -94,7 +95,7 @@ def sensor_with_hass_data(default_sensor, hass):
 def mock_dispatch():
     """Mock the dispatcher connect method."""
     target = "homeassistant.components.arlo.sensor.async_dispatcher_connect"
-    with patch(target, MagicMock()) as _mock:
+    with patch(target) as _mock:
         yield _mock
 
 
diff --git a/tests/components/atag/test_config_flow.py b/tests/components/atag/test_config_flow.py
index c860b85c240..9885c9081dd 100644
--- a/tests/components/atag/test_config_flow.py
+++ b/tests/components/atag/test_config_flow.py
@@ -1,13 +1,11 @@
 """Tests for the Atag config flow."""
-from unittest.mock import PropertyMock
-
 from pyatag import AtagException
 
 from homeassistant import config_entries, data_entry_flow
 from homeassistant.components.atag import DOMAIN
 from homeassistant.const import CONF_DEVICE, CONF_HOST, CONF_PORT
 
-from tests.async_mock import patch
+from tests.async_mock import PropertyMock, patch
 from tests.common import MockConfigEntry
 
 FIXTURE_USER_INPUT = {
diff --git a/tests/components/august/test_gateway.py b/tests/components/august/test_gateway.py
index b9d1959d18a..ec035b9ec38 100644
--- a/tests/components/august/test_gateway.py
+++ b/tests/components/august/test_gateway.py
@@ -1,10 +1,8 @@
 """The gateway tests for the august platform."""
-from unittest.mock import MagicMock
-
 from homeassistant.components.august.const import DOMAIN
 from homeassistant.components.august.gateway import AugustGateway
 
-from tests.async_mock import patch
+from tests.async_mock import MagicMock, patch
 from tests.components.august.mocks import _mock_august_authentication, _mock_get_config
 
 
diff --git a/tests/components/auth/test_init.py b/tests/components/auth/test_init.py
index 2c9a39c6fb6..3d799fe0078 100644
--- a/tests/components/auth/test_init.py
+++ b/tests/components/auth/test_init.py
@@ -1,6 +1,5 @@
 """Integration tests for the auth component."""
 from datetime import timedelta
-from unittest.mock import patch
 
 from homeassistant.auth.models import Credentials
 from homeassistant.components import auth
@@ -10,6 +9,7 @@ from homeassistant.util.dt import utcnow
 
 from . import async_setup_auth
 
+from tests.async_mock import patch
 from tests.common import CLIENT_ID, CLIENT_REDIRECT_URI, MockUser
 
 
diff --git a/tests/components/auth/test_login_flow.py b/tests/components/auth/test_login_flow.py
index e6e5281d601..f2629a27bb9 100644
--- a/tests/components/auth/test_login_flow.py
+++ b/tests/components/auth/test_login_flow.py
@@ -1,8 +1,7 @@
 """Tests for the login flow."""
-from unittest.mock import patch
-
 from . import async_setup_auth
 
+from tests.async_mock import patch
 from tests.common import CLIENT_ID, CLIENT_REDIRECT_URI
 
 
diff --git a/tests/components/automation/test_homeassistant.py b/tests/components/automation/test_homeassistant.py
index b0db66e16a9..d7bdfbeef3e 100644
--- a/tests/components/automation/test_homeassistant.py
+++ b/tests/components/automation/test_homeassistant.py
@@ -1,11 +1,9 @@
 """The tests for the Event automation."""
-from unittest.mock import patch
-
 import homeassistant.components.automation as automation
 from homeassistant.core import CoreState
 from homeassistant.setup import async_setup_component
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, patch
 from tests.common import async_mock_service
 
 
diff --git a/tests/components/automation/test_init.py b/tests/components/automation/test_init.py
index a039604525f..7a082ba1931 100644
--- a/tests/components/automation/test_init.py
+++ b/tests/components/automation/test_init.py
@@ -1,6 +1,5 @@
 """The tests for the automation component."""
 from datetime import timedelta
-from unittest.mock import Mock, patch
 
 import pytest
 
@@ -19,6 +18,7 @@ from homeassistant.exceptions import HomeAssistantError, Unauthorized
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import Mock, patch
 from tests.common import (
     assert_setup_component,
     async_fire_time_changed,
diff --git a/tests/components/automation/test_numeric_state.py b/tests/components/automation/test_numeric_state.py
index 1173de4b02a..46b774c1cc9 100644
--- a/tests/components/automation/test_numeric_state.py
+++ b/tests/components/automation/test_numeric_state.py
@@ -1,6 +1,5 @@
 """The tests for numeric state automation."""
 from datetime import timedelta
-from unittest.mock import patch
 
 import pytest
 import voluptuous as vol
@@ -11,6 +10,7 @@ from homeassistant.core import Context
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     assert_setup_component,
     async_fire_time_changed,
diff --git a/tests/components/automation/test_state.py b/tests/components/automation/test_state.py
index 033ce44e5a4..0d591c967be 100644
--- a/tests/components/automation/test_state.py
+++ b/tests/components/automation/test_state.py
@@ -1,6 +1,5 @@
 """The test for state automation."""
 from datetime import timedelta
-from unittest.mock import patch
 
 import pytest
 
@@ -9,6 +8,7 @@ from homeassistant.core import Context
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     assert_setup_component,
     async_fire_time_changed,
diff --git a/tests/components/automation/test_sun.py b/tests/components/automation/test_sun.py
index 4cb2672ab64..4efb19ff201 100644
--- a/tests/components/automation/test_sun.py
+++ b/tests/components/automation/test_sun.py
@@ -1,6 +1,5 @@
 """The tests for the sun automation."""
 from datetime import datetime
-from unittest.mock import patch
 
 import pytest
 
@@ -10,6 +9,7 @@ from homeassistant.const import SUN_EVENT_SUNRISE, SUN_EVENT_SUNSET
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import async_fire_time_changed, async_mock_service, mock_component
 from tests.components.automation import common
 
diff --git a/tests/components/automation/test_time.py b/tests/components/automation/test_time.py
index ec8d504652b..0ba85467fcd 100644
--- a/tests/components/automation/test_time.py
+++ b/tests/components/automation/test_time.py
@@ -1,6 +1,5 @@
 """The tests for the time automation."""
 from datetime import timedelta
-from unittest.mock import patch
 
 import pytest
 
@@ -8,6 +7,7 @@ import homeassistant.components.automation as automation
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     assert_setup_component,
     async_fire_time_changed,
diff --git a/tests/components/axis/test_init.py b/tests/components/axis/test_init.py
index 5803f31d526..b8baf18a67d 100644
--- a/tests/components/axis/test_init.py
+++ b/tests/components/axis/test_init.py
@@ -1,12 +1,10 @@
 """Test Axis component setup process."""
-from unittest.mock import Mock, patch
-
 from homeassistant.components import axis
 from homeassistant.setup import async_setup_component
 
 from .test_device import MAC, setup_axis_integration
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, Mock, patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/axis/test_switch.py b/tests/components/axis/test_switch.py
index 844cfedf7fe..d8d69265f3a 100644
--- a/tests/components/axis/test_switch.py
+++ b/tests/components/axis/test_switch.py
@@ -1,13 +1,13 @@
 """Axis switch platform tests."""
 
-from unittest.mock import Mock, call as mock_call
-
 from homeassistant.components import axis
 import homeassistant.components.switch as switch
 from homeassistant.setup import async_setup_component
 
 from .test_device import NAME, setup_axis_integration
 
+from tests.async_mock import Mock, call as mock_call
+
 EVENTS = [
     {
         "operation": "Initialized",
diff --git a/tests/components/binary_sensor/test_device_condition.py b/tests/components/binary_sensor/test_device_condition.py
index 1ac24e03702..968b54b7892 100644
--- a/tests/components/binary_sensor/test_device_condition.py
+++ b/tests/components/binary_sensor/test_device_condition.py
@@ -1,6 +1,5 @@
 """The test for binary_sensor device automation."""
 from datetime import timedelta
-from unittest.mock import patch
 
 import pytest
 
@@ -12,6 +11,7 @@ from homeassistant.helpers import device_registry
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     MockConfigEntry,
     async_get_device_automation_capabilities,
diff --git a/tests/components/bluetooth_le_tracker/test_device_tracker.py b/tests/components/bluetooth_le_tracker/test_device_tracker.py
index 308371c9aaa..af4df463339 100644
--- a/tests/components/bluetooth_le_tracker/test_device_tracker.py
+++ b/tests/components/bluetooth_le_tracker/test_device_tracker.py
@@ -1,7 +1,6 @@
 """Test Bluetooth LE device tracker."""
 
 from datetime import timedelta
-from unittest.mock import patch
 
 from homeassistant.components.bluetooth_le_tracker import device_tracker
 from homeassistant.components.device_tracker.const import (
@@ -13,6 +12,7 @@ from homeassistant.const import CONF_PLATFORM
 from homeassistant.setup import async_setup_component
 from homeassistant.util import dt as dt_util, slugify
 
+from tests.async_mock import patch
 from tests.common import async_fire_time_changed
 
 
diff --git a/tests/components/bom/test_sensor.py b/tests/components/bom/test_sensor.py
index 7a9daa26c2b..6e85dbca1cd 100644
--- a/tests/components/bom/test_sensor.py
+++ b/tests/components/bom/test_sensor.py
@@ -2,7 +2,6 @@
 import json
 import re
 import unittest
-from unittest.mock import patch
 from urllib.parse import urlparse
 
 import requests
@@ -11,6 +10,7 @@ from homeassistant.components import sensor
 from homeassistant.components.bom.sensor import BOMCurrentData
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant, load_fixture
 
 VALID_CONFIG = {
diff --git a/tests/components/broadlink/test_init.py b/tests/components/broadlink/test_init.py
index 1bdad193f52..c5477dff49f 100644
--- a/tests/components/broadlink/test_init.py
+++ b/tests/components/broadlink/test_init.py
@@ -1,7 +1,6 @@
 """The tests for the broadlink component."""
 from base64 import b64decode
 from datetime import timedelta
-from unittest.mock import MagicMock, call, patch
 
 import pytest
 
@@ -9,6 +8,8 @@ from homeassistant.components.broadlink import async_setup_service, data_packet
 from homeassistant.components.broadlink.const import DOMAIN, SERVICE_LEARN, SERVICE_SEND
 from homeassistant.util.dt import utcnow
 
+from tests.async_mock import MagicMock, call, patch
+
 DUMMY_IR_PACKET = (
     "JgBGAJKVETkRORA6ERQRFBEUERQRFBE5ETkQOhAVEBUQFREUEBUQ"
     "OhEUERQRORE5EBURFBA6EBUQOhE5EBUQFRA6EDoRFBEADQUAAA=="
diff --git a/tests/components/caldav/test_calendar.py b/tests/components/caldav/test_calendar.py
index 8e88c6e564e..1b6c21c7358 100644
--- a/tests/components/caldav/test_calendar.py
+++ b/tests/components/caldav/test_calendar.py
@@ -1,6 +1,5 @@
 """The tests for the webdav calendar component."""
 import datetime
-from unittest.mock import MagicMock, Mock
 
 from caldav.objects import Event
 import pytest
@@ -9,7 +8,7 @@ from homeassistant.const import STATE_OFF, STATE_ON
 from homeassistant.setup import async_setup_component
 from homeassistant.util import dt
 
-from tests.async_mock import patch
+from tests.async_mock import MagicMock, Mock, patch
 
 # pylint: disable=redefined-outer-name
 
diff --git a/tests/components/camera/test_init.py b/tests/components/camera/test_init.py
index 401350ec93c..3eaef6575ac 100644
--- a/tests/components/camera/test_init.py
+++ b/tests/components/camera/test_init.py
@@ -2,7 +2,6 @@
 import asyncio
 import base64
 import io
-from unittest.mock import PropertyMock, mock_open
 
 import pytest
 
@@ -14,7 +13,7 @@ from homeassistant.const import ATTR_ENTITY_ID, EVENT_HOMEASSISTANT_START
 from homeassistant.exceptions import HomeAssistantError
 from homeassistant.setup import async_setup_component
 
-from tests.async_mock import patch
+from tests.async_mock import PropertyMock, mock_open, patch
 from tests.components.camera import common
 
 
diff --git a/tests/components/canary/test_init.py b/tests/components/canary/test_init.py
index 819d1ce0e90..a3f6fbd7e2d 100644
--- a/tests/components/canary/test_init.py
+++ b/tests/components/canary/test_init.py
@@ -1,10 +1,10 @@
 """The tests for the Canary component."""
 import unittest
-from unittest.mock import MagicMock, PropertyMock, patch
 
 from homeassistant import setup
 import homeassistant.components.canary as canary
 
+from tests.async_mock import MagicMock, PropertyMock, patch
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/canary/test_sensor.py b/tests/components/canary/test_sensor.py
index 1d559dbb7ba..5a4a82ccc5a 100644
--- a/tests/components/canary/test_sensor.py
+++ b/tests/components/canary/test_sensor.py
@@ -1,7 +1,6 @@
 """The tests for the Canary sensor platform."""
 import copy
 import unittest
-from unittest.mock import Mock
 
 from homeassistant.components.canary import DATA_CANARY, sensor as canary
 from homeassistant.components.canary.sensor import (
@@ -14,6 +13,7 @@ from homeassistant.components.canary.sensor import (
 )
 from homeassistant.const import TEMP_CELSIUS, UNIT_PERCENTAGE
 
+from tests.async_mock import Mock
 from tests.common import get_test_home_assistant
 from tests.components.canary.test_init import mock_device, mock_location
 
diff --git a/tests/components/cast/test_home_assistant_cast.py b/tests/components/cast/test_home_assistant_cast.py
index 2ec02da7669..50685d5f3e7 100644
--- a/tests/components/cast/test_home_assistant_cast.py
+++ b/tests/components/cast/test_home_assistant_cast.py
@@ -1,8 +1,7 @@
 """Test Home Assistant Cast."""
-from unittest.mock import Mock, patch
-
 from homeassistant.components.cast import home_assistant_cast
 
+from tests.async_mock import Mock, patch
 from tests.common import MockConfigEntry, async_mock_signal
 
 
diff --git a/tests/components/climate/test_init.py b/tests/components/climate/test_init.py
index b5ec45d3aa0..e42bf8c7e3c 100644
--- a/tests/components/climate/test_init.py
+++ b/tests/components/climate/test_init.py
@@ -1,6 +1,5 @@
 """The tests for the climate component."""
 from typing import List
-from unittest.mock import MagicMock
 
 import pytest
 import voluptuous as vol
@@ -13,6 +12,7 @@ from homeassistant.components.climate import (
     ClimateEntity,
 )
 
+from tests.async_mock import MagicMock
 from tests.common import async_mock_service
 
 
diff --git a/tests/components/cloud/conftest.py b/tests/components/cloud/conftest.py
index 4755d470418..02d9b4c41aa 100644
--- a/tests/components/cloud/conftest.py
+++ b/tests/components/cloud/conftest.py
@@ -1,6 +1,4 @@
 """Fixtures for cloud tests."""
-from unittest.mock import patch
-
 import jwt
 import pytest
 
@@ -8,6 +6,8 @@ from homeassistant.components.cloud import const, prefs
 
 from . import mock_cloud, mock_cloud_prefs
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(autouse=True)
 def mock_user_data():
diff --git a/tests/components/cloud/test_binary_sensor.py b/tests/components/cloud/test_binary_sensor.py
index 38c3067873f..6a2d76dc403 100644
--- a/tests/components/cloud/test_binary_sensor.py
+++ b/tests/components/cloud/test_binary_sensor.py
@@ -1,10 +1,8 @@
 """Tests for the cloud binary sensor."""
-from unittest.mock import Mock
-
 from homeassistant.components.cloud.const import DISPATCHER_REMOTE_UPDATE
 from homeassistant.setup import async_setup_component
 
-from tests.async_mock import patch
+from tests.async_mock import Mock, patch
 
 
 async def test_remote_connection_sensor(hass):
diff --git a/tests/components/cloud/test_google_config.py b/tests/components/cloud/test_google_config.py
index 9866270473d..3808f9b179c 100644
--- a/tests/components/cloud/test_google_config.py
+++ b/tests/components/cloud/test_google_config.py
@@ -1,6 +1,4 @@
 """Test the Cloud Google Config."""
-from unittest.mock import Mock
-
 from homeassistant.components.cloud import GACTIONS_SCHEMA
 from homeassistant.components.cloud.google_config import CloudGoogleConfig
 from homeassistant.components.google_assistant import helpers as ga_helpers
@@ -9,7 +7,7 @@ from homeassistant.core import CoreState
 from homeassistant.helpers.entity_registry import EVENT_ENTITY_REGISTRY_UPDATED
 from homeassistant.util.dt import utcnow
 
-from tests.async_mock import AsyncMock, patch
+from tests.async_mock import AsyncMock, Mock, patch
 from tests.common import async_fire_time_changed
 
 
diff --git a/tests/components/cloud/test_prefs.py b/tests/components/cloud/test_prefs.py
index d1b6f9ed867..4f2d5d6d661 100644
--- a/tests/components/cloud/test_prefs.py
+++ b/tests/components/cloud/test_prefs.py
@@ -1,9 +1,9 @@
 """Test Cloud preferences."""
-from unittest.mock import patch
-
 from homeassistant.auth.const import GROUP_ID_ADMIN
 from homeassistant.components.cloud.prefs import STORAGE_KEY, CloudPreferences
 
+from tests.async_mock import patch
+
 
 async def test_set_username(hass):
     """Test we clear config if we set different username."""
diff --git a/tests/components/coinmarketcap/test_sensor.py b/tests/components/coinmarketcap/test_sensor.py
index 9d1e89fbc24..8997bc4a5d6 100644
--- a/tests/components/coinmarketcap/test_sensor.py
+++ b/tests/components/coinmarketcap/test_sensor.py
@@ -1,11 +1,11 @@
 """Tests for the CoinMarketCap sensor platform."""
 import json
 import unittest
-from unittest.mock import patch
 
 import homeassistant.components.sensor as sensor
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant, load_fixture
 
 VALID_CONFIG = {
diff --git a/tests/components/command_line/test_notify.py b/tests/components/command_line/test_notify.py
index 0cb7e9293e9..f20011d4482 100644
--- a/tests/components/command_line/test_notify.py
+++ b/tests/components/command_line/test_notify.py
@@ -2,11 +2,11 @@
 import os
 import tempfile
 import unittest
-from unittest.mock import patch
 
 import homeassistant.components.notify as notify
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/command_line/test_sensor.py b/tests/components/command_line/test_sensor.py
index b923be81888..bbf69dc73a0 100644
--- a/tests/components/command_line/test_sensor.py
+++ b/tests/components/command_line/test_sensor.py
@@ -1,10 +1,10 @@
 """The tests for the Command line sensor platform."""
 import unittest
-from unittest.mock import patch
 
 from homeassistant.components.command_line import sensor as command_line
 from homeassistant.helpers.template import Template
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/config/test_group.py b/tests/components/config/test_group.py
index f555660fb7a..98ad2041713 100644
--- a/tests/components/config/test_group.py
+++ b/tests/components/config/test_group.py
@@ -1,11 +1,10 @@
 """Test Group config panel."""
 import json
-from unittest.mock import patch
 
 from homeassistant.bootstrap import async_setup_component
 from homeassistant.components import config
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, patch
 
 VIEW_NAME = "api:config:group:config"
 
diff --git a/tests/components/config/test_script.py b/tests/components/config/test_script.py
index 0026729766c..4dc906e92f3 100644
--- a/tests/components/config/test_script.py
+++ b/tests/components/config/test_script.py
@@ -1,9 +1,9 @@
 """Tests for config/script."""
-from unittest.mock import patch
-
 from homeassistant.bootstrap import async_setup_component
 from homeassistant.components import config
 
+from tests.async_mock import patch
+
 
 async def test_delete_script(hass, hass_client):
     """Test deleting a script."""
diff --git a/tests/components/config/test_zwave.py b/tests/components/config/test_zwave.py
index 3624554843a..75a66f61939 100644
--- a/tests/components/config/test_zwave.py
+++ b/tests/components/config/test_zwave.py
@@ -1,6 +1,5 @@
 """Test Z-Wave config panel."""
 import json
-from unittest.mock import MagicMock, patch
 
 import pytest
 
@@ -9,6 +8,7 @@ from homeassistant.components import config
 from homeassistant.components.zwave import DATA_NETWORK, const
 from homeassistant.const import HTTP_NOT_FOUND
 
+from tests.async_mock import MagicMock, patch
 from tests.mock.zwave import MockEntityValues, MockNode, MockValue
 
 VIEW_NAME = "api:config:zwave:device_config"
diff --git a/tests/components/daikin/test_config_flow.py b/tests/components/daikin/test_config_flow.py
index aea78f17564..996aef3db4b 100644
--- a/tests/components/daikin/test_config_flow.py
+++ b/tests/components/daikin/test_config_flow.py
@@ -1,7 +1,6 @@
 # pylint: disable=redefined-outer-name
 """Tests for the Daikin config flow."""
 import asyncio
-from unittest.mock import patch
 
 import pytest
 
@@ -10,6 +9,7 @@ from homeassistant.components.daikin import config_flow
 from homeassistant.components.daikin.const import KEY_IP, KEY_MAC
 from homeassistant.const import CONF_HOST
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 MAC = "AABBCCDDEEFF"
diff --git a/tests/components/darksky/test_sensor.py b/tests/components/darksky/test_sensor.py
index 2dc2a3ff30b..b4707af01b2 100644
--- a/tests/components/darksky/test_sensor.py
+++ b/tests/components/darksky/test_sensor.py
@@ -2,7 +2,6 @@
 from datetime import timedelta
 import re
 import unittest
-from unittest.mock import MagicMock, patch
 
 import forecastio
 from requests.exceptions import HTTPError
@@ -11,6 +10,7 @@ import requests_mock
 from homeassistant.components.darksky import sensor as darksky
 from homeassistant.setup import setup_component
 
+from tests.async_mock import MagicMock, patch
 from tests.common import get_test_home_assistant, load_fixture
 
 VALID_CONFIG_MINIMAL = {
diff --git a/tests/components/darksky/test_weather.py b/tests/components/darksky/test_weather.py
index 09ffe7bdc90..f871d424db6 100644
--- a/tests/components/darksky/test_weather.py
+++ b/tests/components/darksky/test_weather.py
@@ -1,7 +1,6 @@
 """The tests for the Dark Sky weather component."""
 import re
 import unittest
-from unittest.mock import patch
 
 import forecastio
 from requests.exceptions import ConnectionError
@@ -11,6 +10,7 @@ from homeassistant.components import weather
 from homeassistant.setup import setup_component
 from homeassistant.util.unit_system import METRIC_SYSTEM
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, load_fixture
 
 
diff --git a/tests/components/default_config/test_init.py b/tests/components/default_config/test_init.py
index 8e0862eb0cb..00fb1c1047b 100644
--- a/tests/components/default_config/test_init.py
+++ b/tests/components/default_config/test_init.py
@@ -1,10 +1,10 @@
 """Test the default_config init."""
-from unittest.mock import patch
-
 import pytest
 
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(autouse=True)
 def recorder_url_mock():
diff --git a/tests/components/demo/test_camera.py b/tests/components/demo/test_camera.py
index d46d1fdc62b..49b8e017f1a 100644
--- a/tests/components/demo/test_camera.py
+++ b/tests/components/demo/test_camera.py
@@ -1,6 +1,4 @@
 """The tests for local file camera component."""
-from unittest.mock import patch
-
 import pytest
 
 from homeassistant.components.camera import (
@@ -18,6 +16,8 @@ from homeassistant.const import ATTR_ENTITY_ID
 from homeassistant.exceptions import HomeAssistantError
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 ENTITY_CAMERA = "camera.demo_camera"
 
 
diff --git a/tests/components/demo/test_geo_location.py b/tests/components/demo/test_geo_location.py
index 5d5f2fc8106..0ba3a35b891 100644
--- a/tests/components/demo/test_geo_location.py
+++ b/tests/components/demo/test_geo_location.py
@@ -1,6 +1,5 @@
 """The tests for the demo platform."""
 import unittest
-from unittest.mock import patch
 
 from homeassistant.components import geo_location
 from homeassistant.components.demo.geo_location import (
@@ -11,6 +10,7 @@ from homeassistant.const import LENGTH_KILOMETERS
 from homeassistant.setup import setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     assert_setup_component,
     fire_time_changed,
diff --git a/tests/components/demo/test_notify.py b/tests/components/demo/test_notify.py
index e30d65112e8..7c7b7fa0aa1 100644
--- a/tests/components/demo/test_notify.py
+++ b/tests/components/demo/test_notify.py
@@ -1,6 +1,5 @@
 """The tests for the notify demo platform."""
 import unittest
-from unittest.mock import patch
 
 import pytest
 import voluptuous as vol
@@ -11,6 +10,7 @@ from homeassistant.core import callback
 from homeassistant.helpers import discovery
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant
 from tests.components.notify import common
 
diff --git a/tests/components/denonavr/test_media_player.py b/tests/components/denonavr/test_media_player.py
index 91bc2abf94d..1547391a339 100644
--- a/tests/components/denonavr/test_media_player.py
+++ b/tests/components/denonavr/test_media_player.py
@@ -1,6 +1,4 @@
 """The tests for the denonavr media player platform."""
-from unittest.mock import patch
-
 import pytest
 
 from homeassistant.components import media_player
@@ -8,6 +6,8 @@ from homeassistant.components.denonavr import ATTR_COMMAND, DOMAIN, SERVICE_GET_
 from homeassistant.const import ATTR_ENTITY_ID, CONF_HOST, CONF_NAME, CONF_PLATFORM
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 NAME = "fake"
 ENTITY_ID = f"{media_player.DOMAIN}.{NAME}"
 
diff --git a/tests/components/derivative/test_sensor.py b/tests/components/derivative/test_sensor.py
index 466f07a9deb..96fee84126a 100644
--- a/tests/components/derivative/test_sensor.py
+++ b/tests/components/derivative/test_sensor.py
@@ -1,11 +1,12 @@
 """The tests for the derivative sensor platform."""
 from datetime import timedelta
-from unittest.mock import patch
 
 from homeassistant.const import POWER_WATT, TIME_HOURS, TIME_MINUTES, TIME_SECONDS
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
+
 
 async def test_state(hass):
     """Test derivative sensor state."""
diff --git a/tests/components/dialogflow/test_init.py b/tests/components/dialogflow/test_init.py
index 5c2a71ad88f..c8c508a0d88 100644
--- a/tests/components/dialogflow/test_init.py
+++ b/tests/components/dialogflow/test_init.py
@@ -1,7 +1,6 @@
 """The tests for the Dialogflow component."""
 import copy
 import json
-from unittest.mock import Mock
 
 import pytest
 
@@ -10,6 +9,8 @@ from homeassistant.components import dialogflow, intent_script
 from homeassistant.core import callback
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock
+
 SESSION_ID = "a9b84cec-46b6-484e-8f31-f65dba03ae6d"
 INTENT_ID = "c6a74079-a8f0-46cd-b372-5a934d23591c"
 INTENT_NAME = "tests"
diff --git a/tests/components/dsmr/test_sensor.py b/tests/components/dsmr/test_sensor.py
index 936a1e68037..895a95bef7b 100644
--- a/tests/components/dsmr/test_sensor.py
+++ b/tests/components/dsmr/test_sensor.py
@@ -9,7 +9,6 @@ import asyncio
 import datetime
 from decimal import Decimal
 from itertools import chain, repeat
-from unittest.mock import DEFAULT, Mock
 
 import pytest
 
@@ -18,6 +17,7 @@ from homeassistant.components.dsmr.sensor import DerivativeDSMREntity
 from homeassistant.const import ENERGY_KILO_WATT_HOUR, TIME_HOURS, VOLUME_CUBIC_METERS
 
 import tests.async_mock
+from tests.async_mock import DEFAULT, Mock
 from tests.common import assert_setup_component
 
 
diff --git a/tests/components/emulated_hue/test_hue_api.py b/tests/components/emulated_hue/test_hue_api.py
index 052228e7aab..67baed7878e 100644
--- a/tests/components/emulated_hue/test_hue_api.py
+++ b/tests/components/emulated_hue/test_hue_api.py
@@ -2,7 +2,6 @@
 from datetime import timedelta
 from ipaddress import ip_address
 import json
-from unittest.mock import patch
 
 from aiohttp.hdrs import CONTENT_TYPE
 import pytest
@@ -42,6 +41,7 @@ from homeassistant.const import (
 )
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     async_fire_time_changed,
     async_mock_service,
diff --git a/tests/components/emulated_hue/test_init.py b/tests/components/emulated_hue/test_init.py
index 6fa6d969539..b1cf2aacb1b 100644
--- a/tests/components/emulated_hue/test_init.py
+++ b/tests/components/emulated_hue/test_init.py
@@ -1,8 +1,8 @@
 """Test the Emulated Hue component."""
-from unittest.mock import MagicMock, Mock, patch
-
 from homeassistant.components.emulated_hue import Config
 
+from tests.async_mock import MagicMock, Mock, patch
+
 
 def test_config_google_home_entity_id_to_number():
     """Test config adheres to the type."""
diff --git a/tests/components/emulated_hue/test_upnp.py b/tests/components/emulated_hue/test_upnp.py
index 889f6437b0a..2557ecac2dd 100644
--- a/tests/components/emulated_hue/test_upnp.py
+++ b/tests/components/emulated_hue/test_upnp.py
@@ -1,7 +1,6 @@
 """The tests for the emulated Hue component."""
 import json
 import unittest
-from unittest.mock import patch
 
 from aiohttp.hdrs import CONTENT_TYPE
 import defusedxml.ElementTree as ET
@@ -10,6 +9,7 @@ import requests
 from homeassistant import const, setup
 from homeassistant.components import emulated_hue
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, get_test_instance_port
 
 HTTP_SERVER_PORT = get_test_instance_port()
diff --git a/tests/components/emulated_roku/test_binding.py b/tests/components/emulated_roku/test_binding.py
index 61c93690548..5ff29194adf 100644
--- a/tests/components/emulated_roku/test_binding.py
+++ b/tests/components/emulated_roku/test_binding.py
@@ -1,6 +1,4 @@
 """Tests for emulated_roku library bindings."""
-from unittest.mock import Mock, patch
-
 from homeassistant.components.emulated_roku.binding import (
     ATTR_APP_ID,
     ATTR_COMMAND_TYPE,
@@ -14,7 +12,7 @@ from homeassistant.components.emulated_roku.binding import (
     EmulatedRoku,
 )
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, Mock, patch
 
 
 async def test_events_fired_properly(hass):
diff --git a/tests/components/emulated_roku/test_init.py b/tests/components/emulated_roku/test_init.py
index 8d58519ddf9..92952a5d840 100644
--- a/tests/components/emulated_roku/test_init.py
+++ b/tests/components/emulated_roku/test_init.py
@@ -1,10 +1,8 @@
 """Test emulated_roku component setup process."""
-from unittest.mock import Mock, patch
-
 from homeassistant.components import emulated_roku
 from homeassistant.setup import async_setup_component
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, Mock, patch
 
 
 async def test_config_required_fields(hass):
diff --git a/tests/components/facebox/test_image_processing.py b/tests/components/facebox/test_image_processing.py
index 8506cd2d817..b40211d5a91 100644
--- a/tests/components/facebox/test_image_processing.py
+++ b/tests/components/facebox/test_image_processing.py
@@ -1,6 +1,4 @@
 """The tests for the facebox component."""
-from unittest.mock import Mock, mock_open, patch
-
 import pytest
 import requests
 import requests_mock
@@ -23,6 +21,8 @@ from homeassistant.const import (
 from homeassistant.core import callback
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock, mock_open, patch
+
 MOCK_IP = "192.168.0.1"
 MOCK_PORT = "8080"
 
diff --git a/tests/components/fail2ban/test_sensor.py b/tests/components/fail2ban/test_sensor.py
index fc8bfc318bb..b164cc93f2e 100644
--- a/tests/components/fail2ban/test_sensor.py
+++ b/tests/components/fail2ban/test_sensor.py
@@ -1,6 +1,5 @@
 """The tests for local file sensor platform."""
 import unittest
-from unittest.mock import Mock, patch
 
 from mock_open import MockOpen
 
@@ -12,6 +11,7 @@ from homeassistant.components.fail2ban.sensor import (
 )
 from homeassistant.setup import setup_component
 
+from tests.async_mock import Mock, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/feedreader/test_init.py b/tests/components/feedreader/test_init.py
index 58a660fcb5d..823bdf6eb63 100644
--- a/tests/components/feedreader/test_init.py
+++ b/tests/components/feedreader/test_init.py
@@ -6,7 +6,6 @@ from os.path import exists
 import time
 import unittest
 from unittest import mock
-from unittest.mock import patch
 
 from homeassistant.components import feedreader
 from homeassistant.components.feedreader import (
@@ -22,6 +21,7 @@ from homeassistant.const import CONF_SCAN_INTERVAL, EVENT_HOMEASSISTANT_START
 from homeassistant.core import callback
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, load_fixture
 
 _LOGGER = getLogger(__name__)
diff --git a/tests/components/ffmpeg/test_init.py b/tests/components/ffmpeg/test_init.py
index 3c6a2fbb92d..4187fe561cc 100644
--- a/tests/components/ffmpeg/test_init.py
+++ b/tests/components/ffmpeg/test_init.py
@@ -1,6 +1,4 @@
 """The tests for Home Assistant ffmpeg."""
-from unittest.mock import MagicMock
-
 import homeassistant.components.ffmpeg as ffmpeg
 from homeassistant.components.ffmpeg import (
     DOMAIN,
@@ -12,6 +10,7 @@ from homeassistant.const import ATTR_ENTITY_ID
 from homeassistant.core import callback
 from homeassistant.setup import async_setup_component, setup_component
 
+from tests.async_mock import MagicMock
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/fido/test_sensor.py b/tests/components/fido/test_sensor.py
index 9a316a85735..b57232d25ad 100644
--- a/tests/components/fido/test_sensor.py
+++ b/tests/components/fido/test_sensor.py
@@ -1,11 +1,11 @@
 """The test for the fido sensor platform."""
 import logging
 import sys
-from unittest.mock import MagicMock, patch
 
 from homeassistant.bootstrap import async_setup_component
 from homeassistant.components.fido import sensor as fido
 
+from tests.async_mock import MagicMock, patch
 from tests.common import assert_setup_component
 
 CONTRACT = "123456789"
diff --git a/tests/components/file/test_notify.py b/tests/components/file/test_notify.py
index bd5ae68cb37..e4ae125949a 100644
--- a/tests/components/file/test_notify.py
+++ b/tests/components/file/test_notify.py
@@ -1,13 +1,13 @@
 """The tests for the notify file platform."""
 import os
 import unittest
-from unittest.mock import call, mock_open, patch
 
 import homeassistant.components.notify as notify
 from homeassistant.components.notify import ATTR_TITLE_DEFAULT
 from homeassistant.setup import setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import call, mock_open, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/file/test_sensor.py b/tests/components/file/test_sensor.py
index 3afdd8284fc..416f3e8c721 100644
--- a/tests/components/file/test_sensor.py
+++ b/tests/components/file/test_sensor.py
@@ -1,6 +1,5 @@
 """The tests for local file sensor platform."""
 import unittest
-from unittest.mock import Mock, patch
 
 # Using third party package because of a bug reading binary data in Python 3.4
 # https://bugs.python.org/issue23004
@@ -9,6 +8,7 @@ from mock_open import MockOpen
 from homeassistant.const import STATE_UNKNOWN
 from homeassistant.setup import setup_component
 
+from tests.async_mock import Mock, patch
 from tests.common import get_test_home_assistant, mock_registry
 
 
diff --git a/tests/components/filter/test_sensor.py b/tests/components/filter/test_sensor.py
index 06bf7cfaf12..238cb366f73 100644
--- a/tests/components/filter/test_sensor.py
+++ b/tests/components/filter/test_sensor.py
@@ -1,7 +1,6 @@
 """The test for the data filter sensor platform."""
 from datetime import timedelta
 import unittest
-from unittest.mock import patch
 
 from homeassistant.components.filter.sensor import (
     LowPassFilter,
@@ -15,6 +14,7 @@ import homeassistant.core as ha
 from homeassistant.setup import setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     assert_setup_component,
     get_test_home_assistant,
diff --git a/tests/components/folder_watcher/test_init.py b/tests/components/folder_watcher/test_init.py
index fa2cfc6d3f1..997bac23f22 100644
--- a/tests/components/folder_watcher/test_init.py
+++ b/tests/components/folder_watcher/test_init.py
@@ -1,10 +1,11 @@
 """The tests for the folder_watcher component."""
 import os
-from unittest.mock import Mock, patch
 
 from homeassistant.components import folder_watcher
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock, patch
+
 
 async def test_invalid_path_setup(hass):
     """Test that an invalid path is not set up."""
diff --git a/tests/components/foobot/test_sensor.py b/tests/components/foobot/test_sensor.py
index 37a0310d163..0a145c88479 100644
--- a/tests/components/foobot/test_sensor.py
+++ b/tests/components/foobot/test_sensor.py
@@ -2,7 +2,6 @@
 
 import asyncio
 import re
-from unittest.mock import MagicMock
 
 import pytest
 
@@ -20,6 +19,7 @@ from homeassistant.const import (
 from homeassistant.exceptions import PlatformNotReady
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import MagicMock
 from tests.common import load_fixture
 
 VALID_CONFIG = {
diff --git a/tests/components/freebox/conftest.py b/tests/components/freebox/conftest.py
index e813469cbbf..7581b03ce72 100644
--- a/tests/components/freebox/conftest.py
+++ b/tests/components/freebox/conftest.py
@@ -1,8 +1,8 @@
 """Test helpers for Freebox."""
-from unittest.mock import patch
-
 import pytest
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(autouse=True)
 def mock_path():
diff --git a/tests/components/fritzbox/__init__.py b/tests/components/fritzbox/__init__.py
index f19e05b84df..066b9a30cb3 100644
--- a/tests/components/fritzbox/__init__.py
+++ b/tests/components/fritzbox/__init__.py
@@ -1,9 +1,9 @@
 """Tests for the AVM Fritz!Box integration."""
-from unittest.mock import Mock
-
 from homeassistant.components.fritzbox.const import DOMAIN
 from homeassistant.const import CONF_DEVICES, CONF_HOST, CONF_PASSWORD, CONF_USERNAME
 
+from tests.async_mock import Mock
+
 MOCK_CONFIG = {
     DOMAIN: {
         CONF_DEVICES: [
diff --git a/tests/components/fritzbox/conftest.py b/tests/components/fritzbox/conftest.py
index 591c1037525..7dcee138382 100644
--- a/tests/components/fritzbox/conftest.py
+++ b/tests/components/fritzbox/conftest.py
@@ -1,8 +1,8 @@
 """Fixtures for the AVM Fritz!Box integration."""
-from unittest.mock import Mock, patch
-
 import pytest
 
+from tests.async_mock import Mock, patch
+
 
 @pytest.fixture(name="fritz")
 def fritz_fixture() -> Mock:
diff --git a/tests/components/fritzbox/test_binary_sensor.py b/tests/components/fritzbox/test_binary_sensor.py
index 89c1dea1704..b3157a3be33 100644
--- a/tests/components/fritzbox/test_binary_sensor.py
+++ b/tests/components/fritzbox/test_binary_sensor.py
@@ -1,7 +1,6 @@
 """Tests for AVM Fritz!Box binary sensor component."""
 from datetime import timedelta
 from unittest import mock
-from unittest.mock import Mock
 
 from requests.exceptions import HTTPError
 
@@ -19,6 +18,7 @@ import homeassistant.util.dt as dt_util
 
 from . import MOCK_CONFIG, FritzDeviceBinarySensorMock
 
+from tests.async_mock import Mock
 from tests.common import async_fire_time_changed
 
 ENTITY_ID = f"{DOMAIN}.fake_name"
diff --git a/tests/components/fritzbox/test_climate.py b/tests/components/fritzbox/test_climate.py
index 627eae5da91..519e3afa31a 100644
--- a/tests/components/fritzbox/test_climate.py
+++ b/tests/components/fritzbox/test_climate.py
@@ -1,6 +1,5 @@
 """Tests for AVM Fritz!Box climate component."""
 from datetime import timedelta
-from unittest.mock import Mock, call
 
 from requests.exceptions import HTTPError
 
@@ -42,6 +41,7 @@ import homeassistant.util.dt as dt_util
 
 from . import MOCK_CONFIG, FritzDeviceClimateMock
 
+from tests.async_mock import Mock, call
 from tests.common import async_fire_time_changed
 
 ENTITY_ID = f"{DOMAIN}.fake_name"
diff --git a/tests/components/fritzbox/test_config_flow.py b/tests/components/fritzbox/test_config_flow.py
index 8bfd992347f..35b41d52118 100644
--- a/tests/components/fritzbox/test_config_flow.py
+++ b/tests/components/fritzbox/test_config_flow.py
@@ -1,6 +1,5 @@
 """Tests for AVM Fritz!Box config flow."""
 from unittest import mock
-from unittest.mock import Mock, patch
 
 from pyfritzhome import LoginError
 import pytest
@@ -17,6 +16,8 @@ from homeassistant.helpers.typing import HomeAssistantType
 
 from . import MOCK_CONFIG
 
+from tests.async_mock import Mock, patch
+
 MOCK_USER_DATA = MOCK_CONFIG[DOMAIN][CONF_DEVICES][0]
 MOCK_SSDP_DATA = {
     ATTR_SSDP_LOCATION: "https://fake_host:12345/test",
diff --git a/tests/components/fritzbox/test_init.py b/tests/components/fritzbox/test_init.py
index 11067c1aa51..55dab3626db 100644
--- a/tests/components/fritzbox/test_init.py
+++ b/tests/components/fritzbox/test_init.py
@@ -1,6 +1,4 @@
 """Tests for the AVM Fritz!Box integration."""
-from unittest.mock import Mock, call
-
 from homeassistant.components.fritzbox.const import DOMAIN as FB_DOMAIN
 from homeassistant.components.switch import DOMAIN as SWITCH_DOMAIN
 from homeassistant.config_entries import ENTRY_STATE_LOADED, ENTRY_STATE_NOT_LOADED
@@ -10,6 +8,7 @@ from homeassistant.setup import async_setup_component
 
 from . import MOCK_CONFIG, FritzDeviceSwitchMock
 
+from tests.async_mock import Mock, call
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/fritzbox/test_sensor.py b/tests/components/fritzbox/test_sensor.py
index 6dde22f074e..7f97e8abfb1 100644
--- a/tests/components/fritzbox/test_sensor.py
+++ b/tests/components/fritzbox/test_sensor.py
@@ -1,6 +1,5 @@
 """Tests for AVM Fritz!Box sensor component."""
 from datetime import timedelta
-from unittest.mock import Mock
 
 from requests.exceptions import HTTPError
 
@@ -21,6 +20,7 @@ import homeassistant.util.dt as dt_util
 
 from . import MOCK_CONFIG, FritzDeviceSensorMock
 
+from tests.async_mock import Mock
 from tests.common import async_fire_time_changed
 
 ENTITY_ID = f"{DOMAIN}.fake_name"
diff --git a/tests/components/fritzbox/test_switch.py b/tests/components/fritzbox/test_switch.py
index 1c0f7b3f37a..c9e05b2d481 100644
--- a/tests/components/fritzbox/test_switch.py
+++ b/tests/components/fritzbox/test_switch.py
@@ -1,6 +1,5 @@
 """Tests for AVM Fritz!Box switch component."""
 from datetime import timedelta
-from unittest.mock import Mock
 
 from requests.exceptions import HTTPError
 
@@ -29,6 +28,7 @@ import homeassistant.util.dt as dt_util
 
 from . import MOCK_CONFIG, FritzDeviceSwitchMock
 
+from tests.async_mock import Mock
 from tests.common import async_fire_time_changed
 
 ENTITY_ID = f"{DOMAIN}.fake_name"
diff --git a/tests/components/garmin_connect/test_config_flow.py b/tests/components/garmin_connect/test_config_flow.py
index 276b6f46871..1c383d4343a 100644
--- a/tests/components/garmin_connect/test_config_flow.py
+++ b/tests/components/garmin_connect/test_config_flow.py
@@ -1,6 +1,4 @@
 """Test the Garmin Connect config flow."""
-from unittest.mock import patch
-
 from garminconnect import (
     GarminConnectAuthenticationError,
     GarminConnectConnectionError,
@@ -12,6 +10,7 @@ from homeassistant import data_entry_flow
 from homeassistant.components.garmin_connect.const import DOMAIN
 from homeassistant.const import CONF_ID, CONF_PASSWORD, CONF_USERNAME
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 MOCK_CONF = {
diff --git a/tests/components/gdacs/__init__.py b/tests/components/gdacs/__init__.py
index 6e61b86dbb7..648ab08507b 100644
--- a/tests/components/gdacs/__init__.py
+++ b/tests/components/gdacs/__init__.py
@@ -1,5 +1,5 @@
 """Tests for the GDACS component."""
-from unittest.mock import MagicMock
+from tests.async_mock import MagicMock
 
 
 def _generate_mock_feed_entry(
diff --git a/tests/components/geo_rss_events/test_sensor.py b/tests/components/geo_rss_events/test_sensor.py
index 25243afea78..9f7cdd3faab 100644
--- a/tests/components/geo_rss_events/test_sensor.py
+++ b/tests/components/geo_rss_events/test_sensor.py
@@ -1,7 +1,6 @@
 """The test for the geo rss events sensor platform."""
 import unittest
 from unittest import mock
-from unittest.mock import MagicMock, patch
 
 from homeassistant.components import sensor
 import homeassistant.components.geo_rss_events.sensor as geo_rss_events
@@ -14,6 +13,7 @@ from homeassistant.const import (
 from homeassistant.setup import setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import MagicMock, patch
 from tests.common import (
     assert_setup_component,
     fire_time_changed,
diff --git a/tests/components/geofency/test_init.py b/tests/components/geofency/test_init.py
index b988d613d6c..bdb5b49d11b 100644
--- a/tests/components/geofency/test_init.py
+++ b/tests/components/geofency/test_init.py
@@ -1,7 +1,4 @@
 """The tests for the Geofency device tracker platform."""
-# pylint: disable=redefined-outer-name
-from unittest.mock import Mock, patch
-
 import pytest
 
 from homeassistant import data_entry_flow
@@ -16,6 +13,9 @@ from homeassistant.const import (
 from homeassistant.setup import async_setup_component
 from homeassistant.util import slugify
 
+# pylint: disable=redefined-outer-name
+from tests.async_mock import Mock, patch
+
 HOME_LATITUDE = 37.239622
 HOME_LONGITUDE = -115.815811
 
diff --git a/tests/components/geonetnz_quakes/__init__.py b/tests/components/geonetnz_quakes/__init__.py
index 424c6372ea8..82cb62b3939 100644
--- a/tests/components/geonetnz_quakes/__init__.py
+++ b/tests/components/geonetnz_quakes/__init__.py
@@ -1,5 +1,5 @@
 """Tests for the geonetnz_quakes component."""
-from unittest.mock import MagicMock
+from tests.async_mock import MagicMock
 
 
 def _generate_mock_feed_entry(
diff --git a/tests/components/geonetnz_volcano/__init__.py b/tests/components/geonetnz_volcano/__init__.py
index 708b69e0031..023cab46ec8 100644
--- a/tests/components/geonetnz_volcano/__init__.py
+++ b/tests/components/geonetnz_volcano/__init__.py
@@ -1,5 +1,5 @@
 """The tests for the GeoNet NZ Volcano Feed integration."""
-from unittest.mock import MagicMock
+from tests.async_mock import MagicMock
 
 
 def _generate_mock_feed_entry(
diff --git a/tests/components/google/conftest.py b/tests/components/google/conftest.py
index 20cb13130ec..6ec75ad53f6 100644
--- a/tests/components/google/conftest.py
+++ b/tests/components/google/conftest.py
@@ -1,8 +1,8 @@
 """Test configuration and mocks for the google integration."""
-from unittest.mock import patch
-
 import pytest
 
+from tests.async_mock import patch
+
 TEST_CALENDAR = {
     "id": "qwertyuiopasdfghjklzxcvbnm@import.calendar.google.com",
     "etag": '"3584134138943410"',
diff --git a/tests/components/google/test_calendar.py b/tests/components/google/test_calendar.py
index ad7b6b12001..92f03396965 100644
--- a/tests/components/google/test_calendar.py
+++ b/tests/components/google/test_calendar.py
@@ -1,6 +1,5 @@
 """The tests for the google calendar platform."""
 import copy
-from unittest.mock import Mock, patch
 
 import httplib2
 import pytest
@@ -23,6 +22,7 @@ from homeassistant.setup import async_setup_component
 from homeassistant.util import slugify
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import Mock, patch
 from tests.common import async_mock_service
 
 GOOGLE_CONFIG = {CONF_CLIENT_ID: "client_id", CONF_CLIENT_SECRET: "client_secret"}
diff --git a/tests/components/google/test_init.py b/tests/components/google/test_init.py
index 59a9f9f5ab2..6f7ce74ce62 100644
--- a/tests/components/google/test_init.py
+++ b/tests/components/google/test_init.py
@@ -1,11 +1,11 @@
 """The tests for the Google Calendar component."""
-from unittest.mock import patch
-
 import pytest
 
 import homeassistant.components.google as google
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(name="google_setup")
 def mock_google_setup(hass):
diff --git a/tests/components/google_assistant/test_trait.py b/tests/components/google_assistant/test_trait.py
index f133db26d89..f4e54176b19 100644
--- a/tests/components/google_assistant/test_trait.py
+++ b/tests/components/google_assistant/test_trait.py
@@ -1,6 +1,5 @@
 """Tests for the Google Assistant traits."""
 import logging
-from unittest.mock import Mock
 
 import pytest
 
@@ -45,7 +44,7 @@ from homeassistant.util import color
 
 from . import BASIC_CONFIG, MockConfig
 
-from tests.async_mock import patch
+from tests.async_mock import Mock, patch
 from tests.common import async_mock_service
 
 _LOGGER = logging.getLogger(__name__)
diff --git a/tests/components/google_translate/test_tts.py b/tests/components/google_translate/test_tts.py
index 6703852528c..280258125df 100644
--- a/tests/components/google_translate/test_tts.py
+++ b/tests/components/google_translate/test_tts.py
@@ -2,7 +2,6 @@
 import asyncio
 import os
 import shutil
-from unittest.mock import patch
 
 from homeassistant.components.media_player.const import (
     ATTR_MEDIA_CONTENT_ID,
@@ -12,6 +11,7 @@ from homeassistant.components.media_player.const import (
 import homeassistant.components.tts as tts
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant, mock_service
 from tests.components.tts.test_init import mutagen_mock  # noqa: F401
 
diff --git a/tests/components/google_wifi/test_sensor.py b/tests/components/google_wifi/test_sensor.py
index 22059706dc5..69db8de184b 100644
--- a/tests/components/google_wifi/test_sensor.py
+++ b/tests/components/google_wifi/test_sensor.py
@@ -1,7 +1,6 @@
 """The tests for the Google Wifi platform."""
 from datetime import datetime, timedelta
 import unittest
-from unittest.mock import Mock, patch
 
 import requests_mock
 
@@ -11,6 +10,7 @@ from homeassistant.const import STATE_UNKNOWN
 from homeassistant.setup import setup_component
 from homeassistant.util import dt as dt_util
 
+from tests.async_mock import Mock, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 NAME = "foo"
diff --git a/tests/components/gpslogger/test_init.py b/tests/components/gpslogger/test_init.py
index 9135f583d19..bfdc087193e 100644
--- a/tests/components/gpslogger/test_init.py
+++ b/tests/components/gpslogger/test_init.py
@@ -1,6 +1,4 @@
 """The tests the for GPSLogger device tracker platform."""
-from unittest.mock import Mock, patch
-
 import pytest
 
 from homeassistant import data_entry_flow
@@ -16,6 +14,8 @@ from homeassistant.const import (
 from homeassistant.helpers.dispatcher import DATA_DISPATCHER
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock, patch
+
 HOME_LATITUDE = 37.239622
 HOME_LONGITUDE = -115.815811
 
diff --git a/tests/components/graphite/test_init.py b/tests/components/graphite/test_init.py
index 88be3723936..19b8c165f37 100644
--- a/tests/components/graphite/test_init.py
+++ b/tests/components/graphite/test_init.py
@@ -2,7 +2,6 @@
 import socket
 import unittest
 from unittest import mock
-from unittest.mock import patch
 
 import homeassistant.components.graphite as graphite
 from homeassistant.const import (
@@ -15,6 +14,7 @@ from homeassistant.const import (
 import homeassistant.core as ha
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/group/test_init.py b/tests/components/group/test_init.py
index 467bd1ede95..c4d98ad37cc 100644
--- a/tests/components/group/test_init.py
+++ b/tests/components/group/test_init.py
@@ -2,7 +2,6 @@
 # pylint: disable=protected-access
 from collections import OrderedDict
 import unittest
-from unittest.mock import patch
 
 import homeassistant.components.group as group
 from homeassistant.const import (
@@ -17,6 +16,7 @@ from homeassistant.const import (
 )
 from homeassistant.setup import async_setup_component, setup_component
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant
 from tests.components.group import common
 
diff --git a/tests/components/group/test_light.py b/tests/components/group/test_light.py
index ed807ed57d9..70dab4472ed 100644
--- a/tests/components/group/test_light.py
+++ b/tests/components/group/test_light.py
@@ -1,6 +1,4 @@
 """The tests for the Group Light platform."""
-from unittest.mock import MagicMock
-
 from homeassistant.components.group import DOMAIN
 import homeassistant.components.group.light as group
 from homeassistant.components.light import (
@@ -31,6 +29,7 @@ from homeassistant.const import (
 from homeassistant.setup import async_setup_component
 
 import tests.async_mock
+from tests.async_mock import MagicMock
 
 
 async def test_default_state(hass):
diff --git a/tests/components/group/test_notify.py b/tests/components/group/test_notify.py
index f029ec9d2fa..0925b318c9e 100644
--- a/tests/components/group/test_notify.py
+++ b/tests/components/group/test_notify.py
@@ -1,13 +1,13 @@
 """The tests for the notify.group platform."""
 import asyncio
 import unittest
-from unittest.mock import MagicMock, patch
 
 import homeassistant.components.demo.notify as demo
 import homeassistant.components.group.notify as group
 import homeassistant.components.notify as notify
 from homeassistant.setup import setup_component
 
+from tests.async_mock import MagicMock, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/group/test_reproduce_state.py b/tests/components/group/test_reproduce_state.py
index 58bbc94876e..13422cd0826 100644
--- a/tests/components/group/test_reproduce_state.py
+++ b/tests/components/group/test_reproduce_state.py
@@ -1,11 +1,12 @@
 """The tests for reproduction of state."""
 
 from asyncio import Future
-from unittest.mock import patch
 
 from homeassistant.components.group.reproduce_state import async_reproduce_states
 from homeassistant.core import Context, State
 
+from tests.async_mock import patch
+
 
 async def test_reproduce_group(hass):
     """Test reproduce_state with group."""
diff --git a/tests/components/hangouts/test_config_flow.py b/tests/components/hangouts/test_config_flow.py
index 93f909d3bd4..9cdb5799951 100644
--- a/tests/components/hangouts/test_config_flow.py
+++ b/tests/components/hangouts/test_config_flow.py
@@ -1,11 +1,11 @@
 """Tests for the Google Hangouts config flow."""
 
-from unittest.mock import patch
-
 from homeassistant import data_entry_flow
 from homeassistant.components.hangouts import config_flow
 from homeassistant.const import CONF_EMAIL, CONF_PASSWORD
 
+from tests.async_mock import patch
+
 EMAIL = "test@test.com"
 PASSWORD = "1232456"
 
diff --git a/tests/components/hassio/test_http.py b/tests/components/hassio/test_http.py
index a5af24eb868..7386cf57d0c 100644
--- a/tests/components/hassio/test_http.py
+++ b/tests/components/hassio/test_http.py
@@ -1,9 +1,10 @@
 """The tests for the hassio component."""
 import asyncio
-from unittest.mock import patch
 
 import pytest
 
+from tests.async_mock import patch
+
 
 async def test_forward_request(hassio_client, aioclient_mock):
     """Test fetching normal path."""
diff --git a/tests/components/hddtemp/test_sensor.py b/tests/components/hddtemp/test_sensor.py
index cbaed220f11..4583079829a 100644
--- a/tests/components/hddtemp/test_sensor.py
+++ b/tests/components/hddtemp/test_sensor.py
@@ -1,11 +1,11 @@
 """The tests for the hddtemp platform."""
 import socket
 import unittest
-from unittest.mock import patch
 
 from homeassistant.const import TEMP_CELSIUS
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 VALID_CONFIG_MINIMAL = {"sensor": {"platform": "hddtemp"}}
diff --git a/tests/components/here_travel_time/test_sensor.py b/tests/components/here_travel_time/test_sensor.py
index d399f5b67aa..fd2922e94fe 100644
--- a/tests/components/here_travel_time/test_sensor.py
+++ b/tests/components/here_travel_time/test_sensor.py
@@ -1,6 +1,5 @@
 """The test for the here_travel_time sensor platform."""
 import logging
-from unittest.mock import patch
 import urllib
 
 import herepy
@@ -43,6 +42,7 @@ from homeassistant.const import ATTR_ICON, EVENT_HOMEASSISTANT_START
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import async_fire_time_changed, load_fixture
 
 DOMAIN = "sensor"
diff --git a/tests/components/history/test_init.py b/tests/components/history/test_init.py
index b2687b2bd50..29e43c8428e 100644
--- a/tests/components/history/test_init.py
+++ b/tests/components/history/test_init.py
@@ -2,13 +2,13 @@
 # pylint: disable=protected-access,invalid-name
 from datetime import timedelta
 import unittest
-from unittest.mock import patch, sentinel
 
 from homeassistant.components import history, recorder
 import homeassistant.core as ha
 from homeassistant.setup import async_setup_component, setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch, sentinel
 from tests.common import (
     get_test_home_assistant,
     init_recorder_component,
diff --git a/tests/components/history_stats/test_sensor.py b/tests/components/history_stats/test_sensor.py
index 588e0df81db..d9f489d20b4 100644
--- a/tests/components/history_stats/test_sensor.py
+++ b/tests/components/history_stats/test_sensor.py
@@ -2,7 +2,6 @@
 # pylint: disable=protected-access
 from datetime import datetime, timedelta
 import unittest
-from unittest.mock import patch
 
 import pytest
 import pytz
@@ -14,6 +13,7 @@ from homeassistant.helpers.template import Template
 from homeassistant.setup import setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, init_recorder_component
 
 
diff --git a/tests/components/homeassistant/test_scene.py b/tests/components/homeassistant/test_scene.py
index 1371db87b3d..6234d425d8d 100644
--- a/tests/components/homeassistant/test_scene.py
+++ b/tests/components/homeassistant/test_scene.py
@@ -1,12 +1,11 @@
 """Test Home Assistant scenes."""
-from unittest.mock import patch
-
 import pytest
 import voluptuous as vol
 
 from homeassistant.components.homeassistant import scene as ha_scene
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
 from tests.common import async_mock_service
 
 
diff --git a/tests/components/homekit/common.py b/tests/components/homekit/common.py
index 6453bbbc788..8f38332f112 100644
--- a/tests/components/homekit/common.py
+++ b/tests/components/homekit/common.py
@@ -1,5 +1,5 @@
 """Collection of fixtures and functions for the HomeKit tests."""
-from unittest.mock import patch
+from tests.async_mock import patch
 
 
 def patch_debounce():
diff --git a/tests/components/homekit/conftest.py b/tests/components/homekit/conftest.py
index 7093bebf9ab..d23bda67cee 100644
--- a/tests/components/homekit/conftest.py
+++ b/tests/components/homekit/conftest.py
@@ -1,12 +1,12 @@
 """HomeKit session fixtures."""
-from unittest.mock import patch
-
 from pyhap.accessory_driver import AccessoryDriver
 import pytest
 
 from homeassistant.components.homekit.const import EVENT_HOMEKIT_CHANGED
 from homeassistant.core import callback as ha_callback
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(scope="session")
 def hk_driver():
diff --git a/tests/components/homekit/test_accessories.py b/tests/components/homekit/test_accessories.py
index e2fb79f56ce..55b7f764d76 100644
--- a/tests/components/homekit/test_accessories.py
+++ b/tests/components/homekit/test_accessories.py
@@ -3,7 +3,6 @@
 This includes tests for all mock object types.
 """
 from datetime import datetime, timedelta
-from unittest.mock import Mock, patch
 
 import pytest
 
@@ -43,6 +42,7 @@ from homeassistant.const import (
 )
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import Mock, patch
 from tests.common import async_mock_service
 
 
diff --git a/tests/components/homekit/test_get_accessories.py b/tests/components/homekit/test_get_accessories.py
index 286fe51535e..634c098b8f0 100644
--- a/tests/components/homekit/test_get_accessories.py
+++ b/tests/components/homekit/test_get_accessories.py
@@ -1,6 +1,4 @@
 """Package to test the get_accessory method."""
-from unittest.mock import Mock, patch
-
 import pytest
 
 import homeassistant.components.climate as climate
@@ -31,6 +29,8 @@ from homeassistant.const import (
 )
 from homeassistant.core import State
 
+from tests.async_mock import Mock, patch
+
 
 def test_not_supported(caplog):
     """Test if none is returned if entity isn't supported."""
diff --git a/tests/components/homekit/test_homekit.py b/tests/components/homekit/test_homekit.py
index e5bee83a0eb..7bdfa0b14bd 100644
--- a/tests/components/homekit/test_homekit.py
+++ b/tests/components/homekit/test_homekit.py
@@ -1,7 +1,6 @@
 """Tests for the HomeKit component."""
 import os
 from typing import Dict
-from unittest.mock import ANY, Mock, patch
 
 import pytest
 from zeroconf import InterfaceChoice
@@ -55,7 +54,7 @@ from homeassistant.util import json as json_util
 
 from .util import PATH_HOMEKIT, async_init_entry, async_init_integration
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import ANY, AsyncMock, Mock, patch
 from tests.common import MockConfigEntry, mock_device_registry, mock_registry
 from tests.components.homekit.common import patch_debounce
 
diff --git a/tests/components/homekit/test_type_fans.py b/tests/components/homekit/test_type_fans.py
index 4d2ace24eab..6d5b0f9841b 100644
--- a/tests/components/homekit/test_type_fans.py
+++ b/tests/components/homekit/test_type_fans.py
@@ -1,6 +1,5 @@
 """Test different accessory types: Fans."""
 from collections import namedtuple
-from unittest.mock import Mock
 
 from pyhap.const import HAP_REPR_AID, HAP_REPR_CHARS, HAP_REPR_IID, HAP_REPR_VALUE
 import pytest
@@ -33,6 +32,7 @@ from homeassistant.const import (
 from homeassistant.core import CoreState
 from homeassistant.helpers import entity_registry
 
+from tests.async_mock import Mock
 from tests.common import async_mock_service
 from tests.components.homekit.common import patch_debounce
 
diff --git a/tests/components/homekit/test_type_thermostats.py b/tests/components/homekit/test_type_thermostats.py
index 82abed32c0e..8a303ede876 100644
--- a/tests/components/homekit/test_type_thermostats.py
+++ b/tests/components/homekit/test_type_thermostats.py
@@ -1,6 +1,5 @@
 """Test different accessory types: Thermostats."""
 from collections import namedtuple
-from unittest.mock import patch
 
 from pyhap.const import HAP_REPR_AID, HAP_REPR_CHARS, HAP_REPR_IID, HAP_REPR_VALUE
 import pytest
@@ -56,6 +55,7 @@ from homeassistant.const import (
 from homeassistant.core import CoreState
 from homeassistant.helpers import entity_registry
 
+from tests.async_mock import patch
 from tests.common import async_mock_service
 from tests.components.homekit.common import patch_debounce
 
diff --git a/tests/components/html5/test_notify.py b/tests/components/html5/test_notify.py
index 4a62eb76c27..d3faa761435 100644
--- a/tests/components/html5/test_notify.py
+++ b/tests/components/html5/test_notify.py
@@ -1,6 +1,5 @@
 """Test HTML5 notify platform."""
 import json
-from unittest.mock import MagicMock, mock_open, patch
 
 from aiohttp.hdrs import AUTHORIZATION
 
@@ -9,6 +8,8 @@ from homeassistant.const import HTTP_INTERNAL_SERVER_ERROR
 from homeassistant.exceptions import HomeAssistantError
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import MagicMock, mock_open, patch
+
 CONFIG_FILE = "file.conf"
 
 VAPID_CONF = {
diff --git a/tests/components/http/test_auth.py b/tests/components/http/test_auth.py
index 408bfd325c1..9282bf4587b 100644
--- a/tests/components/http/test_auth.py
+++ b/tests/components/http/test_auth.py
@@ -1,7 +1,6 @@
 """The tests for the Home Assistant HTTP component."""
 from datetime import timedelta
 from ipaddress import ip_network
-from unittest.mock import patch
 
 from aiohttp import BasicAuth, web
 from aiohttp.web_exceptions import HTTPUnauthorized
@@ -15,6 +14,8 @@ from homeassistant.setup import async_setup_component
 
 from . import HTTP_HEADER_HA_AUTH, mock_real_ip
 
+from tests.async_mock import patch
+
 API_PASSWORD = "test-password"
 
 # Don't add 127.0.0.1/::1 as trusted, as it may interfere with other test cases
diff --git a/tests/components/http/test_ban.py b/tests/components/http/test_ban.py
index d13581e12a2..702912dd9d0 100644
--- a/tests/components/http/test_ban.py
+++ b/tests/components/http/test_ban.py
@@ -2,7 +2,6 @@
 # pylint: disable=protected-access
 from ipaddress import ip_address
 import os
-from unittest.mock import Mock, mock_open
 
 from aiohttp import web
 from aiohttp.web_exceptions import HTTPUnauthorized
@@ -24,7 +23,7 @@ from homeassistant.setup import async_setup_component
 
 from . import mock_real_ip
 
-from tests.async_mock import patch
+from tests.async_mock import Mock, mock_open, patch
 
 SUPERVISOR_IP = "1.2.3.4"
 BANNED_IPS = ["200.201.202.203", "100.64.0.2"]
diff --git a/tests/components/http/test_cors.py b/tests/components/http/test_cors.py
index 04447191fd5..191cdb0ba49 100644
--- a/tests/components/http/test_cors.py
+++ b/tests/components/http/test_cors.py
@@ -1,6 +1,5 @@
 """Test cors for the HTTP component."""
 from pathlib import Path
-from unittest.mock import patch
 
 from aiohttp import web
 from aiohttp.hdrs import (
@@ -19,6 +18,8 @@ from homeassistant.setup import async_setup_component
 
 from . import HTTP_HEADER_HA_AUTH
 
+from tests.async_mock import patch
+
 TRUSTED_ORIGIN = "https://home-assistant.io"
 
 
diff --git a/tests/components/http/test_data_validator.py b/tests/components/http/test_data_validator.py
index 71b4b95cd8e..b0a14a31bc5 100644
--- a/tests/components/http/test_data_validator.py
+++ b/tests/components/http/test_data_validator.py
@@ -1,12 +1,12 @@
 """Test data validator decorator."""
-from unittest.mock import Mock
-
 from aiohttp import web
 import voluptuous as vol
 
 from homeassistant.components.http import HomeAssistantView
 from homeassistant.components.http.data_validator import RequestDataValidator
 
+from tests.async_mock import Mock
+
 
 async def get_client(aiohttp_client, validator):
     """Generate a client that hits a view decorated with validator."""
diff --git a/tests/components/http/test_init.py b/tests/components/http/test_init.py
index 58e6d8824dd..651783ec47e 100644
--- a/tests/components/http/test_init.py
+++ b/tests/components/http/test_init.py
@@ -2,12 +2,13 @@
 from ipaddress import ip_network
 import logging
 import unittest
-from unittest.mock import patch
 
 import homeassistant.components.http as http
 from homeassistant.setup import async_setup_component
 from homeassistant.util.ssl import server_context_intermediate, server_context_modern
 
+from tests.async_mock import patch
+
 
 class TestView(http.HomeAssistantView):
     """Test the HTTP views."""
diff --git a/tests/components/http/test_view.py b/tests/components/http/test_view.py
index b298fff6674..a6e4bdc12c8 100644
--- a/tests/components/http/test_view.py
+++ b/tests/components/http/test_view.py
@@ -1,6 +1,4 @@
 """Tests for Home Assistant View."""
-from unittest.mock import Mock
-
 from aiohttp.web_exceptions import (
     HTTPBadRequest,
     HTTPInternalServerError,
@@ -15,7 +13,7 @@ from homeassistant.components.http.view import (
 )
 from homeassistant.exceptions import ServiceNotFound, Unauthorized
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, Mock
 
 
 @pytest.fixture
diff --git a/tests/components/hue/conftest.py b/tests/components/hue/conftest.py
index fa7c4ac473d..52ae43d65b4 100644
--- a/tests/components/hue/conftest.py
+++ b/tests/components/hue/conftest.py
@@ -1,6 +1,5 @@
 """Test helpers for Hue."""
 from collections import deque
-from unittest.mock import Mock, patch
 
 from aiohue.groups import Groups
 from aiohue.lights import Lights
@@ -11,6 +10,8 @@ from homeassistant import config_entries
 from homeassistant.components import hue
 from homeassistant.components.hue import sensor_base as hue_sensor_base
 
+from tests.async_mock import Mock, patch
+
 
 @pytest.fixture(autouse=True)
 def no_request_delay():
diff --git a/tests/components/hue/test_config_flow.py b/tests/components/hue/test_config_flow.py
index b5ea2e4e0ea..4ba4ecb06a6 100644
--- a/tests/components/hue/test_config_flow.py
+++ b/tests/components/hue/test_config_flow.py
@@ -1,6 +1,5 @@
 """Tests for Philips Hue config flow."""
 import asyncio
-from unittest.mock import Mock
 
 from aiohttp import client_exceptions
 import aiohue
@@ -12,7 +11,7 @@ from homeassistant import config_entries
 from homeassistant.components import ssdp
 from homeassistant.components.hue import config_flow, const
 
-from tests.async_mock import AsyncMock, patch
+from tests.async_mock import AsyncMock, Mock, patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/hue/test_light.py b/tests/components/hue/test_light.py
index 85ef0052029..630e74cb1af 100644
--- a/tests/components/hue/test_light.py
+++ b/tests/components/hue/test_light.py
@@ -1,7 +1,6 @@
 """Philips Hue lights platform tests."""
 import asyncio
 import logging
-from unittest.mock import Mock
 
 import aiohue
 
@@ -10,6 +9,8 @@ from homeassistant.components import hue
 from homeassistant.components.hue import light as hue_light
 from homeassistant.util import color
 
+from tests.async_mock import Mock
+
 _LOGGER = logging.getLogger(__name__)
 
 HUE_LIGHT_NS = "homeassistant.components.light.hue."
diff --git a/tests/components/hue/test_sensor_base.py b/tests/components/hue/test_sensor_base.py
index 576bc365d50..e50ac71c03a 100644
--- a/tests/components/hue/test_sensor_base.py
+++ b/tests/components/hue/test_sensor_base.py
@@ -1,7 +1,6 @@
 """Philips Hue sensors platform tests."""
 import asyncio
 import logging
-from unittest.mock import Mock
 
 import aiohue
 
@@ -9,6 +8,8 @@ from homeassistant.components.hue.hue_event import CONF_HUE_EVENT
 
 from .conftest import create_mock_bridge, setup_bridge_for_sensors as setup_bridge
 
+from tests.async_mock import Mock
+
 _LOGGER = logging.getLogger(__name__)
 
 PRESENCE_SENSOR_1_PRESENT = {
diff --git a/tests/components/icloud/conftest.py b/tests/components/icloud/conftest.py
index 2230cc2ea32..2ed9006cdb6 100644
--- a/tests/components/icloud/conftest.py
+++ b/tests/components/icloud/conftest.py
@@ -1,8 +1,8 @@
 """Configure iCloud tests."""
-from unittest.mock import patch
-
 import pytest
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(name="icloud_bypass_setup", autouse=True)
 def icloud_bypass_setup_fixture():
diff --git a/tests/components/icloud/test_config_flow.py b/tests/components/icloud/test_config_flow.py
index 4bce35d0a63..3123ead4eeb 100644
--- a/tests/components/icloud/test_config_flow.py
+++ b/tests/components/icloud/test_config_flow.py
@@ -1,6 +1,4 @@
 """Tests for the iCloud config flow."""
-from unittest.mock import MagicMock, Mock, patch
-
 from pyicloud.exceptions import PyiCloudFailedLoginException
 import pytest
 
@@ -22,6 +20,7 @@ from homeassistant.config_entries import SOURCE_IMPORT, SOURCE_USER
 from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
 from homeassistant.helpers.typing import HomeAssistantType
 
+from tests.async_mock import MagicMock, Mock, patch
 from tests.common import MockConfigEntry
 
 USERNAME = "username@me.com"
diff --git a/tests/components/ifttt/test_init.py b/tests/components/ifttt/test_init.py
index d10df2492d4..e5fd8841a2b 100644
--- a/tests/components/ifttt/test_init.py
+++ b/tests/components/ifttt/test_init.py
@@ -1,10 +1,10 @@
 """Test the init file of IFTTT."""
-from unittest.mock import patch
-
 from homeassistant import data_entry_flow
 from homeassistant.components import ifttt
 from homeassistant.core import callback
 
+from tests.async_mock import patch
+
 
 async def test_config_flow_registers_webhook(hass, aiohttp_client):
     """Test setting up IFTTT and sending webhook."""
diff --git a/tests/components/ign_sismologia/test_geo_location.py b/tests/components/ign_sismologia/test_geo_location.py
index c2bd357ecc8..8b9852ea234 100644
--- a/tests/components/ign_sismologia/test_geo_location.py
+++ b/tests/components/ign_sismologia/test_geo_location.py
@@ -1,6 +1,5 @@
 """The tests for the IGN Sismologia (Earthquakes) Feed platform."""
 import datetime
-from unittest.mock import MagicMock, call, patch
 
 from homeassistant.components import geo_location
 from homeassistant.components.geo_location import ATTR_SOURCE
@@ -29,6 +28,7 @@ from homeassistant.const import (
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import MagicMock, call, patch
 from tests.common import assert_setup_component, async_fire_time_changed
 
 CONFIG = {geo_location.DOMAIN: [{"platform": "ign_sismologia", CONF_RADIUS: 200}]}
diff --git a/tests/components/image_processing/test_init.py b/tests/components/image_processing/test_init.py
index a2a2ec2d7a6..cc708db75db 100644
--- a/tests/components/image_processing/test_init.py
+++ b/tests/components/image_processing/test_init.py
@@ -1,6 +1,4 @@
 """The tests for the image_processing component."""
-from unittest.mock import PropertyMock
-
 import homeassistant.components.http as http
 import homeassistant.components.image_processing as ip
 from homeassistant.const import ATTR_ENTITY_PICTURE
@@ -8,7 +6,7 @@ from homeassistant.core import callback
 from homeassistant.exceptions import HomeAssistantError
 from homeassistant.setup import setup_component
 
-from tests.async_mock import patch
+from tests.async_mock import PropertyMock, patch
 from tests.common import (
     assert_setup_component,
     get_test_home_assistant,
diff --git a/tests/components/input_boolean/test_init.py b/tests/components/input_boolean/test_init.py
index c0bdad3eacd..1e3150e687a 100644
--- a/tests/components/input_boolean/test_init.py
+++ b/tests/components/input_boolean/test_init.py
@@ -1,7 +1,6 @@
 """The tests for the input_boolean component."""
 # pylint: disable=protected-access
 import logging
-from unittest.mock import patch
 
 import pytest
 
@@ -23,6 +22,7 @@ from homeassistant.core import Context, CoreState, State
 from homeassistant.helpers import entity_registry
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
 from tests.common import mock_component, mock_restore_cache
 
 _LOGGER = logging.getLogger(__name__)
diff --git a/tests/components/input_datetime/test_init.py b/tests/components/input_datetime/test_init.py
index afee32702c4..0eb4d748563 100644
--- a/tests/components/input_datetime/test_init.py
+++ b/tests/components/input_datetime/test_init.py
@@ -1,7 +1,6 @@
 """Tests for the Input slider component."""
 # pylint: disable=protected-access
 import datetime
-from unittest.mock import patch
 
 import pytest
 import voluptuous as vol
@@ -27,6 +26,7 @@ from homeassistant.exceptions import Unauthorized
 from homeassistant.helpers import entity_registry
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
 from tests.common import mock_restore_cache
 
 INITIAL_DATE = "2020-01-10"
diff --git a/tests/components/input_number/test_init.py b/tests/components/input_number/test_init.py
index 28b9d27d23f..8971439de74 100644
--- a/tests/components/input_number/test_init.py
+++ b/tests/components/input_number/test_init.py
@@ -1,7 +1,4 @@
 """The tests for the Input number component."""
-# pylint: disable=protected-access
-from unittest.mock import patch
-
 import pytest
 import voluptuous as vol
 
@@ -24,6 +21,8 @@ from homeassistant.exceptions import Unauthorized
 from homeassistant.helpers import entity_registry
 from homeassistant.setup import async_setup_component
 
+# pylint: disable=protected-access
+from tests.async_mock import patch
 from tests.common import mock_restore_cache
 
 
diff --git a/tests/components/input_select/test_init.py b/tests/components/input_select/test_init.py
index 5c470ca5bfc..6f83de340f3 100644
--- a/tests/components/input_select/test_init.py
+++ b/tests/components/input_select/test_init.py
@@ -1,7 +1,4 @@
 """The tests for the Input select component."""
-# pylint: disable=protected-access
-from unittest.mock import patch
-
 import pytest
 
 from homeassistant.components.input_select import (
@@ -28,6 +25,8 @@ from homeassistant.helpers import entity_registry
 from homeassistant.loader import bind_hass
 from homeassistant.setup import async_setup_component
 
+# pylint: disable=protected-access
+from tests.async_mock import patch
 from tests.common import mock_restore_cache
 
 
diff --git a/tests/components/input_text/test_init.py b/tests/components/input_text/test_init.py
index cc226dc1d87..ed89ccd7087 100644
--- a/tests/components/input_text/test_init.py
+++ b/tests/components/input_text/test_init.py
@@ -1,7 +1,4 @@
 """The tests for the Input text component."""
-# pylint: disable=protected-access
-from unittest.mock import patch
-
 import pytest
 
 from homeassistant.components.input_text import (
@@ -29,6 +26,8 @@ from homeassistant.helpers import entity_registry
 from homeassistant.loader import bind_hass
 from homeassistant.setup import async_setup_component
 
+# pylint: disable=protected-access
+from tests.async_mock import patch
 from tests.common import mock_restore_cache
 
 TEST_VAL_MIN = 2
diff --git a/tests/components/integration/test_sensor.py b/tests/components/integration/test_sensor.py
index 3afa5c14c22..c36a718ffb4 100644
--- a/tests/components/integration/test_sensor.py
+++ b/tests/components/integration/test_sensor.py
@@ -1,11 +1,12 @@
 """The tests for the integration sensor platform."""
 from datetime import timedelta
-from unittest.mock import patch
 
 from homeassistant.const import ENERGY_KILO_WATT_HOUR, POWER_WATT, TIME_SECONDS
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
+
 
 async def test_state(hass):
     """Test integration sensor state."""
diff --git a/tests/components/islamic_prayer_times/test_config_flow.py b/tests/components/islamic_prayer_times/test_config_flow.py
index a56178e5225..204075ecb8c 100644
--- a/tests/components/islamic_prayer_times/test_config_flow.py
+++ b/tests/components/islamic_prayer_times/test_config_flow.py
@@ -1,12 +1,11 @@
 """Tests for Islamic Prayer Times config flow."""
-from unittest.mock import patch
-
 import pytest
 
 from homeassistant import data_entry_flow
 from homeassistant.components import islamic_prayer_times
 from homeassistant.components.islamic_prayer_times.const import CONF_CALC_METHOD, DOMAIN
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/islamic_prayer_times/test_init.py b/tests/components/islamic_prayer_times/test_init.py
index e91e83b315e..9fb9333e045 100644
--- a/tests/components/islamic_prayer_times/test_init.py
+++ b/tests/components/islamic_prayer_times/test_init.py
@@ -1,7 +1,6 @@
 """Tests for Islamic Prayer Times init."""
 
 from datetime import timedelta
-from unittest.mock import patch
 
 from prayer_times_calculator.exceptions import InvalidResponseError
 
@@ -17,6 +16,7 @@ from . import (
     PRAYER_TIMES_TIMESTAMPS,
 )
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry, async_fire_time_changed
 
 
diff --git a/tests/components/islamic_prayer_times/test_sensor.py b/tests/components/islamic_prayer_times/test_sensor.py
index 0579664ae7b..147d7e6ef1d 100644
--- a/tests/components/islamic_prayer_times/test_sensor.py
+++ b/tests/components/islamic_prayer_times/test_sensor.py
@@ -1,10 +1,9 @@
 """The tests for the Islamic prayer times sensor platform."""
-from unittest.mock import patch
-
 from homeassistant.components import islamic_prayer_times
 
 from . import NOW, PRAYER_TIMES, PRAYER_TIMES_TIMESTAMPS
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/jewish_calendar/__init__.py b/tests/components/jewish_calendar/__init__.py
index 592086461d3..8e18579b197 100644
--- a/tests/components/jewish_calendar/__init__.py
+++ b/tests/components/jewish_calendar/__init__.py
@@ -2,11 +2,12 @@
 from collections import namedtuple
 from contextlib import contextmanager
 from datetime import datetime
-from unittest.mock import patch
 
 from homeassistant.components import jewish_calendar
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
+
 _LatLng = namedtuple("_LatLng", ["lat", "lng"])
 
 NYC_LATLNG = _LatLng(40.7128, -74.0060)
diff --git a/tests/components/kira/test_init.py b/tests/components/kira/test_init.py
index e5056235127..8656ac23264 100644
--- a/tests/components/kira/test_init.py
+++ b/tests/components/kira/test_init.py
@@ -4,11 +4,11 @@ import os
 import shutil
 import tempfile
 import unittest
-from unittest.mock import MagicMock, patch
 
 import homeassistant.components.kira as kira
 from homeassistant.setup import setup_component
 
+from tests.async_mock import MagicMock, patch
 from tests.common import get_test_home_assistant
 
 TEST_CONFIG = {
diff --git a/tests/components/kira/test_remote.py b/tests/components/kira/test_remote.py
index d7718ad33f0..b1ac7ea12fc 100644
--- a/tests/components/kira/test_remote.py
+++ b/tests/components/kira/test_remote.py
@@ -1,9 +1,9 @@
 """The tests for Kira sensor platform."""
 import unittest
-from unittest.mock import MagicMock
 
 from homeassistant.components.kira import remote as kira
 
+from tests.async_mock import MagicMock
 from tests.common import get_test_home_assistant
 
 SERVICE_SEND_COMMAND = "send_command"
diff --git a/tests/components/kira/test_sensor.py b/tests/components/kira/test_sensor.py
index 55e6d5453c7..2fae36dc670 100644
--- a/tests/components/kira/test_sensor.py
+++ b/tests/components/kira/test_sensor.py
@@ -1,9 +1,9 @@
 """The tests for Kira sensor platform."""
 import unittest
-from unittest.mock import MagicMock
 
 from homeassistant.components.kira import sensor as kira
 
+from tests.async_mock import MagicMock
 from tests.common import get_test_home_assistant
 
 TEST_CONFIG = {kira.DOMAIN: {"sensors": [{"host": "127.0.0.1", "port": 17324}]}}
diff --git a/tests/components/lastfm/test_sensor.py b/tests/components/lastfm/test_sensor.py
index c2ce8e947dd..7ae70a6f152 100644
--- a/tests/components/lastfm/test_sensor.py
+++ b/tests/components/lastfm/test_sensor.py
@@ -1,6 +1,4 @@
 """Tests for the lastfm sensor."""
-from unittest.mock import patch
-
 from pylast import Track
 import pytest
 
@@ -8,6 +6,8 @@ from homeassistant.components import sensor
 from homeassistant.components.lastfm.sensor import STATE_NOT_SCROBBLING
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 
 class MockUser:
     """Mock user object for pylast."""
diff --git a/tests/components/light/test_device_condition.py b/tests/components/light/test_device_condition.py
index 24645a32611..998ef7851c1 100644
--- a/tests/components/light/test_device_condition.py
+++ b/tests/components/light/test_device_condition.py
@@ -1,6 +1,5 @@
 """The test for light device automation."""
 from datetime import timedelta
-from unittest.mock import patch
 
 import pytest
 
@@ -11,6 +10,7 @@ from homeassistant.helpers import device_registry
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     MockConfigEntry,
     async_get_device_automation_capabilities,
diff --git a/tests/components/light/test_init.py b/tests/components/light/test_init.py
index e53949ef518..87452d62893 100644
--- a/tests/components/light/test_init.py
+++ b/tests/components/light/test_init.py
@@ -3,7 +3,6 @@
 from io import StringIO
 import os
 import unittest
-import unittest.mock as mock
 
 import pytest
 
@@ -21,6 +20,7 @@ from homeassistant.const import (
 from homeassistant.exceptions import Unauthorized
 from homeassistant.setup import async_setup_component, setup_component
 
+import tests.async_mock as mock
 from tests.common import get_test_home_assistant, mock_service, mock_storage
 from tests.components.light import common
 
diff --git a/tests/components/linky/conftest.py b/tests/components/linky/conftest.py
index f77f01a4ae7..93e3ff78d2b 100644
--- a/tests/components/linky/conftest.py
+++ b/tests/components/linky/conftest.py
@@ -1,8 +1,8 @@
 """Linky generic test utils."""
-from unittest.mock import patch
-
 import pytest
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(autouse=True)
 def patch_fakeuseragent():
diff --git a/tests/components/linky/test_config_flow.py b/tests/components/linky/test_config_flow.py
index 8278a77d4d0..f39f0da7d99 100644
--- a/tests/components/linky/test_config_flow.py
+++ b/tests/components/linky/test_config_flow.py
@@ -1,6 +1,4 @@
 """Tests for the Linky config flow."""
-from unittest.mock import Mock, patch
-
 from pylinky.exceptions import (
     PyLinkyAccessException,
     PyLinkyEnedisException,
@@ -15,6 +13,7 @@ from homeassistant.config_entries import SOURCE_IMPORT, SOURCE_USER
 from homeassistant.const import CONF_PASSWORD, CONF_TIMEOUT, CONF_USERNAME
 from homeassistant.helpers.typing import HomeAssistantType
 
+from tests.async_mock import Mock, patch
 from tests.common import MockConfigEntry
 
 USERNAME = "username@hotmail.fr"
diff --git a/tests/components/locative/test_init.py b/tests/components/locative/test_init.py
index 63ef2e9f5f8..05b6a84cc0c 100644
--- a/tests/components/locative/test_init.py
+++ b/tests/components/locative/test_init.py
@@ -1,6 +1,4 @@
 """The tests the for Locative device tracker platform."""
-from unittest.mock import Mock, patch
-
 import pytest
 
 from homeassistant import data_entry_flow
@@ -11,6 +9,8 @@ from homeassistant.const import HTTP_OK, HTTP_UNPROCESSABLE_ENTITY
 from homeassistant.helpers.dispatcher import DATA_DISPATCHER
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock, patch
+
 # pylint: disable=redefined-outer-name
 
 
diff --git a/tests/components/lovelace/test_dashboard.py b/tests/components/lovelace/test_dashboard.py
index 8509ad37fcd..fb8c909eac5 100644
--- a/tests/components/lovelace/test_dashboard.py
+++ b/tests/components/lovelace/test_dashboard.py
@@ -1,12 +1,11 @@
 """Test the Lovelace initialization."""
-from unittest.mock import patch
-
 import pytest
 
 from homeassistant.components import frontend
 from homeassistant.components.lovelace import const, dashboard
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
 from tests.common import (
     assert_setup_component,
     async_capture_events,
diff --git a/tests/components/luftdaten/test_init.py b/tests/components/luftdaten/test_init.py
index ebe5f73669e..a8ea57cbb6b 100644
--- a/tests/components/luftdaten/test_init.py
+++ b/tests/components/luftdaten/test_init.py
@@ -1,11 +1,11 @@
 """Test the Luftdaten component setup."""
-from unittest.mock import patch
-
 from homeassistant.components import luftdaten
 from homeassistant.components.luftdaten.const import CONF_SENSOR_ID, DOMAIN
 from homeassistant.const import CONF_SCAN_INTERVAL, CONF_SHOW_ON_MAP
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 
 async def test_config_with_sensor_passed_to_config_entry(hass):
     """Test that configured options for a sensor are loaded."""
diff --git a/tests/components/mailgun/test_init.py b/tests/components/mailgun/test_init.py
index 7ed67dcc0d2..8b98772dfcc 100644
--- a/tests/components/mailgun/test_init.py
+++ b/tests/components/mailgun/test_init.py
@@ -1,7 +1,6 @@
 """Test the init file of Mailgun."""
 import hashlib
 import hmac
-from unittest.mock import Mock
 
 import pytest
 
@@ -11,6 +10,8 @@ from homeassistant.const import CONF_API_KEY, CONF_DOMAIN
 from homeassistant.core import callback
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock
+
 API_KEY = "abc123"
 
 
diff --git a/tests/components/manual/test_alarm_control_panel.py b/tests/components/manual/test_alarm_control_panel.py
index 22dceec312b..d3e26597d84 100644
--- a/tests/components/manual/test_alarm_control_panel.py
+++ b/tests/components/manual/test_alarm_control_panel.py
@@ -1,6 +1,5 @@
 """The tests for the manual Alarm Control Panel component."""
 from datetime import timedelta
-from unittest.mock import MagicMock, patch
 
 from homeassistant.components import alarm_control_panel
 from homeassistant.components.demo import alarm_control_panel as demo
@@ -18,6 +17,7 @@ from homeassistant.core import CoreState, State
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import MagicMock, patch
 from tests.common import async_fire_time_changed, mock_component, mock_restore_cache
 from tests.components.alarm_control_panel import common
 
diff --git a/tests/components/manual_mqtt/test_alarm_control_panel.py b/tests/components/manual_mqtt/test_alarm_control_panel.py
index 1ac6bca91c4..bff3818af56 100644
--- a/tests/components/manual_mqtt/test_alarm_control_panel.py
+++ b/tests/components/manual_mqtt/test_alarm_control_panel.py
@@ -1,7 +1,6 @@
 """The tests for the manual_mqtt Alarm Control Panel component."""
 from datetime import timedelta
 import unittest
-from unittest.mock import Mock, patch
 
 from homeassistant.components import alarm_control_panel
 from homeassistant.const import (
@@ -15,6 +14,7 @@ from homeassistant.const import (
 from homeassistant.setup import setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import Mock, patch
 from tests.common import (
     assert_setup_component,
     fire_mqtt_message,
diff --git a/tests/components/melissa/test_climate.py b/tests/components/melissa/test_climate.py
index 00c565aca8c..874cc29ab7a 100644
--- a/tests/components/melissa/test_climate.py
+++ b/tests/components/melissa/test_climate.py
@@ -1,6 +1,5 @@
 """Test for Melissa climate component."""
 import json
-from unittest.mock import Mock, patch
 
 from homeassistant.components.climate.const import (
     HVAC_MODE_COOL,
@@ -16,7 +15,7 @@ from homeassistant.components.melissa import DATA_MELISSA, climate as melissa
 from homeassistant.components.melissa.climate import MelissaClimate
 from homeassistant.const import ATTR_TEMPERATURE, TEMP_CELSIUS
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, Mock, patch
 from tests.common import load_fixture
 
 _SERIAL = "12345678"
diff --git a/tests/components/meteo_france/conftest.py b/tests/components/meteo_france/conftest.py
index 088587ab2c2..75c294775ed 100644
--- a/tests/components/meteo_france/conftest.py
+++ b/tests/components/meteo_france/conftest.py
@@ -1,8 +1,8 @@
 """Meteo-France generic test utils."""
-from unittest.mock import patch
-
 import pytest
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(autouse=True)
 def patch_requests():
diff --git a/tests/components/meteo_france/test_config_flow.py b/tests/components/meteo_france/test_config_flow.py
index f9ead2c1ef3..d4381073209 100644
--- a/tests/components/meteo_france/test_config_flow.py
+++ b/tests/components/meteo_france/test_config_flow.py
@@ -1,6 +1,4 @@
 """Tests for the Meteo-France config flow."""
-from unittest.mock import patch
-
 from meteofrance.client import meteofranceError
 import pytest
 
@@ -8,6 +6,7 @@ from homeassistant import data_entry_flow
 from homeassistant.components.meteo_france.const import CONF_CITY, DOMAIN
 from homeassistant.config_entries import SOURCE_IMPORT, SOURCE_USER
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 CITY_1_POSTAL = "74220"
diff --git a/tests/components/mfi/test_sensor.py b/tests/components/mfi/test_sensor.py
index 05f175fc191..ff9c7fa7182 100644
--- a/tests/components/mfi/test_sensor.py
+++ b/tests/components/mfi/test_sensor.py
@@ -1,6 +1,5 @@
 """The tests for the mFi sensor platform."""
 import unittest
-import unittest.mock as mock
 
 from mficlient.client import FailedToLogin
 import requests
@@ -10,6 +9,7 @@ import homeassistant.components.sensor as sensor
 from homeassistant.const import TEMP_CELSIUS
 from homeassistant.setup import setup_component
 
+import tests.async_mock as mock
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/mfi/test_switch.py b/tests/components/mfi/test_switch.py
index 42469b1b5ac..414e0b8b50b 100644
--- a/tests/components/mfi/test_switch.py
+++ b/tests/components/mfi/test_switch.py
@@ -1,11 +1,11 @@
 """The tests for the mFi switch platform."""
 import unittest
-import unittest.mock as mock
 
 import homeassistant.components.mfi.switch as mfi
 import homeassistant.components.switch as switch
 from homeassistant.setup import setup_component
 
+import tests.async_mock as mock
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/mhz19/test_sensor.py b/tests/components/mhz19/test_sensor.py
index 598144f5a25..05d462f02a0 100644
--- a/tests/components/mhz19/test_sensor.py
+++ b/tests/components/mhz19/test_sensor.py
@@ -1,6 +1,5 @@
 """Tests for MH-Z19 sensor."""
 import unittest
-from unittest.mock import DEFAULT, Mock, patch
 
 import homeassistant.components.mhz19.sensor as mhz19
 from homeassistant.components.sensor import DOMAIN
@@ -11,6 +10,7 @@ from homeassistant.const import (
 )
 from homeassistant.setup import setup_component
 
+from tests.async_mock import DEFAULT, Mock, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/mikrotik/test_config_flow.py b/tests/components/mikrotik/test_config_flow.py
index 37dbfad4d35..b47bb941af4 100644
--- a/tests/components/mikrotik/test_config_flow.py
+++ b/tests/components/mikrotik/test_config_flow.py
@@ -1,6 +1,5 @@
 """Test Mikrotik setup process."""
 from datetime import timedelta
-from unittest.mock import patch
 
 import librouteros
 import pytest
@@ -16,6 +15,7 @@ from homeassistant.const import (
     CONF_VERIFY_SSL,
 )
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 DEMO_USER_INPUT = {
diff --git a/tests/components/minio/test_minio.py b/tests/components/minio/test_minio.py
index a1f3e107152..88f7418d2d4 100644
--- a/tests/components/minio/test_minio.py
+++ b/tests/components/minio/test_minio.py
@@ -1,7 +1,6 @@
 """Tests for Minio Hass related code."""
 import asyncio
 import json
-from unittest.mock import MagicMock
 
 import pytest
 
@@ -19,7 +18,7 @@ from homeassistant.components.minio import (
 from homeassistant.core import callback
 from homeassistant.setup import async_setup_component
 
-from tests.async_mock import call, patch
+from tests.async_mock import MagicMock, call, patch
 from tests.components.minio.common import TEST_EVENT
 
 
diff --git a/tests/components/mochad/test_light.py b/tests/components/mochad/test_light.py
index 631c5b40734..2dd385f0253 100644
--- a/tests/components/mochad/test_light.py
+++ b/tests/components/mochad/test_light.py
@@ -1,6 +1,5 @@
 """The tests for the mochad light platform."""
 import unittest
-import unittest.mock as mock
 
 import pytest
 
@@ -8,6 +7,7 @@ from homeassistant.components import light
 from homeassistant.components.mochad import light as mochad
 from homeassistant.setup import setup_component
 
+import tests.async_mock as mock
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/mochad/test_switch.py b/tests/components/mochad/test_switch.py
index aa6ce354a32..699edfe899c 100644
--- a/tests/components/mochad/test_switch.py
+++ b/tests/components/mochad/test_switch.py
@@ -1,6 +1,5 @@
 """The tests for the mochad switch platform."""
 import unittest
-import unittest.mock as mock
 
 import pytest
 
@@ -8,6 +7,7 @@ from homeassistant.components import switch
 from homeassistant.components.mochad import switch as mochad
 from homeassistant.setup import setup_component
 
+import tests.async_mock as mock
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/moon/test_sensor.py b/tests/components/moon/test_sensor.py
index 1e19d0a4d83..89d5a8f798c 100644
--- a/tests/components/moon/test_sensor.py
+++ b/tests/components/moon/test_sensor.py
@@ -1,11 +1,11 @@
 """The test for the moon sensor platform."""
 from datetime import datetime
 import unittest
-from unittest.mock import patch
 
 from homeassistant.setup import setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 DAY1 = datetime(2017, 1, 1, 1, tzinfo=dt_util.UTC)
diff --git a/tests/components/mqtt/test_binary_sensor.py b/tests/components/mqtt/test_binary_sensor.py
index 11fb073f57a..7c07abb8d35 100644
--- a/tests/components/mqtt/test_binary_sensor.py
+++ b/tests/components/mqtt/test_binary_sensor.py
@@ -2,7 +2,6 @@
 import copy
 from datetime import datetime, timedelta
 import json
-from unittest.mock import patch
 
 from homeassistant.components import binary_sensor, mqtt
 from homeassistant.components.mqtt.discovery import async_start
@@ -38,6 +37,7 @@ from .test_common import (
     help_test_update_with_json_attrs_not_dict,
 )
 
+from tests.async_mock import patch
 from tests.common import (
     MockConfigEntry,
     async_fire_mqtt_message,
diff --git a/tests/components/mqtt/test_climate.py b/tests/components/mqtt/test_climate.py
index 1d485c4be13..9ae13a426b9 100644
--- a/tests/components/mqtt/test_climate.py
+++ b/tests/components/mqtt/test_climate.py
@@ -1,7 +1,6 @@
 """The tests for the mqtt climate component."""
 import copy
 import json
-import unittest
 
 import pytest
 import voluptuous as vol
@@ -47,6 +46,7 @@ from .test_common import (
     help_test_update_with_json_attrs_not_dict,
 )
 
+from tests.async_mock import call
 from tests.common import async_fire_mqtt_message, async_setup_component
 from tests.components.climate import common
 
@@ -180,10 +180,7 @@ async def test_set_operation_with_power_command(hass, mqtt_mock):
     state = hass.states.get(ENTITY_CLIMATE)
     assert state.state == "cool"
     mqtt_mock.async_publish.assert_has_calls(
-        [
-            unittest.mock.call("power-command", "ON", 0, False),
-            unittest.mock.call("mode-topic", "cool", 0, False),
-        ]
+        [call("power-command", "ON", 0, False), call("mode-topic", "cool", 0, False)]
     )
     mqtt_mock.async_publish.reset_mock()
 
@@ -191,10 +188,7 @@ async def test_set_operation_with_power_command(hass, mqtt_mock):
     state = hass.states.get(ENTITY_CLIMATE)
     assert state.state == "off"
     mqtt_mock.async_publish.assert_has_calls(
-        [
-            unittest.mock.call("power-command", "OFF", 0, False),
-            unittest.mock.call("mode-topic", "off", 0, False),
-        ]
+        [call("power-command", "OFF", 0, False), call("mode-topic", "off", 0, False)]
     )
     mqtt_mock.async_publish.reset_mock()
 
@@ -322,10 +316,7 @@ async def test_set_target_temperature(hass, mqtt_mock):
     assert state.state == "cool"
     assert state.attributes.get("temperature") == 21
     mqtt_mock.async_publish.assert_has_calls(
-        [
-            unittest.mock.call("mode-topic", "cool", 0, False),
-            unittest.mock.call("temperature-topic", 21, 0, False),
-        ]
+        [call("mode-topic", "cool", 0, False), call("temperature-topic", 21, 0, False)]
     )
     mqtt_mock.async_publish.reset_mock()
 
@@ -465,10 +456,7 @@ async def test_set_away_mode(hass, mqtt_mock):
 
     await common.async_set_preset_mode(hass, "away", ENTITY_CLIMATE)
     mqtt_mock.async_publish.assert_has_calls(
-        [
-            unittest.mock.call("hold-topic", "off", 0, False),
-            unittest.mock.call("away-mode-topic", "AN", 0, False),
-        ]
+        [call("hold-topic", "off", 0, False), call("away-mode-topic", "AN", 0, False)]
     )
     state = hass.states.get(ENTITY_CLIMATE)
     assert state.attributes.get("preset_mode") == "away"
diff --git a/tests/components/mqtt/test_common.py b/tests/components/mqtt/test_common.py
index 949d77c244d..4bc3bc1a937 100644
--- a/tests/components/mqtt/test_common.py
+++ b/tests/components/mqtt/test_common.py
@@ -3,13 +3,13 @@ import copy
 from datetime import datetime
 import json
 from unittest import mock
-from unittest.mock import ANY
 
 from homeassistant.components import mqtt
 from homeassistant.components.mqtt import debug_info
 from homeassistant.components.mqtt.discovery import async_start
 from homeassistant.const import ATTR_ASSUMED_STATE, STATE_UNAVAILABLE
 
+from tests.async_mock import ANY
 from tests.common import (
     MockConfigEntry,
     async_fire_mqtt_message,
diff --git a/tests/components/mqtt/test_discovery.py b/tests/components/mqtt/test_discovery.py
index 9d8ede4f516..8c75d77efb8 100644
--- a/tests/components/mqtt/test_discovery.py
+++ b/tests/components/mqtt/test_discovery.py
@@ -1,7 +1,6 @@
 """The tests for the MQTT discovery."""
 from pathlib import Path
 import re
-from unittest.mock import patch
 
 import pytest
 
@@ -13,7 +12,7 @@ from homeassistant.components.mqtt.abbreviations import (
 from homeassistant.components.mqtt.discovery import ALREADY_DISCOVERED, async_start
 from homeassistant.const import STATE_OFF, STATE_ON
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, patch
 from tests.common import (
     MockConfigEntry,
     async_fire_mqtt_message,
diff --git a/tests/components/mqtt/test_sensor.py b/tests/components/mqtt/test_sensor.py
index 34d3c33f8d7..1acc7656a8b 100644
--- a/tests/components/mqtt/test_sensor.py
+++ b/tests/components/mqtt/test_sensor.py
@@ -1,7 +1,6 @@
 """The tests for the MQTT sensor platform."""
 from datetime import datetime, timedelta
 import json
-from unittest.mock import patch
 
 from homeassistant.components import mqtt
 from homeassistant.components.mqtt.discovery import async_start
@@ -37,6 +36,7 @@ from .test_common import (
     help_test_update_with_json_attrs_not_dict,
 )
 
+from tests.async_mock import patch
 from tests.common import (
     MockConfigEntry,
     async_fire_mqtt_message,
diff --git a/tests/components/mqtt_eventstream/test_init.py b/tests/components/mqtt_eventstream/test_init.py
index eeeab823744..8050535eed4 100644
--- a/tests/components/mqtt_eventstream/test_init.py
+++ b/tests/components/mqtt_eventstream/test_init.py
@@ -1,6 +1,5 @@
 """The tests for the MQTT eventstream component."""
 import json
-from unittest.mock import ANY, patch
 
 import pytest
 
@@ -11,6 +10,7 @@ from homeassistant.helpers.json import JSONEncoder
 from homeassistant.setup import setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import ANY, patch
 from tests.common import (
     fire_mqtt_message,
     fire_time_changed,
diff --git a/tests/components/mqtt_room/test_sensor.py b/tests/components/mqtt_room/test_sensor.py
index b3155e563f4..f11786951f6 100644
--- a/tests/components/mqtt_room/test_sensor.py
+++ b/tests/components/mqtt_room/test_sensor.py
@@ -1,7 +1,6 @@
 """The tests for the MQTT room presence sensor."""
 import datetime
 import json
-from unittest.mock import patch
 
 from homeassistant.components.mqtt import CONF_QOS, CONF_STATE_TOPIC, DEFAULT_QOS
 import homeassistant.components.sensor as sensor
@@ -9,6 +8,7 @@ from homeassistant.const import CONF_NAME, CONF_PLATFORM
 from homeassistant.setup import async_setup_component
 from homeassistant.util import dt
 
+from tests.async_mock import patch
 from tests.common import async_fire_mqtt_message, async_mock_mqtt_component
 
 DEVICE_ID = "123TESTMAC"
diff --git a/tests/components/mqtt_statestream/test_init.py b/tests/components/mqtt_statestream/test_init.py
index 6be413294f1..aa9ef0d5de8 100644
--- a/tests/components/mqtt_statestream/test_init.py
+++ b/tests/components/mqtt_statestream/test_init.py
@@ -1,12 +1,11 @@
 """The tests for the MQTT statestream component."""
-from unittest.mock import ANY, call, patch
-
 import pytest
 
 import homeassistant.components.mqtt_statestream as statestream
 from homeassistant.core import State
 from homeassistant.setup import setup_component
 
+from tests.async_mock import ANY, call, patch
 from tests.common import (
     get_test_home_assistant,
     mock_mqtt_component,
diff --git a/tests/components/neato/test_config_flow.py b/tests/components/neato/test_config_flow.py
index 59db79c1052..be69e0853ad 100644
--- a/tests/components/neato/test_config_flow.py
+++ b/tests/components/neato/test_config_flow.py
@@ -1,6 +1,4 @@
 """Tests for the Neato config flow."""
-from unittest.mock import patch
-
 from pybotvac.exceptions import NeatoLoginException, NeatoRobotException
 import pytest
 
@@ -9,6 +7,7 @@ from homeassistant.components.neato import config_flow
 from homeassistant.components.neato.const import CONF_VENDOR, NEATO_DOMAIN
 from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 USERNAME = "myUsername"
diff --git a/tests/components/neato/test_init.py b/tests/components/neato/test_init.py
index 8fa6ad05945..182ef98e529 100644
--- a/tests/components/neato/test_init.py
+++ b/tests/components/neato/test_init.py
@@ -1,6 +1,4 @@
 """Tests for the Neato init file."""
-from unittest.mock import patch
-
 from pybotvac.exceptions import NeatoLoginException
 import pytest
 
@@ -8,6 +6,7 @@ from homeassistant.components.neato.const import CONF_VENDOR, NEATO_DOMAIN
 from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 USERNAME = "myUsername"
diff --git a/tests/components/nextbus/test_sensor.py b/tests/components/nextbus/test_sensor.py
index bee9db445e2..dd709618ec0 100644
--- a/tests/components/nextbus/test_sensor.py
+++ b/tests/components/nextbus/test_sensor.py
@@ -1,12 +1,12 @@
 """The tests for the nexbus sensor component."""
 from copy import deepcopy
-from unittest.mock import patch
 
 import pytest
 
 import homeassistant.components.nextbus.sensor as nextbus
 import homeassistant.components.sensor as sensor
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, async_setup_component
 
 VALID_AGENCY = "sf-muni"
diff --git a/tests/components/nsw_fuel_station/test_sensor.py b/tests/components/nsw_fuel_station/test_sensor.py
index 11a3d469a59..2d348204dcc 100644
--- a/tests/components/nsw_fuel_station/test_sensor.py
+++ b/tests/components/nsw_fuel_station/test_sensor.py
@@ -1,10 +1,10 @@
 """The tests for the NSW Fuel Station sensor platform."""
 import unittest
-from unittest.mock import patch
 
 from homeassistant.components import sensor
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 VALID_CONFIG = {
diff --git a/tests/components/nsw_rural_fire_service_feed/test_geo_location.py b/tests/components/nsw_rural_fire_service_feed/test_geo_location.py
index a5167104d48..584616967c4 100644
--- a/tests/components/nsw_rural_fire_service_feed/test_geo_location.py
+++ b/tests/components/nsw_rural_fire_service_feed/test_geo_location.py
@@ -1,6 +1,5 @@
 """The tests for the NSW Rural Fire Service Feeds platform."""
 import datetime
-from unittest.mock import ANY
 
 from aio_geojson_nsw_rfs_incidents import NswRuralFireServiceIncidentsFeed
 
@@ -36,7 +35,7 @@ from homeassistant.const import (
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
-from tests.async_mock import MagicMock, call, patch
+from tests.async_mock import ANY, MagicMock, call, patch
 from tests.common import assert_setup_component, async_fire_time_changed
 
 CONFIG = {
diff --git a/tests/components/nuheat/test_init.py b/tests/components/nuheat/test_init.py
index 01128610462..4a7a8673230 100644
--- a/tests/components/nuheat/test_init.py
+++ b/tests/components/nuheat/test_init.py
@@ -1,11 +1,11 @@
 """NuHeat component tests."""
-from unittest.mock import patch
-
 from homeassistant.components.nuheat.const import DOMAIN
 from homeassistant.setup import async_setup_component
 
 from .mocks import _get_mock_nuheat
 
+from tests.async_mock import patch
+
 VALID_CONFIG = {
     "nuheat": {"username": "warm", "password": "feet", "devices": "thermostat123"}
 }
diff --git a/tests/components/nws/conftest.py b/tests/components/nws/conftest.py
index ac8428ddf48..74f84eb200c 100644
--- a/tests/components/nws/conftest.py
+++ b/tests/components/nws/conftest.py
@@ -1,9 +1,7 @@
 """Fixtures for National Weather Service tests."""
-from unittest.mock import patch
-
 import pytest
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, patch
 from tests.components.nws.const import DEFAULT_FORECAST, DEFAULT_OBSERVATION
 
 
diff --git a/tests/components/onboarding/test_views.py b/tests/components/onboarding/test_views.py
index 91ed8d7ae5c..7deda0e7edc 100644
--- a/tests/components/onboarding/test_views.py
+++ b/tests/components/onboarding/test_views.py
@@ -1,6 +1,5 @@
 """Test the onboarding views."""
 import asyncio
-from unittest.mock import patch
 
 import pytest
 
@@ -11,6 +10,7 @@ from homeassistant.setup import async_setup_component
 
 from . import mock_storage
 
+from tests.async_mock import patch
 from tests.common import CLIENT_ID, register_auth_provider
 from tests.components.met.conftest import mock_weather  # noqa: F401
 
diff --git a/tests/components/openerz/test_sensor.py b/tests/components/openerz/test_sensor.py
index 24a0f0610af..e616ea4fe4e 100644
--- a/tests/components/openerz/test_sensor.py
+++ b/tests/components/openerz/test_sensor.py
@@ -1,9 +1,9 @@
 """Tests for OpenERZ component."""
-from unittest.mock import MagicMock, patch
-
 from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import MagicMock, patch
+
 MOCK_CONFIG = {
     "sensor": {
         "platform": "openerz",
diff --git a/tests/components/owntracks/test_helper.py b/tests/components/owntracks/test_helper.py
index 2c06ac0c4e7..6d5139caa14 100644
--- a/tests/components/owntracks/test_helper.py
+++ b/tests/components/owntracks/test_helper.py
@@ -1,10 +1,10 @@
 """Test the owntracks_http platform."""
-from unittest.mock import patch
-
 import pytest
 
 from homeassistant.components.owntracks import helper
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(name="nacl_imported")
 def mock_nacl_imported():
diff --git a/tests/components/panasonic_viera/test_config_flow.py b/tests/components/panasonic_viera/test_config_flow.py
index cc7c3f58e82..0e7731dbdc0 100644
--- a/tests/components/panasonic_viera/test_config_flow.py
+++ b/tests/components/panasonic_viera/test_config_flow.py
@@ -1,6 +1,4 @@
 """Test the Panasonic Viera config flow."""
-from unittest.mock import Mock
-
 from panasonic_viera import TV_TYPE_ENCRYPTED, TV_TYPE_NONENCRYPTED, SOAPError
 import pytest
 
@@ -19,7 +17,7 @@ from homeassistant.components.panasonic_viera.const import (
 )
 from homeassistant.const import CONF_HOST, CONF_NAME, CONF_PIN, CONF_PORT
 
-from tests.async_mock import patch
+from tests.async_mock import Mock, patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/panasonic_viera/test_init.py b/tests/components/panasonic_viera/test_init.py
index 3e02ac3703a..263f2def9af 100644
--- a/tests/components/panasonic_viera/test_init.py
+++ b/tests/components/panasonic_viera/test_init.py
@@ -1,6 +1,4 @@
 """Test the Panasonic Viera setup process."""
-from unittest.mock import Mock
-
 from asynctest import patch
 
 from homeassistant.components.panasonic_viera.const import (
@@ -15,6 +13,7 @@ from homeassistant.config_entries import ENTRY_STATE_NOT_LOADED
 from homeassistant.const import CONF_HOST, CONF_NAME, CONF_PORT
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock
 from tests.common import MockConfigEntry
 
 MOCK_CONFIG_DATA = {
diff --git a/tests/components/panel_custom/test_init.py b/tests/components/panel_custom/test_init.py
index 5f7161089f6..c2abd673065 100644
--- a/tests/components/panel_custom/test_init.py
+++ b/tests/components/panel_custom/test_init.py
@@ -1,9 +1,9 @@
 """The tests for the panel_custom component."""
-from unittest.mock import Mock, patch
-
 from homeassistant import setup
 from homeassistant.components import frontend
 
+from tests.async_mock import Mock, patch
+
 
 async def test_webcomponent_custom_path_not_found(hass):
     """Test if a web component is found in config panels dir."""
diff --git a/tests/components/pi_hole/test_init.py b/tests/components/pi_hole/test_init.py
index 236e8eadde8..3ff16001d86 100644
--- a/tests/components/pi_hole/test_init.py
+++ b/tests/components/pi_hole/test_init.py
@@ -1,10 +1,8 @@
 """Test pi_hole component."""
 
-from unittest.mock import patch
-
 from homeassistant.components import pi_hole
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, patch
 from tests.common import async_setup_component
 
 ZERO_DATA = {
diff --git a/tests/components/pilight/test_init.py b/tests/components/pilight/test_init.py
index d9b4f4859bb..53b1ec3a94d 100644
--- a/tests/components/pilight/test_init.py
+++ b/tests/components/pilight/test_init.py
@@ -3,7 +3,6 @@ from datetime import timedelta
 import logging
 import socket
 import unittest
-from unittest.mock import patch
 
 import pytest
 
@@ -12,6 +11,7 @@ from homeassistant.components import pilight
 from homeassistant.setup import setup_component
 from homeassistant.util import dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 _LOGGER = logging.getLogger(__name__)
@@ -109,7 +109,7 @@ class TestPilight(unittest.TestCase):
 
     @patch("pilight.pilight.Client", PilightDaemonSim)
     @patch("homeassistant.core._LOGGER.error")
-    @patch("tests.components.test_pilight._LOGGER.error")
+    @patch("homeassistant.components.pilight._LOGGER.error")
     def test_send_code_no_protocol(self, mock_pilight_error, mock_error):
         """Try to send data without protocol information, should give error."""
         with assert_setup_component(4):
@@ -127,7 +127,7 @@ class TestPilight(unittest.TestCase):
             assert "required key not provided @ data['protocol']" in str(error_log_call)
 
     @patch("pilight.pilight.Client", PilightDaemonSim)
-    @patch("tests.components.test_pilight._LOGGER.error")
+    @patch("homeassistant.components.pilight._LOGGER.error")
     def test_send_code(self, mock_pilight_error):
         """Try to send proper data."""
         with assert_setup_component(4):
@@ -167,7 +167,7 @@ class TestPilight(unittest.TestCase):
                 assert "Pilight send failed" in str(error_log_call)
 
     @patch("pilight.pilight.Client", PilightDaemonSim)
-    @patch("tests.components.test_pilight._LOGGER.error")
+    @patch("homeassistant.components.pilight._LOGGER.error")
     def test_send_code_delay(self, mock_pilight_error):
         """Try to send proper data with delay afterwards."""
         with assert_setup_component(4):
@@ -207,7 +207,7 @@ class TestPilight(unittest.TestCase):
             assert str(service_data2) in str(error_log_call)
 
     @patch("pilight.pilight.Client", PilightDaemonSim)
-    @patch("tests.components.test_pilight._LOGGER.error")
+    @patch("homeassistant.components.pilight._LOGGER.error")
     def test_start_stop(self, mock_pilight_error):
         """Check correct startup and stop of pilight daemon."""
         with assert_setup_component(4):
diff --git a/tests/components/ptvsd/test_ptvsd.py b/tests/components/ptvsd/test_ptvsd.py
index 9df686cfcbd..93e1bb540db 100644
--- a/tests/components/ptvsd/test_ptvsd.py
+++ b/tests/components/ptvsd/test_ptvsd.py
@@ -1,14 +1,12 @@
 """Tests for PTVSD Debugger."""
 
-from unittest.mock import patch
-
 from pytest import mark
 
 from homeassistant.bootstrap import _async_set_up_integrations
 import homeassistant.components.ptvsd as ptvsd_component
 from homeassistant.setup import async_setup_component
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, patch
 
 
 @mark.skip("causes code cover to fail")
diff --git a/tests/components/pushbullet/test_notify.py b/tests/components/pushbullet/test_notify.py
index 4c731c1f704..930d9261f9c 100644
--- a/tests/components/pushbullet/test_notify.py
+++ b/tests/components/pushbullet/test_notify.py
@@ -1,7 +1,6 @@
 """The tests for the pushbullet notification platform."""
 import json
 import unittest
-from unittest.mock import patch
 
 from pushbullet import PushBullet
 import requests_mock
@@ -9,6 +8,7 @@ import requests_mock
 import homeassistant.components.notify as notify
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant, load_fixture
 
 
diff --git a/tests/components/pvpc_hourly_pricing/test_config_flow.py b/tests/components/pvpc_hourly_pricing/test_config_flow.py
index fbbe87fee5f..d76f74f64a1 100644
--- a/tests/components/pvpc_hourly_pricing/test_config_flow.py
+++ b/tests/components/pvpc_hourly_pricing/test_config_flow.py
@@ -1,6 +1,5 @@
 """Tests for the pvpc_hourly_pricing config_flow."""
 from datetime import datetime
-from unittest.mock import patch
 
 from pytz import timezone
 
@@ -11,6 +10,7 @@ from homeassistant.helpers import entity_registry
 
 from .conftest import check_valid_state
 
+from tests.async_mock import patch
 from tests.common import date_util
 from tests.test_util.aiohttp import AiohttpClientMocker
 
diff --git a/tests/components/pvpc_hourly_pricing/test_sensor.py b/tests/components/pvpc_hourly_pricing/test_sensor.py
index fdab7fd1008..7ef50113de5 100644
--- a/tests/components/pvpc_hourly_pricing/test_sensor.py
+++ b/tests/components/pvpc_hourly_pricing/test_sensor.py
@@ -1,7 +1,6 @@
 """Tests for the pvpc_hourly_pricing sensor component."""
 from datetime import datetime, timedelta
 import logging
-from unittest.mock import patch
 
 from pytz import timezone
 
@@ -11,6 +10,7 @@ from homeassistant.core import ATTR_NOW, EVENT_TIME_CHANGED
 
 from .conftest import check_valid_state
 
+from tests.async_mock import patch
 from tests.common import async_setup_component, date_util
 from tests.test_util.aiohttp import AiohttpClientMocker
 
diff --git a/tests/components/python_script/test_init.py b/tests/components/python_script/test_init.py
index d122fef0bd2..90d2ac67faf 100644
--- a/tests/components/python_script/test_init.py
+++ b/tests/components/python_script/test_init.py
@@ -1,11 +1,11 @@
 """Test the python_script component."""
 import logging
-from unittest.mock import mock_open, patch
 
 from homeassistant.components.python_script import DOMAIN, FOLDER, execute
 from homeassistant.helpers.service import async_get_all_descriptions
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import mock_open, patch
 from tests.common import patch_yaml_files
 
 
diff --git a/tests/components/qld_bushfire/test_geo_location.py b/tests/components/qld_bushfire/test_geo_location.py
index afcd2f11802..15518afbc2d 100644
--- a/tests/components/qld_bushfire/test_geo_location.py
+++ b/tests/components/qld_bushfire/test_geo_location.py
@@ -1,6 +1,5 @@
 """The tests for the Queensland Bushfire Alert Feed platform."""
 import datetime
-from unittest.mock import MagicMock, call, patch
 
 from homeassistant.components import geo_location
 from homeassistant.components.geo_location import ATTR_SOURCE
@@ -28,6 +27,7 @@ from homeassistant.const import (
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import MagicMock, call, patch
 from tests.common import assert_setup_component, async_fire_time_changed
 
 CONFIG = {geo_location.DOMAIN: [{"platform": "qld_bushfire", CONF_RADIUS: 200}]}
diff --git a/tests/components/radarr/test_sensor.py b/tests/components/radarr/test_sensor.py
index c18476a92a9..0e76e99e721 100644
--- a/tests/components/radarr/test_sensor.py
+++ b/tests/components/radarr/test_sensor.py
@@ -6,6 +6,7 @@ import pytest
 import homeassistant.components.radarr.sensor as radarr
 from homeassistant.const import DATA_GIGABYTES
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 
@@ -212,7 +213,7 @@ class TestRadarrSetup(unittest.TestCase):
         """Stop everything that was started."""
         self.hass.stop()
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_diskspace_no_paths(self, req_mock):
         """Test getting all disk space."""
         config = {
@@ -232,7 +233,7 @@ class TestRadarrSetup(unittest.TestCase):
             assert "Radarr Disk Space" == device.name
             assert "263.10/465.42GB (56.53%)" == device.device_state_attributes["/data"]
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_diskspace_paths(self, req_mock):
         """Test getting diskspace for included paths."""
         config = {
@@ -252,7 +253,7 @@ class TestRadarrSetup(unittest.TestCase):
             assert "Radarr Disk Space" == device.name
             assert "263.10/465.42GB (56.53%)" == device.device_state_attributes["/data"]
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_commands(self, req_mock):
         """Test getting running commands."""
         config = {
@@ -272,7 +273,7 @@ class TestRadarrSetup(unittest.TestCase):
             assert "Radarr Commands" == device.name
             assert "pending" == device.device_state_attributes["RescanMovie"]
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_movies(self, req_mock):
         """Test getting the number of movies."""
         config = {
@@ -292,7 +293,7 @@ class TestRadarrSetup(unittest.TestCase):
             assert "Radarr Movies" == device.name
             assert "false" == device.device_state_attributes["Assassin's Creed (2016)"]
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_upcoming_multiple_days(self, req_mock):
         """Test the upcoming movies for multiple days."""
         config = {
@@ -316,7 +317,7 @@ class TestRadarrSetup(unittest.TestCase):
             )
 
     @pytest.mark.skip
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_upcoming_today(self, req_mock):
         """Test filtering for a single day.
 
@@ -342,7 +343,7 @@ class TestRadarrSetup(unittest.TestCase):
                 == device.device_state_attributes["Resident Evil (2017)"]
             )
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_system_status(self, req_mock):
         """Test the getting of the system status."""
         config = {
@@ -362,7 +363,7 @@ class TestRadarrSetup(unittest.TestCase):
             assert "4.8.13.1" == device.device_state_attributes["osVersion"]
 
     @pytest.mark.skip
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_ssl(self, req_mock):
         """Test SSL being enabled."""
         config = {
@@ -387,7 +388,7 @@ class TestRadarrSetup(unittest.TestCase):
                 == device.device_state_attributes["Resident Evil (2017)"]
             )
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_exception)
+    @patch("requests.get", side_effect=mocked_exception)
     def test_exception_handling(self, req_mock):
         """Test exception being handled."""
         config = {
diff --git a/tests/components/random/test_binary_sensor.py b/tests/components/random/test_binary_sensor.py
index a11b571dd83..975da102ca6 100644
--- a/tests/components/random/test_binary_sensor.py
+++ b/tests/components/random/test_binary_sensor.py
@@ -1,9 +1,9 @@
 """The test for the Random binary sensor platform."""
 import unittest
-from unittest.mock import patch
 
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/recorder/test_init.py b/tests/components/recorder/test_init.py
index 34e0231d75a..1931a367ee8 100644
--- a/tests/components/recorder/test_init.py
+++ b/tests/components/recorder/test_init.py
@@ -2,7 +2,6 @@
 # pylint: disable=protected-access
 from datetime import datetime, timedelta
 import unittest
-from unittest.mock import patch
 
 import pytest
 
@@ -17,6 +16,7 @@ from homeassistant.util import dt as dt_util
 
 from .common import wait_recording_done
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, init_recorder_component
 
 
diff --git a/tests/components/recorder/test_migrate.py b/tests/components/recorder/test_migrate.py
index d10dad43d75..d3cf69fc994 100644
--- a/tests/components/recorder/test_migrate.py
+++ b/tests/components/recorder/test_migrate.py
@@ -1,7 +1,4 @@
 """The tests for the Recorder component."""
-# pylint: disable=protected-access
-from unittest.mock import call, patch
-
 import pytest
 from sqlalchemy import create_engine
 from sqlalchemy.pool import StaticPool
@@ -9,6 +6,8 @@ from sqlalchemy.pool import StaticPool
 from homeassistant.bootstrap import async_setup_component
 from homeassistant.components.recorder import const, migration, models
 
+# pylint: disable=protected-access
+from tests.async_mock import call, patch
 from tests.components.recorder import models_original
 
 
diff --git a/tests/components/recorder/test_purge.py b/tests/components/recorder/test_purge.py
index e0993b8cffc..4ec08c432b0 100644
--- a/tests/components/recorder/test_purge.py
+++ b/tests/components/recorder/test_purge.py
@@ -2,7 +2,6 @@
 from datetime import datetime, timedelta
 import json
 import unittest
-from unittest.mock import patch
 
 from homeassistant.components import recorder
 from homeassistant.components.recorder.const import DATA_INSTANCE
@@ -10,6 +9,7 @@ from homeassistant.components.recorder.models import Events, States
 from homeassistant.components.recorder.purge import purge_old_data
 from homeassistant.components.recorder.util import session_scope
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, init_recorder_component
 
 
diff --git a/tests/components/recorder/test_util.py b/tests/components/recorder/test_util.py
index eca146f3efa..8de5acd78db 100644
--- a/tests/components/recorder/test_util.py
+++ b/tests/components/recorder/test_util.py
@@ -1,11 +1,10 @@
 """Test util methods."""
-from unittest.mock import MagicMock, patch
-
 import pytest
 
 from homeassistant.components.recorder import util
 from homeassistant.components.recorder.const import DATA_INSTANCE
 
+from tests.async_mock import MagicMock, patch
 from tests.common import get_test_home_assistant, init_recorder_component
 
 
diff --git a/tests/components/reddit/test_sensor.py b/tests/components/reddit/test_sensor.py
index 51de8229347..c2620aa906d 100644
--- a/tests/components/reddit/test_sensor.py
+++ b/tests/components/reddit/test_sensor.py
@@ -1,7 +1,6 @@
 """The tests for the Reddit platform."""
 import copy
 import unittest
-from unittest.mock import patch
 
 from homeassistant.components.reddit.sensor import (
     ATTR_BODY,
@@ -19,6 +18,7 @@ from homeassistant.components.reddit.sensor import (
 from homeassistant.const import CONF_MAXIMUM, CONF_PASSWORD, CONF_USERNAME
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 VALID_CONFIG = {
diff --git a/tests/components/remember_the_milk/test_init.py b/tests/components/remember_the_milk/test_init.py
index ba1c24cf6f8..2bba18f0052 100644
--- a/tests/components/remember_the_milk/test_init.py
+++ b/tests/components/remember_the_milk/test_init.py
@@ -3,10 +3,10 @@
 import json
 import logging
 import unittest
-from unittest.mock import Mock, mock_open, patch
 
 import homeassistant.components.remember_the_milk as rtm
 
+from tests.async_mock import Mock, mock_open, patch
 from tests.common import get_test_home_assistant
 
 _LOGGER = logging.getLogger(__name__)
diff --git a/tests/components/rest/test_binary_sensor.py b/tests/components/rest/test_binary_sensor.py
index a4850793ca7..65ae36c3843 100644
--- a/tests/components/rest/test_binary_sensor.py
+++ b/tests/components/rest/test_binary_sensor.py
@@ -1,6 +1,5 @@
 """The tests for the REST binary sensor platform."""
 import unittest
-from unittest.mock import Mock, patch
 
 import pytest
 from pytest import raises
@@ -15,6 +14,7 @@ from homeassistant.exceptions import PlatformNotReady
 from homeassistant.helpers import template
 from homeassistant.setup import setup_component
 
+from tests.async_mock import Mock, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/rest/test_sensor.py b/tests/components/rest/test_sensor.py
index cd2a911292c..c3ed8cea1b9 100644
--- a/tests/components/rest/test_sensor.py
+++ b/tests/components/rest/test_sensor.py
@@ -1,6 +1,5 @@
 """The tests for the REST sensor platform."""
 import unittest
-from unittest.mock import Mock, patch
 
 import pytest
 from pytest import raises
@@ -16,6 +15,7 @@ from homeassistant.exceptions import PlatformNotReady
 from homeassistant.helpers.config_validation import template
 from homeassistant.setup import setup_component
 
+from tests.async_mock import Mock, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/rflink/test_binary_sensor.py b/tests/components/rflink/test_binary_sensor.py
index 788e6d4981f..6a5a0b7f0e2 100644
--- a/tests/components/rflink/test_binary_sensor.py
+++ b/tests/components/rflink/test_binary_sensor.py
@@ -5,7 +5,6 @@ Test setup of rflink sensor component/platform. Verify manual and
 automatic sensor creation.
 """
 from datetime import timedelta
-from unittest.mock import patch
 
 from homeassistant.components.rflink import CONF_RECONNECT_INTERVAL
 from homeassistant.const import (
@@ -17,6 +16,7 @@ from homeassistant.const import (
 import homeassistant.core as ha
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import async_fire_time_changed
 from tests.components.rflink.test_init import mock_rflink
 
diff --git a/tests/components/rflink/test_init.py b/tests/components/rflink/test_init.py
index 5946adc90a6..fdc60ca7262 100644
--- a/tests/components/rflink/test_init.py
+++ b/tests/components/rflink/test_init.py
@@ -1,7 +1,5 @@
 """Common functions for RFLink component tests and generic platform tests."""
 
-from unittest.mock import Mock
-
 import pytest
 from voluptuous.error import MultipleInvalid
 
@@ -17,6 +15,8 @@ from homeassistant.components.rflink import (
 )
 from homeassistant.const import ATTR_ENTITY_ID, SERVICE_STOP_COVER, SERVICE_TURN_OFF
 
+from tests.async_mock import Mock
+
 
 async def mock_rflink(
     hass, config, domain, monkeypatch, failures=None, failcommand=False
diff --git a/tests/components/ring/common.py b/tests/components/ring/common.py
index 93a6e4f91e0..39b5c339677 100644
--- a/tests/components/ring/common.py
+++ b/tests/components/ring/common.py
@@ -1,9 +1,8 @@
 """Common methods used across the tests for ring devices."""
-from unittest.mock import patch
-
 from homeassistant.components.ring import DOMAIN
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/ring/test_binary_sensor.py b/tests/components/ring/test_binary_sensor.py
index 0b73c739503..8edaf2c229b 100644
--- a/tests/components/ring/test_binary_sensor.py
+++ b/tests/components/ring/test_binary_sensor.py
@@ -1,9 +1,10 @@
 """The tests for the Ring binary sensor platform."""
 from time import time
-from unittest.mock import patch
 
 from .common import setup_platform
 
+from tests.async_mock import patch
+
 
 async def test_binary_sensor(hass, requests_mock):
     """Test the Ring binary sensors."""
diff --git a/tests/components/script/test_init.py b/tests/components/script/test_init.py
index e4a4d4ca239..8dbe43a25ff 100644
--- a/tests/components/script/test_init.py
+++ b/tests/components/script/test_init.py
@@ -1,7 +1,6 @@
 """The tests for the Script component."""
 # pylint: disable=protected-access
 import unittest
-from unittest.mock import Mock, patch
 
 import pytest
 
@@ -22,6 +21,7 @@ from homeassistant.helpers.service import async_get_all_descriptions
 from homeassistant.loader import bind_hass
 from homeassistant.setup import async_setup_component, setup_component
 
+from tests.async_mock import Mock, patch
 from tests.common import get_test_home_assistant
 
 ENTITY_ID = "script.test"
diff --git a/tests/components/signal_messenger/test_notify.py b/tests/components/signal_messenger/test_notify.py
index dbfd19795e8..a44be249f22 100644
--- a/tests/components/signal_messenger/test_notify.py
+++ b/tests/components/signal_messenger/test_notify.py
@@ -3,7 +3,6 @@
 import os
 import tempfile
 import unittest
-from unittest.mock import patch
 
 from pysignalclirestapi import SignalCliRestApi
 import requests_mock
@@ -11,6 +10,8 @@ import requests_mock
 import homeassistant.components.signal_messenger.notify as signalmessenger
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 BASE_COMPONENT = "notify"
 
 
diff --git a/tests/components/simplisafe/test_config_flow.py b/tests/components/simplisafe/test_config_flow.py
index 5dc0fd5698b..2448b20b084 100644
--- a/tests/components/simplisafe/test_config_flow.py
+++ b/tests/components/simplisafe/test_config_flow.py
@@ -1,6 +1,5 @@
 """Define tests for the SimpliSafe config flow."""
 import json
-from unittest.mock import MagicMock, PropertyMock, mock_open
 
 from simplipy.errors import SimplipyError
 
@@ -9,7 +8,7 @@ from homeassistant.components.simplisafe import DOMAIN
 from homeassistant.config_entries import SOURCE_IMPORT, SOURCE_USER
 from homeassistant.const import CONF_CODE, CONF_PASSWORD, CONF_TOKEN, CONF_USERNAME
 
-from tests.async_mock import patch
+from tests.async_mock import MagicMock, PropertyMock, mock_open, patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/sleepiq/test_binary_sensor.py b/tests/components/sleepiq/test_binary_sensor.py
index b8c3a2cd2e8..fbafe8aad7d 100644
--- a/tests/components/sleepiq/test_binary_sensor.py
+++ b/tests/components/sleepiq/test_binary_sensor.py
@@ -1,12 +1,12 @@
 """The tests for SleepIQ binary sensor platform."""
 import unittest
-from unittest.mock import MagicMock
 
 import requests_mock
 
 from homeassistant.components.sleepiq import binary_sensor as sleepiq
 from homeassistant.setup import setup_component
 
+from tests.async_mock import MagicMock
 from tests.common import get_test_home_assistant
 from tests.components.sleepiq.test_init import mock_responses
 
diff --git a/tests/components/sleepiq/test_init.py b/tests/components/sleepiq/test_init.py
index 6626be41a6b..9c1c0972fac 100644
--- a/tests/components/sleepiq/test_init.py
+++ b/tests/components/sleepiq/test_init.py
@@ -1,12 +1,12 @@
 """The tests for the SleepIQ component."""
 import unittest
-from unittest.mock import MagicMock, patch
 
 import requests_mock
 
 from homeassistant import setup
 import homeassistant.components.sleepiq as sleepiq
 
+from tests.async_mock import MagicMock, patch
 from tests.common import get_test_home_assistant, load_fixture
 
 
diff --git a/tests/components/sleepiq/test_sensor.py b/tests/components/sleepiq/test_sensor.py
index a049dfd2fbf..d94cd7e4063 100644
--- a/tests/components/sleepiq/test_sensor.py
+++ b/tests/components/sleepiq/test_sensor.py
@@ -1,12 +1,12 @@
 """The tests for SleepIQ sensor platform."""
 import unittest
-from unittest.mock import MagicMock
 
 import requests_mock
 
 import homeassistant.components.sleepiq.sensor as sleepiq
 from homeassistant.setup import setup_component
 
+from tests.async_mock import MagicMock
 from tests.common import get_test_home_assistant
 from tests.components.sleepiq.test_init import mock_responses
 
diff --git a/tests/components/smhi/common.py b/tests/components/smhi/common.py
index 6f215840324..92c9e13fb8a 100644
--- a/tests/components/smhi/common.py
+++ b/tests/components/smhi/common.py
@@ -1,5 +1,5 @@
 """Common test utilities."""
-from unittest.mock import Mock
+from tests.async_mock import Mock
 
 
 class AsyncMock(Mock):
diff --git a/tests/components/smhi/test_init.py b/tests/components/smhi/test_init.py
index 450ac7e6ef0..e6b523d96bb 100644
--- a/tests/components/smhi/test_init.py
+++ b/tests/components/smhi/test_init.py
@@ -1,10 +1,10 @@
 """Test SMHI component setup process."""
-from unittest.mock import Mock
-
 from homeassistant.components import smhi
 
 from .common import AsyncMock
 
+from tests.async_mock import Mock
+
 TEST_CONFIG = {
     "config": {
         "name": "0123456789ABCDEF",
diff --git a/tests/components/smtp/test_notify.py b/tests/components/smtp/test_notify.py
index 6c7e41a4728..f74d47a21c1 100644
--- a/tests/components/smtp/test_notify.py
+++ b/tests/components/smtp/test_notify.py
@@ -1,10 +1,10 @@
 """The tests for the notify smtp platform."""
 import re
 import unittest
-from unittest.mock import patch
 
 from homeassistant.components.smtp.notify import MailNotificationService
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/solaredge/test_config_flow.py b/tests/components/solaredge/test_config_flow.py
index 759639362e4..61bc5f9ac6c 100644
--- a/tests/components/solaredge/test_config_flow.py
+++ b/tests/components/solaredge/test_config_flow.py
@@ -1,6 +1,4 @@
 """Tests for the SolarEdge config flow."""
-from unittest.mock import Mock, patch
-
 import pytest
 from requests.exceptions import ConnectTimeout, HTTPError
 
@@ -9,6 +7,7 @@ from homeassistant.components.solaredge import config_flow
 from homeassistant.components.solaredge.const import CONF_SITE_ID, DEFAULT_NAME
 from homeassistant.const import CONF_API_KEY, CONF_NAME
 
+from tests.async_mock import Mock, patch
 from tests.common import MockConfigEntry
 
 NAME = "solaredge site 1 2 3"
diff --git a/tests/components/soma/test_config_flow.py b/tests/components/soma/test_config_flow.py
index 1d00f83a608..929463ecf81 100644
--- a/tests/components/soma/test_config_flow.py
+++ b/tests/components/soma/test_config_flow.py
@@ -1,12 +1,11 @@
 """Tests for the Soma config flow."""
-from unittest.mock import patch
-
 from api.soma_api import SomaApi
 from requests import RequestException
 
 from homeassistant import data_entry_flow
 from homeassistant.components.soma import DOMAIN, config_flow
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 MOCK_HOST = "123.45.67.89"
diff --git a/tests/components/somfy/test_config_flow.py b/tests/components/somfy/test_config_flow.py
index f195b640240..1823cb3c3ab 100644
--- a/tests/components/somfy/test_config_flow.py
+++ b/tests/components/somfy/test_config_flow.py
@@ -1,6 +1,5 @@
 """Tests for the Somfy config flow."""
 import asyncio
-from unittest.mock import patch
 
 import pytest
 
@@ -8,6 +7,7 @@ from homeassistant import config_entries, data_entry_flow, setup
 from homeassistant.components.somfy import DOMAIN, config_flow
 from homeassistant.helpers import config_entry_oauth2_flow
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 CLIENT_SECRET_VALUE = "5678"
diff --git a/tests/components/sonarr/test_sensor.py b/tests/components/sonarr/test_sensor.py
index 1629a3d29c2..96585f87068 100644
--- a/tests/components/sonarr/test_sensor.py
+++ b/tests/components/sonarr/test_sensor.py
@@ -8,6 +8,7 @@ import pytest
 import homeassistant.components.sonarr.sensor as sonarr
 from homeassistant.const import DATA_GIGABYTES, UNIT_PERCENTAGE
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 
@@ -491,7 +492,7 @@ class TestSonarrSetup(unittest.TestCase):
         """Stop everything that was started."""
         self.hass.stop()
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_diskspace_no_paths(self, req_mock):
         """Test getting all disk space."""
         config = {
@@ -511,7 +512,7 @@ class TestSonarrSetup(unittest.TestCase):
             assert "Sonarr Disk Space" == device.name
             assert "263.10/465.42GB (56.53%)" == device.device_state_attributes["/data"]
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_diskspace_paths(self, req_mock):
         """Test getting diskspace for included paths."""
         config = {
@@ -531,7 +532,7 @@ class TestSonarrSetup(unittest.TestCase):
             assert "Sonarr Disk Space" == device.name
             assert "263.10/465.42GB (56.53%)" == device.device_state_attributes["/data"]
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_commands(self, req_mock):
         """Test getting running commands."""
         config = {
@@ -551,7 +552,7 @@ class TestSonarrSetup(unittest.TestCase):
             assert "Sonarr Commands" == device.name
             assert "pending" == device.device_state_attributes["RescanSeries"]
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_queue(self, req_mock):
         """Test getting downloads in the queue."""
         config = {
@@ -574,7 +575,7 @@ class TestSonarrSetup(unittest.TestCase):
                 == device.device_state_attributes["Game of Thrones S03E08"]
             )
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_series(self, req_mock):
         """Test getting the number of series."""
         config = {
@@ -596,7 +597,7 @@ class TestSonarrSetup(unittest.TestCase):
                 "26/26 Episodes" == device.device_state_attributes["Marvel's Daredevil"]
             )
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_wanted(self, req_mock):
         """Test getting wanted episodes."""
         config = {
@@ -618,7 +619,7 @@ class TestSonarrSetup(unittest.TestCase):
                 "2014-02-03" == device.device_state_attributes["Archer (2009) S05E04"]
             )
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_upcoming_multiple_days(self, req_mock):
         """Test the upcoming episodes for multiple days."""
         config = {
@@ -639,7 +640,7 @@ class TestSonarrSetup(unittest.TestCase):
             assert "S04E11" == device.device_state_attributes["Bob's Burgers"]
 
     @pytest.mark.skip
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_upcoming_today(self, req_mock):
         """Test filtering for a single day.
 
@@ -662,7 +663,7 @@ class TestSonarrSetup(unittest.TestCase):
             assert "Sonarr Upcoming" == device.name
             assert "S04E11" == device.device_state_attributes["Bob's Burgers"]
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_system_status(self, req_mock):
         """Test getting system status."""
         config = {
@@ -682,7 +683,7 @@ class TestSonarrSetup(unittest.TestCase):
             assert "6.2.9200.0" == device.device_state_attributes["osVersion"]
 
     @pytest.mark.skip
-    @unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
+    @patch("requests.get", side_effect=mocked_requests_get)
     def test_ssl(self, req_mock):
         """Test SSL being enabled."""
         config = {
@@ -704,7 +705,7 @@ class TestSonarrSetup(unittest.TestCase):
             assert "Sonarr Upcoming" == device.name
             assert "S04E11" == device.device_state_attributes["Bob's Burgers"]
 
-    @unittest.mock.patch("requests.get", side_effect=mocked_exception)
+    @patch("requests.get", side_effect=mocked_exception)
     def test_exception_handling(self, req_mock):
         """Test exception being handled."""
         config = {
diff --git a/tests/components/soundtouch/test_media_player.py b/tests/components/soundtouch/test_media_player.py
index bc3cc1bc977..0d796cd8785 100644
--- a/tests/components/soundtouch/test_media_player.py
+++ b/tests/components/soundtouch/test_media_player.py
@@ -1,6 +1,4 @@
 """Test the Soundtouch component."""
-from unittest.mock import call
-
 from libsoundtouch.device import (
     Config,
     Preset,
@@ -27,7 +25,7 @@ from homeassistant.const import STATE_OFF, STATE_PAUSED, STATE_PLAYING
 from homeassistant.helpers.discovery import async_load_platform
 from homeassistant.setup import async_setup_component
 
-from tests.async_mock import patch
+from tests.async_mock import call, patch
 
 # pylint: disable=super-init-not-called
 
diff --git a/tests/components/spotify/test_config_flow.py b/tests/components/spotify/test_config_flow.py
index 3644ca462ca..7115151451f 100644
--- a/tests/components/spotify/test_config_flow.py
+++ b/tests/components/spotify/test_config_flow.py
@@ -1,6 +1,4 @@
 """Tests for the Spotify config flow."""
-from unittest.mock import patch
-
 from spotipy import SpotifyException
 
 from homeassistant import data_entry_flow, setup
@@ -12,6 +10,7 @@ from homeassistant.components.spotify.const import (
 from homeassistant.config_entries import SOURCE_USER, SOURCE_ZEROCONF
 from homeassistant.helpers import config_entry_oauth2_flow
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/statistics/test_sensor.py b/tests/components/statistics/test_sensor.py
index 61a0abb6265..721cf71303d 100644
--- a/tests/components/statistics/test_sensor.py
+++ b/tests/components/statistics/test_sensor.py
@@ -2,7 +2,6 @@
 from datetime import datetime, timedelta
 import statistics
 import unittest
-from unittest.mock import patch
 
 import pytest
 
@@ -12,6 +11,7 @@ from homeassistant.const import ATTR_UNIT_OF_MEASUREMENT, STATE_UNKNOWN, TEMP_CE
 from homeassistant.setup import setup_component
 from homeassistant.util import dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     fire_time_changed,
     get_test_home_assistant,
diff --git a/tests/components/stream/test_init.py b/tests/components/stream/test_init.py
index 12fa8e8a4d6..dc7892e069a 100644
--- a/tests/components/stream/test_init.py
+++ b/tests/components/stream/test_init.py
@@ -1,6 +1,4 @@
 """The tests for stream."""
-from unittest.mock import MagicMock, patch
-
 import pytest
 
 from homeassistant.components.stream.const import (
@@ -14,7 +12,7 @@ from homeassistant.const import CONF_FILENAME
 from homeassistant.exceptions import HomeAssistantError
 from homeassistant.setup import async_setup_component
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, MagicMock, patch
 
 
 async def test_record_service_invalid_file(hass):
diff --git a/tests/components/stream/test_recorder.py b/tests/components/stream/test_recorder.py
index 95eeeecf7ad..fbbeaf0ff44 100644
--- a/tests/components/stream/test_recorder.py
+++ b/tests/components/stream/test_recorder.py
@@ -1,7 +1,6 @@
 """The tests for hls streams."""
 from datetime import timedelta
 from io import BytesIO
-from unittest.mock import patch
 
 import pytest
 
@@ -10,6 +9,7 @@ from homeassistant.components.stream.recorder import recorder_save_worker
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import async_fire_time_changed
 from tests.components.stream.common import generate_h264_video, preload_stream
 
diff --git a/tests/components/sun/test_init.py b/tests/components/sun/test_init.py
index e04de7e2578..e023814725b 100644
--- a/tests/components/sun/test_init.py
+++ b/tests/components/sun/test_init.py
@@ -1,6 +1,5 @@
 """The tests for the Sun component."""
 from datetime import datetime, timedelta
-from unittest.mock import patch
 
 from pytest import mark
 
@@ -10,6 +9,8 @@ import homeassistant.core as ha
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
+
 
 async def test_setting_rising(hass):
     """Test retrieving sun setting and rising."""
diff --git a/tests/components/switch/test_device_condition.py b/tests/components/switch/test_device_condition.py
index fe32fca9cb7..e4e8564f5bb 100644
--- a/tests/components/switch/test_device_condition.py
+++ b/tests/components/switch/test_device_condition.py
@@ -1,6 +1,5 @@
 """The test for switch device automation."""
 from datetime import timedelta
-from unittest.mock import patch
 
 import pytest
 
@@ -11,6 +10,7 @@ from homeassistant.helpers import device_registry
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import (
     MockConfigEntry,
     async_get_device_automation_capabilities,
diff --git a/tests/components/synology_dsm/conftest.py b/tests/components/synology_dsm/conftest.py
index 7829a3cc999..67c3cab659e 100644
--- a/tests/components/synology_dsm/conftest.py
+++ b/tests/components/synology_dsm/conftest.py
@@ -1,8 +1,8 @@
 """Configure Synology DSM tests."""
-from unittest.mock import patch
-
 import pytest
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(name="dsm_bypass_setup", autouse=True)
 def dsm_bypass_setup_fixture():
diff --git a/tests/components/synology_dsm/test_config_flow.py b/tests/components/synology_dsm/test_config_flow.py
index 795348d900c..66fc943920e 100644
--- a/tests/components/synology_dsm/test_config_flow.py
+++ b/tests/components/synology_dsm/test_config_flow.py
@@ -1,6 +1,5 @@
 """Tests for the Synology DSM config flow."""
 import logging
-from unittest.mock import MagicMock, Mock, patch
 
 import pytest
 from synology_dsm.exceptions import (
@@ -33,6 +32,7 @@ from homeassistant.const import (
 )
 from homeassistant.helpers.typing import HomeAssistantType
 
+from tests.async_mock import MagicMock, Mock, patch
 from tests.common import MockConfigEntry
 
 _LOGGER = logging.getLogger(__name__)
diff --git a/tests/components/system_log/test_init.py b/tests/components/system_log/test_init.py
index 6408b1625f5..009701ca886 100644
--- a/tests/components/system_log/test_init.py
+++ b/tests/components/system_log/test_init.py
@@ -1,11 +1,12 @@
 """Test system log component."""
 import logging
-from unittest.mock import MagicMock, patch
 
 from homeassistant.bootstrap import async_setup_component
 from homeassistant.components import system_log
 from homeassistant.core import callback
 
+from tests.async_mock import MagicMock, patch
+
 _LOGGER = logging.getLogger("test_logger")
 BASIC_CONFIG = {"system_log": {"max_entries": 2}}
 
diff --git a/tests/components/tcp/test_binary_sensor.py b/tests/components/tcp/test_binary_sensor.py
index 2dc16ad79c7..4cde4d9ac31 100644
--- a/tests/components/tcp/test_binary_sensor.py
+++ b/tests/components/tcp/test_binary_sensor.py
@@ -1,11 +1,11 @@
 """The tests for the TCP binary sensor platform."""
 import unittest
-from unittest.mock import Mock, patch
 
 from homeassistant.components.tcp import binary_sensor as bin_tcp
 import homeassistant.components.tcp.sensor as tcp
 from homeassistant.setup import setup_component
 
+from tests.async_mock import Mock, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 import tests.components.tcp.test_sensor as test_tcp
 
diff --git a/tests/components/tcp/test_sensor.py b/tests/components/tcp/test_sensor.py
index 8e79d4e514d..b06652dc53f 100644
--- a/tests/components/tcp/test_sensor.py
+++ b/tests/components/tcp/test_sensor.py
@@ -2,7 +2,6 @@
 from copy import copy
 import socket
 import unittest
-from unittest.mock import Mock, patch
 from uuid import uuid4
 
 import homeassistant.components.tcp.sensor as tcp
@@ -10,6 +9,7 @@ from homeassistant.helpers.entity import Entity
 from homeassistant.helpers.template import Template
 from homeassistant.setup import setup_component
 
+from tests.async_mock import Mock, patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 TEST_CONFIG = {
diff --git a/tests/components/time_date/test_sensor.py b/tests/components/time_date/test_sensor.py
index 2aae99f93a5..80a081cd524 100644
--- a/tests/components/time_date/test_sensor.py
+++ b/tests/components/time_date/test_sensor.py
@@ -1,10 +1,10 @@
 """The tests for time_date sensor platform."""
 import unittest
-from unittest.mock import patch
 
 import homeassistant.components.time_date.sensor as time_date
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/timer/test_init.py b/tests/components/timer/test_init.py
index dea116b3905..75bafba634f 100644
--- a/tests/components/timer/test_init.py
+++ b/tests/components/timer/test_init.py
@@ -2,7 +2,6 @@
 # pylint: disable=protected-access
 from datetime import timedelta
 import logging
-from unittest.mock import patch
 
 import pytest
 
@@ -42,6 +41,7 @@ from homeassistant.helpers import config_validation as cv, entity_registry
 from homeassistant.setup import async_setup_component
 from homeassistant.util.dt import utcnow
 
+from tests.async_mock import patch
 from tests.common import async_fire_time_changed
 
 _LOGGER = logging.getLogger(__name__)
diff --git a/tests/components/tod/test_binary_sensor.py b/tests/components/tod/test_binary_sensor.py
index 1da0c16d43c..4febd1aa8d1 100644
--- a/tests/components/tod/test_binary_sensor.py
+++ b/tests/components/tod/test_binary_sensor.py
@@ -1,7 +1,6 @@
 """Test Times of the Day Binary Sensor."""
 from datetime import datetime, timedelta
 import unittest
-from unittest.mock import patch
 
 import pytz
 
@@ -12,6 +11,7 @@ from homeassistant.helpers.sun import get_astral_event_date, get_astral_event_ne
 from homeassistant.setup import setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/toon/test_config_flow.py b/tests/components/toon/test_config_flow.py
index 45d16908446..fdf97243a3a 100644
--- a/tests/components/toon/test_config_flow.py
+++ b/tests/components/toon/test_config_flow.py
@@ -1,7 +1,5 @@
 """Tests for the Toon config flow."""
 
-from unittest.mock import patch
-
 import pytest
 from toonapilib.toonapilibexceptions import (
     AgreementsRetrievalError,
@@ -22,6 +20,7 @@ from homeassistant.components.toon.const import (
 from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 FIXTURE_APP = {
diff --git a/tests/components/totalconnect/test_config_flow.py b/tests/components/totalconnect/test_config_flow.py
index b77198fa9b2..80cfe7a81f8 100644
--- a/tests/components/totalconnect/test_config_flow.py
+++ b/tests/components/totalconnect/test_config_flow.py
@@ -1,11 +1,10 @@
 """Tests for the iCloud config flow."""
-from unittest.mock import patch
-
 from homeassistant import data_entry_flow
 from homeassistant.components.totalconnect.const import DOMAIN
 from homeassistant.config_entries import SOURCE_IMPORT, SOURCE_USER
 from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 USERNAME = "username@me.com"
diff --git a/tests/components/tplink/test_common.py b/tests/components/tplink/test_common.py
index ef4f1d22a2d..a2bd7ef87ff 100644
--- a/tests/components/tplink/test_common.py
+++ b/tests/components/tplink/test_common.py
@@ -1,12 +1,13 @@
 """Common code tests."""
 from datetime import timedelta
-from unittest.mock import MagicMock
 
 from pyHS100 import SmartDeviceException
 
 from homeassistant.components.tplink.common import async_add_entities_retry
 from homeassistant.helpers.typing import HomeAssistantType
 
+from tests.async_mock import MagicMock
+
 
 async def test_async_add_entities_retry(hass: HomeAssistantType):
     """Test interval callback."""
diff --git a/tests/components/tplink/test_light.py b/tests/components/tplink/test_light.py
index 0986362ba28..241789270d7 100644
--- a/tests/components/tplink/test_light.py
+++ b/tests/components/tplink/test_light.py
@@ -1,6 +1,5 @@
 """Tests for light platform."""
 from typing import Callable, NamedTuple
-from unittest.mock import Mock, PropertyMock, patch
 
 from pyHS100 import SmartDeviceException
 import pytest
@@ -30,6 +29,8 @@ from homeassistant.const import (
 from homeassistant.core import HomeAssistant
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock, PropertyMock, patch
+
 
 class LightMockData(NamedTuple):
     """Mock light data."""
diff --git a/tests/components/traccar/test_init.py b/tests/components/traccar/test_init.py
index a13a3d25a6c..2804d90ac33 100644
--- a/tests/components/traccar/test_init.py
+++ b/tests/components/traccar/test_init.py
@@ -1,6 +1,4 @@
 """The tests the for Traccar device tracker platform."""
-from unittest.mock import Mock, patch
-
 import pytest
 
 from homeassistant import data_entry_flow
@@ -16,6 +14,8 @@ from homeassistant.const import (
 from homeassistant.helpers.dispatcher import DATA_DISPATCHER
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock, patch
+
 HOME_LATITUDE = 37.239622
 HOME_LONGITUDE = -115.815811
 
diff --git a/tests/components/tradfri/test_light.py b/tests/components/tradfri/test_light.py
index e4bdd140faa..8ffc25aba5a 100644
--- a/tests/components/tradfri/test_light.py
+++ b/tests/components/tradfri/test_light.py
@@ -1,7 +1,6 @@
 """Tradfri lights platform tests."""
 
 from copy import deepcopy
-from unittest.mock import MagicMock, Mock, PropertyMock, patch
 
 import pytest
 from pytradfri.device import Device
@@ -10,6 +9,7 @@ from pytradfri.device.light_control import LightControl
 
 from homeassistant.components import tradfri
 
+from tests.async_mock import MagicMock, Mock, PropertyMock, patch
 from tests.common import MockConfigEntry
 
 DEFAULT_TEST_FEATURES = {
diff --git a/tests/components/transmission/test_config_flow.py b/tests/components/transmission/test_config_flow.py
index bb790b025ea..4436a6adf21 100644
--- a/tests/components/transmission/test_config_flow.py
+++ b/tests/components/transmission/test_config_flow.py
@@ -1,6 +1,5 @@
 """Tests for Transmission config flow."""
 from datetime import timedelta
-from unittest.mock import patch
 
 import pytest
 from transmissionrpc.error import TransmissionError
@@ -22,6 +21,7 @@ from homeassistant.const import (
     CONF_USERNAME,
 )
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 NAME = "Transmission"
diff --git a/tests/components/transport_nsw/test_sensor.py b/tests/components/transport_nsw/test_sensor.py
index 75881e113d7..ab66260a55e 100644
--- a/tests/components/transport_nsw/test_sensor.py
+++ b/tests/components/transport_nsw/test_sensor.py
@@ -1,9 +1,9 @@
 """The tests for the Transport NSW (AU) sensor platform."""
 import unittest
-from unittest.mock import patch
 
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 VALID_CONFIG = {
diff --git a/tests/components/trend/test_binary_sensor.py b/tests/components/trend/test_binary_sensor.py
index d78cf793d2f..fc93df0aacf 100644
--- a/tests/components/trend/test_binary_sensor.py
+++ b/tests/components/trend/test_binary_sensor.py
@@ -1,10 +1,10 @@
 """The test for the Trend sensor platform."""
 from datetime import timedelta
-from unittest.mock import patch
 
 from homeassistant import setup
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 
diff --git a/tests/components/tts/test_init.py b/tests/components/tts/test_init.py
index 61bb78a0827..3fbf1245fa3 100644
--- a/tests/components/tts/test_init.py
+++ b/tests/components/tts/test_init.py
@@ -1,6 +1,5 @@
 """The tests for the TTS component."""
 import ctypes
-from unittest.mock import PropertyMock, patch
 
 import pytest
 import yarl
@@ -18,6 +17,7 @@ from homeassistant.components.tts import _get_cache_files
 from homeassistant.const import HTTP_NOT_FOUND
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import PropertyMock, patch
 from tests.common import assert_setup_component, async_mock_service
 
 
diff --git a/tests/components/twilio/test_init.py b/tests/components/twilio/test_init.py
index ee7f072a65c..185139077df 100644
--- a/tests/components/twilio/test_init.py
+++ b/tests/components/twilio/test_init.py
@@ -1,10 +1,10 @@
 """Test the init file of Twilio."""
-from unittest.mock import patch
-
 from homeassistant import data_entry_flow
 from homeassistant.components import twilio
 from homeassistant.core import callback
 
+from tests.async_mock import patch
+
 
 async def test_config_flow_registers_webhook(hass, aiohttp_client):
     """Test setting up Twilio and sending webhook."""
diff --git a/tests/components/twitch/test_twitch.py b/tests/components/twitch/test_twitch.py
index 6c656f874d0..3e777fa3d03 100644
--- a/tests/components/twitch/test_twitch.py
+++ b/tests/components/twitch/test_twitch.py
@@ -1,12 +1,12 @@
 """The tests for an update of the Twitch component."""
-from unittest.mock import MagicMock, patch
-
 from requests import HTTPError
 from twitch.resources import Channel, Follow, Stream, Subscription, User
 
 from homeassistant.components import sensor
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import MagicMock, patch
+
 ENTITY_ID = "sensor.channel123"
 CONFIG = {
     sensor.DOMAIN: {
diff --git a/tests/components/uptime/test_sensor.py b/tests/components/uptime/test_sensor.py
index 0a9d227681b..111114d8aca 100644
--- a/tests/components/uptime/test_sensor.py
+++ b/tests/components/uptime/test_sensor.py
@@ -2,11 +2,11 @@
 import asyncio
 from datetime import timedelta
 import unittest
-from unittest.mock import patch
 
 from homeassistant.components.uptime.sensor import UptimeSensor
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/usgs_earthquakes_feed/test_geo_location.py b/tests/components/usgs_earthquakes_feed/test_geo_location.py
index 4823d2eb2da..9bd718d1933 100644
--- a/tests/components/usgs_earthquakes_feed/test_geo_location.py
+++ b/tests/components/usgs_earthquakes_feed/test_geo_location.py
@@ -1,6 +1,5 @@
 """The tests for the USGS Earthquake Hazards Program Feed platform."""
 import datetime
-from unittest.mock import MagicMock, call, patch
 
 from homeassistant.components import geo_location
 from homeassistant.components.geo_location import ATTR_SOURCE
@@ -32,6 +31,7 @@ from homeassistant.const import (
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import MagicMock, call, patch
 from tests.common import assert_setup_component, async_fire_time_changed
 
 CONFIG = {
diff --git a/tests/components/utility_meter/test_init.py b/tests/components/utility_meter/test_init.py
index f6c1e6c8ead..7116077177a 100644
--- a/tests/components/utility_meter/test_init.py
+++ b/tests/components/utility_meter/test_init.py
@@ -1,7 +1,6 @@
 """The tests for the utility_meter component."""
 from datetime import timedelta
 import logging
-from unittest.mock import patch
 
 from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN
 from homeassistant.components.utility_meter.const import (
@@ -19,6 +18,8 @@ from homeassistant.const import (
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
+
 _LOGGER = logging.getLogger(__name__)
 
 
diff --git a/tests/components/utility_meter/test_sensor.py b/tests/components/utility_meter/test_sensor.py
index 6118d74d0dd..d7c888802ed 100644
--- a/tests/components/utility_meter/test_sensor.py
+++ b/tests/components/utility_meter/test_sensor.py
@@ -2,7 +2,6 @@
 from contextlib import contextmanager
 from datetime import timedelta
 import logging
-from unittest.mock import patch
 
 from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN
 from homeassistant.components.utility_meter.const import (
@@ -20,6 +19,7 @@ from homeassistant.const import (
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import async_fire_time_changed
 
 _LOGGER = logging.getLogger(__name__)
diff --git a/tests/components/velbus/test_config_flow.py b/tests/components/velbus/test_config_flow.py
index daeffb4ed1d..3bccacc0a94 100644
--- a/tests/components/velbus/test_config_flow.py
+++ b/tests/components/velbus/test_config_flow.py
@@ -1,12 +1,11 @@
 """Tests for the Velbus config flow."""
-from unittest.mock import Mock, patch
-
 import pytest
 
 from homeassistant import data_entry_flow
 from homeassistant.components.velbus import config_flow
 from homeassistant.const import CONF_NAME, CONF_PORT
 
+from tests.async_mock import Mock, patch
 from tests.common import MockConfigEntry
 
 PORT_SERIAL = "/dev/ttyACME100"
diff --git a/tests/components/vera/test_binary_sensor.py b/tests/components/vera/test_binary_sensor.py
index 72651d6eda4..4b0d41d9a1e 100644
--- a/tests/components/vera/test_binary_sensor.py
+++ b/tests/components/vera/test_binary_sensor.py
@@ -1,12 +1,12 @@
 """Vera tests."""
-from unittest.mock import MagicMock
-
 import pyvera as pv
 
 from homeassistant.core import HomeAssistant
 
 from .common import ComponentFactory, new_simple_controller_config
 
+from tests.async_mock import MagicMock
+
 
 async def test_binary_sensor(
     hass: HomeAssistant, vera_component_factory: ComponentFactory
diff --git a/tests/components/vera/test_climate.py b/tests/components/vera/test_climate.py
index 9e5fa983ed0..f52bf375d8e 100644
--- a/tests/components/vera/test_climate.py
+++ b/tests/components/vera/test_climate.py
@@ -1,6 +1,4 @@
 """Vera tests."""
-from unittest.mock import MagicMock
-
 import pyvera as pv
 
 from homeassistant.components.climate.const import (
@@ -15,6 +13,8 @@ from homeassistant.core import HomeAssistant
 
 from .common import ComponentFactory, new_simple_controller_config
 
+from tests.async_mock import MagicMock
+
 
 async def test_climate(
     hass: HomeAssistant, vera_component_factory: ComponentFactory
diff --git a/tests/components/vera/test_config_flow.py b/tests/components/vera/test_config_flow.py
index 5f4536decec..3915d4d0577 100644
--- a/tests/components/vera/test_config_flow.py
+++ b/tests/components/vera/test_config_flow.py
@@ -1,6 +1,4 @@
 """Vera tests."""
-from unittest.mock import MagicMock
-
 from mock import patch
 from requests.exceptions import RequestException
 
@@ -14,6 +12,7 @@ from homeassistant.data_entry_flow import (
     RESULT_TYPE_FORM,
 )
 
+from tests.async_mock import MagicMock
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/vera/test_cover.py b/tests/components/vera/test_cover.py
index 62cd47f831c..a2dae2bd7f8 100644
--- a/tests/components/vera/test_cover.py
+++ b/tests/components/vera/test_cover.py
@@ -1,12 +1,12 @@
 """Vera tests."""
-from unittest.mock import MagicMock
-
 import pyvera as pv
 
 from homeassistant.core import HomeAssistant
 
 from .common import ComponentFactory, new_simple_controller_config
 
+from tests.async_mock import MagicMock
+
 
 async def test_cover(
     hass: HomeAssistant, vera_component_factory: ComponentFactory
diff --git a/tests/components/vera/test_light.py b/tests/components/vera/test_light.py
index fefa07ffa6e..14194d0af52 100644
--- a/tests/components/vera/test_light.py
+++ b/tests/components/vera/test_light.py
@@ -1,6 +1,4 @@
 """Vera tests."""
-from unittest.mock import MagicMock
-
 import pyvera as pv
 
 from homeassistant.components.light import ATTR_BRIGHTNESS, ATTR_HS_COLOR
@@ -8,6 +6,8 @@ from homeassistant.core import HomeAssistant
 
 from .common import ComponentFactory, new_simple_controller_config
 
+from tests.async_mock import MagicMock
+
 
 async def test_light(
     hass: HomeAssistant, vera_component_factory: ComponentFactory
diff --git a/tests/components/vera/test_lock.py b/tests/components/vera/test_lock.py
index d1b2209294a..901e09040e9 100644
--- a/tests/components/vera/test_lock.py
+++ b/tests/components/vera/test_lock.py
@@ -1,6 +1,4 @@
 """Vera tests."""
-from unittest.mock import MagicMock
-
 import pyvera as pv
 
 from homeassistant.const import STATE_LOCKED, STATE_UNLOCKED
@@ -8,6 +6,8 @@ from homeassistant.core import HomeAssistant
 
 from .common import ComponentFactory, new_simple_controller_config
 
+from tests.async_mock import MagicMock
+
 
 async def test_lock(
     hass: HomeAssistant, vera_component_factory: ComponentFactory
diff --git a/tests/components/vera/test_scene.py b/tests/components/vera/test_scene.py
index 732a331681b..8f96b7a133a 100644
--- a/tests/components/vera/test_scene.py
+++ b/tests/components/vera/test_scene.py
@@ -1,12 +1,12 @@
 """Vera tests."""
-from unittest.mock import MagicMock
-
 import pyvera as pv
 
 from homeassistant.core import HomeAssistant
 
 from .common import ComponentFactory, new_simple_controller_config
 
+from tests.async_mock import MagicMock
+
 
 async def test_scene(
     hass: HomeAssistant, vera_component_factory: ComponentFactory
diff --git a/tests/components/vera/test_sensor.py b/tests/components/vera/test_sensor.py
index c915c5ead0f..cb50ad82789 100644
--- a/tests/components/vera/test_sensor.py
+++ b/tests/components/vera/test_sensor.py
@@ -1,6 +1,5 @@
 """Vera tests."""
 from typing import Any, Callable, Tuple
-from unittest.mock import MagicMock
 
 import pyvera as pv
 
@@ -9,6 +8,8 @@ from homeassistant.core import HomeAssistant
 
 from .common import ComponentFactory, new_simple_controller_config
 
+from tests.async_mock import MagicMock
+
 
 async def run_sensor_test(
     hass: HomeAssistant,
diff --git a/tests/components/vera/test_switch.py b/tests/components/vera/test_switch.py
index c41afad4759..2a8bfe68185 100644
--- a/tests/components/vera/test_switch.py
+++ b/tests/components/vera/test_switch.py
@@ -1,12 +1,12 @@
 """Vera tests."""
-from unittest.mock import MagicMock
-
 import pyvera as pv
 
 from homeassistant.core import HomeAssistant
 
 from .common import ComponentFactory, new_simple_controller_config
 
+from tests.async_mock import MagicMock
+
 
 async def test_switch(
     hass: HomeAssistant, vera_component_factory: ComponentFactory
diff --git a/tests/components/verisure/test_ethernet_status.py b/tests/components/verisure/test_ethernet_status.py
index 611adde19d9..139ac01a1c6 100644
--- a/tests/components/verisure/test_ethernet_status.py
+++ b/tests/components/verisure/test_ethernet_status.py
@@ -1,11 +1,12 @@
 """Test Verisure ethernet status."""
 from contextlib import contextmanager
-from unittest.mock import patch
 
 from homeassistant.components.verisure import DOMAIN as VERISURE_DOMAIN
 from homeassistant.const import STATE_UNAVAILABLE
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 CONFIG = {
     "verisure": {
         "username": "test",
diff --git a/tests/components/verisure/test_lock.py b/tests/components/verisure/test_lock.py
index d41bbab2037..decce67dc11 100644
--- a/tests/components/verisure/test_lock.py
+++ b/tests/components/verisure/test_lock.py
@@ -1,7 +1,6 @@
 """Tests for the Verisure platform."""
 
 from contextlib import contextmanager
-from unittest.mock import call, patch
 
 from homeassistant.components.lock import (
     DOMAIN as LOCK_DOMAIN,
@@ -12,6 +11,8 @@ from homeassistant.components.verisure import DOMAIN as VERISURE_DOMAIN
 from homeassistant.const import STATE_UNLOCKED
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import call, patch
+
 NO_DEFAULT_LOCK_CODE_CONFIG = {
     "verisure": {
         "username": "test",
diff --git a/tests/components/version/test_sensor.py b/tests/components/version/test_sensor.py
index 164b4090e5f..471043ae3ae 100644
--- a/tests/components/version/test_sensor.py
+++ b/tests/components/version/test_sensor.py
@@ -1,8 +1,8 @@
 """The test for the version sensor platform."""
-from unittest.mock import patch
-
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 MOCK_VERSION = "10.0"
 
 
diff --git a/tests/components/vesync/test_config_flow.py b/tests/components/vesync/test_config_flow.py
index 39b847effc5..aedf94da4ab 100644
--- a/tests/components/vesync/test_config_flow.py
+++ b/tests/components/vesync/test_config_flow.py
@@ -1,10 +1,9 @@
 """Test for vesync config flow."""
-from unittest.mock import patch
-
 from homeassistant import data_entry_flow
 from homeassistant.components.vesync import DOMAIN, config_flow
 from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry
 
 
diff --git a/tests/components/vizio/test_media_player.py b/tests/components/vizio/test_media_player.py
index b4a2148b8da..7a2ff1d1c7a 100644
--- a/tests/components/vizio/test_media_player.py
+++ b/tests/components/vizio/test_media_player.py
@@ -3,7 +3,6 @@ from contextlib import asynccontextmanager
 from datetime import timedelta
 import logging
 from typing import Any, Dict, List, Optional
-from unittest.mock import call
 
 import pytest
 from pytest import raises
@@ -73,7 +72,7 @@ from .const import (
     VOLUME_STEP,
 )
 
-from tests.async_mock import patch
+from tests.async_mock import call, patch
 from tests.common import MockConfigEntry, async_fire_time_changed
 
 _LOGGER = logging.getLogger(__name__)
diff --git a/tests/components/vultr/test_binary_sensor.py b/tests/components/vultr/test_binary_sensor.py
index f57926f30c8..609cdbf6a9e 100644
--- a/tests/components/vultr/test_binary_sensor.py
+++ b/tests/components/vultr/test_binary_sensor.py
@@ -1,7 +1,6 @@
 """Test the Vultr binary sensor platform."""
 import json
 import unittest
-from unittest.mock import patch
 
 import pytest
 import requests_mock
@@ -20,6 +19,7 @@ from homeassistant.components.vultr import (
 )
 from homeassistant.const import CONF_NAME, CONF_PLATFORM
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, load_fixture
 from tests.components.vultr.test_init import VALID_CONFIG
 
diff --git a/tests/components/vultr/test_init.py b/tests/components/vultr/test_init.py
index e371e785c92..6035ac547af 100644
--- a/tests/components/vultr/test_init.py
+++ b/tests/components/vultr/test_init.py
@@ -2,13 +2,13 @@
 from copy import deepcopy
 import json
 import unittest
-from unittest.mock import patch
 
 import requests_mock
 
 from homeassistant import setup
 import homeassistant.components.vultr as vultr
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, load_fixture
 
 VALID_CONFIG = {"vultr": {"api_key": "ABCDEFG1234567"}}
diff --git a/tests/components/vultr/test_sensor.py b/tests/components/vultr/test_sensor.py
index 80fd05a41cc..1ced0fec82f 100644
--- a/tests/components/vultr/test_sensor.py
+++ b/tests/components/vultr/test_sensor.py
@@ -1,7 +1,6 @@
 """The tests for the Vultr sensor platform."""
 import json
 import unittest
-from unittest.mock import patch
 
 import pytest
 import requests_mock
@@ -17,6 +16,7 @@ from homeassistant.const import (
     DATA_GIGABYTES,
 )
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, load_fixture
 from tests.components.vultr.test_init import VALID_CONFIG
 
diff --git a/tests/components/vultr/test_switch.py b/tests/components/vultr/test_switch.py
index 6a5c382a2d2..594617bdfd9 100644
--- a/tests/components/vultr/test_switch.py
+++ b/tests/components/vultr/test_switch.py
@@ -1,7 +1,6 @@
 """Test the Vultr switch platform."""
 import json
 import unittest
-from unittest.mock import patch
 
 import pytest
 import requests_mock
@@ -20,6 +19,7 @@ from homeassistant.components.vultr import (
 )
 from homeassistant.const import CONF_NAME, CONF_PLATFORM
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, load_fixture
 from tests.components.vultr.test_init import VALID_CONFIG
 
diff --git a/tests/components/wake_on_lan/test_switch.py b/tests/components/wake_on_lan/test_switch.py
index e0f12f9c7f8..ed4045bcb44 100644
--- a/tests/components/wake_on_lan/test_switch.py
+++ b/tests/components/wake_on_lan/test_switch.py
@@ -1,11 +1,11 @@
 """The tests for the wake on lan switch platform."""
 import unittest
-from unittest.mock import patch
 
 import homeassistant.components.switch as switch
 from homeassistant.const import STATE_OFF, STATE_ON
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import get_test_home_assistant, mock_service
 from tests.components.switch import common
 
diff --git a/tests/components/webhook/test_init.py b/tests/components/webhook/test_init.py
index 733ed32da78..7d4ce563b03 100644
--- a/tests/components/webhook/test_init.py
+++ b/tests/components/webhook/test_init.py
@@ -1,10 +1,10 @@
 """Test the webhook component."""
-from unittest.mock import Mock
-
 import pytest
 
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import Mock
+
 
 @pytest.fixture
 def mock_client(hass, hass_client):
diff --git a/tests/components/webostv/test_media_player.py b/tests/components/webostv/test_media_player.py
index cc889eca064..e4395769562 100644
--- a/tests/components/webostv/test_media_player.py
+++ b/tests/components/webostv/test_media_player.py
@@ -25,7 +25,7 @@ from homeassistant.const import (
 from homeassistant.setup import async_setup_component
 
 if sys.version_info >= (3, 8, 0):
-    from unittest.mock import patch
+    from tests.async_mock import patch
 else:
     from tests.async_mock import patch
 
diff --git a/tests/components/websocket_api/test_init.py b/tests/components/websocket_api/test_init.py
index 041c0e76533..2d656de8eeb 100644
--- a/tests/components/websocket_api/test_init.py
+++ b/tests/components/websocket_api/test_init.py
@@ -1,11 +1,11 @@
 """Tests for the Home Assistant Websocket API."""
-from unittest.mock import Mock, patch
-
 from aiohttp import WSMsgType
 import voluptuous as vol
 
 from homeassistant.components.websocket_api import const, messages
 
+from tests.async_mock import Mock, patch
+
 
 async def test_invalid_message_format(websocket_client):
     """Test sending invalid JSON."""
diff --git a/tests/components/withings/test_common.py b/tests/components/withings/test_common.py
index f0f3a160332..f0528c36005 100644
--- a/tests/components/withings/test_common.py
+++ b/tests/components/withings/test_common.py
@@ -1,6 +1,5 @@
 """Tests for the Withings component."""
 from datetime import timedelta
-from unittest.mock import patch
 
 import pytest
 from withings_api import WithingsApi
@@ -13,7 +12,7 @@ from homeassistant.components.withings.common import (
 from homeassistant.exceptions import PlatformNotReady
 from homeassistant.util import dt
 
-from tests.async_mock import MagicMock
+from tests.async_mock import MagicMock, patch
 
 
 @pytest.fixture(name="withings_api")
diff --git a/tests/components/workday/test_binary_sensor.py b/tests/components/workday/test_binary_sensor.py
index 29d5e4f03ef..c476c9fd0e0 100644
--- a/tests/components/workday/test_binary_sensor.py
+++ b/tests/components/workday/test_binary_sensor.py
@@ -1,6 +1,5 @@
 """Tests the Home Assistant workday binary sensor."""
 from datetime import date
-from unittest.mock import patch
 
 import pytest
 import voluptuous as vol
@@ -8,6 +7,7 @@ import voluptuous as vol
 import homeassistant.components.workday.binary_sensor as binary_sensor
 from homeassistant.setup import setup_component
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, get_test_home_assistant
 
 FUNCTION_PATH = "homeassistant.components.workday.binary_sensor.get_date"
diff --git a/tests/components/xiaomi_miio/test_config_flow.py b/tests/components/xiaomi_miio/test_config_flow.py
index 023deb93c81..619293be676 100644
--- a/tests/components/xiaomi_miio/test_config_flow.py
+++ b/tests/components/xiaomi_miio/test_config_flow.py
@@ -1,13 +1,11 @@
 """Test the Xiaomi Miio config flow."""
-from unittest.mock import Mock
-
 from miio import DeviceException
 
 from homeassistant import config_entries
 from homeassistant.components.xiaomi_miio import config_flow, const
 from homeassistant.const import CONF_HOST, CONF_NAME, CONF_TOKEN
 
-from tests.async_mock import patch
+from tests.async_mock import Mock, patch
 
 TEST_HOST = "1.2.3.4"
 TEST_TOKEN = "12345678901234567890123456789012"
diff --git a/tests/components/yamaha/test_media_player.py b/tests/components/yamaha/test_media_player.py
index 6b101167c85..2f47ddc7355 100644
--- a/tests/components/yamaha/test_media_player.py
+++ b/tests/components/yamaha/test_media_player.py
@@ -1,11 +1,11 @@
 """The tests for the Yamaha Media player platform."""
 import unittest
-from unittest.mock import MagicMock, patch
 
 import homeassistant.components.media_player as mp
 from homeassistant.components.yamaha import media_player as yamaha
 from homeassistant.setup import setup_component
 
+from tests.async_mock import MagicMock, patch
 from tests.common import get_test_home_assistant
 
 
diff --git a/tests/components/yessssms/test_notify.py b/tests/components/yessssms/test_notify.py
index 992185bf102..d940e782be4 100644
--- a/tests/components/yessssms/test_notify.py
+++ b/tests/components/yessssms/test_notify.py
@@ -1,7 +1,6 @@
 """The tests for the notify yessssms platform."""
 import logging
 import unittest
-from unittest.mock import patch
 
 import pytest
 import requests_mock
@@ -16,6 +15,8 @@ from homeassistant.const import (
 )
 from homeassistant.setup import async_setup_component
 
+from tests.async_mock import patch
+
 
 @pytest.fixture(name="config")
 def config_data():
diff --git a/tests/components/yr/test_sensor.py b/tests/components/yr/test_sensor.py
index d676e88bfc3..d8dcbe367de 100644
--- a/tests/components/yr/test_sensor.py
+++ b/tests/components/yr/test_sensor.py
@@ -1,11 +1,11 @@
 """The tests for the Yr sensor platform."""
 from datetime import datetime
-from unittest.mock import patch
 
 from homeassistant.bootstrap import async_setup_component
 from homeassistant.const import DEGREE, SPEED_METERS_PER_SECOND, UNIT_PERCENTAGE
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import assert_setup_component, load_fixture
 
 NOW = datetime(2016, 6, 9, 1, tzinfo=dt_util.UTC)
diff --git a/tests/components/zha/common.py b/tests/components/zha/common.py
index 9b139317825..4efc6538d7c 100644
--- a/tests/components/zha/common.py
+++ b/tests/components/zha/common.py
@@ -1,6 +1,5 @@
 """Common test objects."""
 import time
-from unittest.mock import Mock
 
 from zigpy.device import Device as zigpy_dev
 from zigpy.endpoint import Endpoint as zigpy_ep
@@ -14,7 +13,7 @@ import zigpy.zdo.types
 import homeassistant.components.zha.core.const as zha_const
 from homeassistant.util import slugify
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, Mock
 
 
 class FakeEndpoint:
diff --git a/tests/components/zha/test_fan.py b/tests/components/zha/test_fan.py
index 399982df37a..b110656c1dd 100644
--- a/tests/components/zha/test_fan.py
+++ b/tests/components/zha/test_fan.py
@@ -1,6 +1,4 @@
 """Test zha fan."""
-from unittest.mock import call
-
 import pytest
 import zigpy.profiles.zha as zha
 import zigpy.zcl.clusters.general as general
@@ -35,6 +33,8 @@ from .common import (
     send_attributes_report,
 )
 
+from tests.async_mock import call
+
 IEEE_GROUPABLE_DEVICE = "01:2d:6f:00:0a:90:69:e8"
 IEEE_GROUPABLE_DEVICE2 = "02:2d:6f:00:0a:90:69:e8"
 
diff --git a/tests/components/zha/test_light.py b/tests/components/zha/test_light.py
index 915ace7c7f2..a1a081d7e8b 100644
--- a/tests/components/zha/test_light.py
+++ b/tests/components/zha/test_light.py
@@ -1,6 +1,5 @@
 """Test zha light."""
 from datetime import timedelta
-from unittest.mock import MagicMock, call, sentinel
 
 import pytest
 import zigpy.profiles.zha as zha
@@ -23,7 +22,7 @@ from .common import (
     send_attributes_report,
 )
 
-from tests.async_mock import AsyncMock, patch
+from tests.async_mock import AsyncMock, MagicMock, call, patch, sentinel
 from tests.common import async_fire_time_changed
 
 ON = 1
diff --git a/tests/components/zwave/conftest.py b/tests/components/zwave/conftest.py
index f80c55f7767..50edcfec157 100644
--- a/tests/components/zwave/conftest.py
+++ b/tests/components/zwave/conftest.py
@@ -1,8 +1,7 @@
 """Fixtures for Z-Wave tests."""
-from unittest.mock import MagicMock, patch
-
 import pytest
 
+from tests.async_mock import MagicMock, patch
 from tests.mock.zwave import MockNetwork, MockOption
 
 
diff --git a/tests/components/zwave/test_binary_sensor.py b/tests/components/zwave/test_binary_sensor.py
index 54270cdc3f4..8ac6370ad35 100644
--- a/tests/components/zwave/test_binary_sensor.py
+++ b/tests/components/zwave/test_binary_sensor.py
@@ -1,9 +1,9 @@
 """Test Z-Wave binary sensors."""
 import datetime
-from unittest.mock import patch
 
 from homeassistant.components.zwave import binary_sensor, const
 
+from tests.async_mock import patch
 from tests.mock.zwave import MockEntityValues, MockNode, MockValue, value_changed
 
 
diff --git a/tests/components/zwave/test_cover.py b/tests/components/zwave/test_cover.py
index e8b784feefe..cde0957e2b3 100644
--- a/tests/components/zwave/test_cover.py
+++ b/tests/components/zwave/test_cover.py
@@ -1,6 +1,4 @@
 """Test Z-Wave cover devices."""
-from unittest.mock import MagicMock
-
 from homeassistant.components.cover import SUPPORT_CLOSE, SUPPORT_OPEN
 from homeassistant.components.zwave import (
     CONF_INVERT_OPENCLOSE_BUTTONS,
@@ -9,6 +7,7 @@ from homeassistant.components.zwave import (
     cover,
 )
 
+from tests.async_mock import MagicMock
 from tests.mock.zwave import MockEntityValues, MockNode, MockValue, value_changed
 
 
diff --git a/tests/components/zwave/test_init.py b/tests/components/zwave/test_init.py
index b71758469d0..19733b045dc 100644
--- a/tests/components/zwave/test_init.py
+++ b/tests/components/zwave/test_init.py
@@ -3,7 +3,6 @@ import asyncio
 from collections import OrderedDict
 from datetime import datetime
 import unittest
-from unittest.mock import MagicMock, patch
 
 import pytest
 from pytz import utc
@@ -23,7 +22,7 @@ from homeassistant.helpers.device_registry import async_get_registry as get_dev_
 from homeassistant.helpers.entity_registry import async_get_registry
 from homeassistant.setup import setup_component
 
-from tests.async_mock import AsyncMock
+from tests.async_mock import AsyncMock, MagicMock, patch
 from tests.common import async_fire_time_changed, get_test_home_assistant, mock_registry
 from tests.mock.zwave import MockEntityValues, MockNetwork, MockNode, MockValue
 
diff --git a/tests/components/zwave/test_light.py b/tests/components/zwave/test_light.py
index fc62ef880f6..1b973294daf 100644
--- a/tests/components/zwave/test_light.py
+++ b/tests/components/zwave/test_light.py
@@ -1,6 +1,4 @@
 """Test Z-Wave lights."""
-from unittest.mock import MagicMock, patch
-
 from homeassistant.components import zwave
 from homeassistant.components.light import (
     ATTR_BRIGHTNESS,
@@ -16,6 +14,7 @@ from homeassistant.components.light import (
 )
 from homeassistant.components.zwave import const, light
 
+from tests.async_mock import MagicMock, patch
 from tests.mock.zwave import MockEntityValues, MockNode, MockValue, value_changed
 
 
@@ -234,7 +233,7 @@ def test_dimmer_refresh_value(mock_openzwave):
 
     assert not device.is_on
 
-    with patch.object(light, "Timer", MagicMock()) as mock_timer:
+    with patch.object(light, "Timer") as mock_timer:
         value.data = 46
         value_changed(value)
 
@@ -246,7 +245,7 @@ def test_dimmer_refresh_value(mock_openzwave):
         assert mock_timer().start.called
         assert len(mock_timer().start.mock_calls) == 1
 
-        with patch.object(light, "Timer", MagicMock()) as mock_timer_2:
+        with patch.object(light, "Timer") as mock_timer_2:
             value_changed(value)
             assert not device.is_on
             assert mock_timer().cancel.called
diff --git a/tests/components/zwave/test_lock.py b/tests/components/zwave/test_lock.py
index d5b6d0a0d27..2f82bcb2764 100644
--- a/tests/components/zwave/test_lock.py
+++ b/tests/components/zwave/test_lock.py
@@ -1,9 +1,8 @@
 """Test Z-Wave locks."""
-from unittest.mock import MagicMock, patch
-
 from homeassistant import config_entries
 from homeassistant.components.zwave import const, lock
 
+from tests.async_mock import MagicMock, patch
 from tests.mock.zwave import MockEntityValues, MockNode, MockValue, value_changed
 
 
diff --git a/tests/components/zwave/test_node_entity.py b/tests/components/zwave/test_node_entity.py
index 4d117179328..8306899ce02 100644
--- a/tests/components/zwave/test_node_entity.py
+++ b/tests/components/zwave/test_node_entity.py
@@ -1,12 +1,12 @@
 """Test Z-Wave node entity."""
 import unittest
-from unittest.mock import MagicMock, patch
 
 import pytest
 
 from homeassistant.components.zwave import const, node_entity
 from homeassistant.const import ATTR_ENTITY_ID
 
+from tests.async_mock import MagicMock, patch
 import tests.mock.zwave as mock_zwave
 
 
diff --git a/tests/components/zwave/test_switch.py b/tests/components/zwave/test_switch.py
index 4293a4a23fd..b61c456ccb9 100644
--- a/tests/components/zwave/test_switch.py
+++ b/tests/components/zwave/test_switch.py
@@ -1,8 +1,7 @@
 """Test Z-Wave switches."""
-from unittest.mock import patch
-
 from homeassistant.components.zwave import switch
 
+from tests.async_mock import patch
 from tests.mock.zwave import MockEntityValues, MockNode, MockValue, value_changed
 
 
diff --git a/tests/helpers/test_check_config.py b/tests/helpers/test_check_config.py
index 7a5d606bcc8..ffc05544694 100644
--- a/tests/helpers/test_check_config.py
+++ b/tests/helpers/test_check_config.py
@@ -1,6 +1,5 @@
 """Test check_config helper."""
 import logging
-from unittest.mock import patch
 
 from homeassistant.config import YAML_CONFIG_FILE
 from homeassistant.helpers.check_config import (
@@ -8,6 +7,7 @@ from homeassistant.helpers.check_config import (
     async_check_ha_config_file,
 )
 
+from tests.async_mock import patch
 from tests.common import patch_yaml_files
 
 _LOGGER = logging.getLogger(__name__)
diff --git a/tests/helpers/test_condition.py b/tests/helpers/test_condition.py
index 03c3965fad7..c4b87b667fa 100644
--- a/tests/helpers/test_condition.py
+++ b/tests/helpers/test_condition.py
@@ -1,12 +1,12 @@
 """Test the condition helper."""
-from unittest.mock import patch
-
 import pytest
 
 from homeassistant.exceptions import HomeAssistantError
 from homeassistant.helpers import condition
 from homeassistant.util import dt
 
+from tests.async_mock import patch
+
 
 async def test_invalid_condition(hass):
     """Test if invalid condition raises."""
diff --git a/tests/helpers/test_config_entry_oauth2_flow.py b/tests/helpers/test_config_entry_oauth2_flow.py
index a72f3f51ee7..9826d60025f 100644
--- a/tests/helpers/test_config_entry_oauth2_flow.py
+++ b/tests/helpers/test_config_entry_oauth2_flow.py
@@ -2,13 +2,13 @@
 import asyncio
 import logging
 import time
-from unittest.mock import patch
 
 import pytest
 
 from homeassistant import config_entries, data_entry_flow, setup
 from homeassistant.helpers import config_entry_oauth2_flow
 
+from tests.async_mock import patch
 from tests.common import MockConfigEntry, mock_platform
 
 TEST_DOMAIN = "oauth2_test"
diff --git a/tests/helpers/test_config_validation.py b/tests/helpers/test_config_validation.py
index 1d082462849..bee463092ff 100644
--- a/tests/helpers/test_config_validation.py
+++ b/tests/helpers/test_config_validation.py
@@ -3,7 +3,6 @@ from datetime import date, datetime, timedelta
 import enum
 import os
 from socket import _GLOBAL_DEFAULT_TIMEOUT
-from unittest.mock import Mock, patch
 import uuid
 
 import pytest
@@ -12,6 +11,8 @@ import voluptuous as vol
 import homeassistant
 import homeassistant.helpers.config_validation as cv
 
+from tests.async_mock import Mock, patch
+
 
 def test_boolean():
     """Test boolean validation."""
diff --git a/tests/helpers/test_deprecation.py b/tests/helpers/test_deprecation.py
index 38410c3bf0f..c7e903f7b16 100644
--- a/tests/helpers/test_deprecation.py
+++ b/tests/helpers/test_deprecation.py
@@ -1,8 +1,8 @@
 """Test deprecation helpers."""
-from unittest.mock import MagicMock, patch
-
 from homeassistant.helpers.deprecation import deprecated_substitute, get_deprecated
 
+from tests.async_mock import MagicMock, patch
+
 
 class MockBaseClass:
     """Mock base class for deprecated testing."""
diff --git a/tests/helpers/test_device_registry.py b/tests/helpers/test_device_registry.py
index f81d20ecd66..30f991db724 100644
--- a/tests/helpers/test_device_registry.py
+++ b/tests/helpers/test_device_registry.py
@@ -1,6 +1,5 @@
 """Tests for the Device Registry."""
 import asyncio
-from unittest.mock import patch
 
 import pytest
 
@@ -8,6 +7,7 @@ from homeassistant.core import callback
 from homeassistant.helpers import device_registry
 
 import tests.async_mock
+from tests.async_mock import patch
 from tests.common import flush_store, mock_device_registry
 
 
diff --git a/tests/helpers/test_entity.py b/tests/helpers/test_entity.py
index dd734bb0dcb..70b72b1752f 100644
--- a/tests/helpers/test_entity.py
+++ b/tests/helpers/test_entity.py
@@ -3,7 +3,6 @@
 import asyncio
 from datetime import timedelta
 import threading
-from unittest.mock import MagicMock, PropertyMock, patch
 
 import pytest
 
@@ -13,6 +12,7 @@ from homeassistant.core import Context
 from homeassistant.helpers import entity, entity_registry
 from homeassistant.helpers.entity_values import EntityValues
 
+from tests.async_mock import MagicMock, PropertyMock, patch
 from tests.common import get_test_home_assistant, mock_registry
 
 
@@ -139,7 +139,7 @@ async def test_warn_slow_update(hass):
     mock_entity.entity_id = "comp_test.test_entity"
     mock_entity.async_update = async_update
 
-    with patch.object(hass.loop, "call_later", MagicMock()) as mock_call:
+    with patch.object(hass.loop, "call_later") as mock_call:
         await mock_entity.async_update_ha_state(True)
         assert mock_call.called
         assert len(mock_call.mock_calls) == 2
@@ -169,7 +169,7 @@ async def test_warn_slow_update_with_exception(hass):
     mock_entity.entity_id = "comp_test.test_entity"
     mock_entity.async_update = async_update
 
-    with patch.object(hass.loop, "call_later", MagicMock()) as mock_call:
+    with patch.object(hass.loop, "call_later") as mock_call:
         await mock_entity.async_update_ha_state(True)
         assert mock_call.called
         assert len(mock_call.mock_calls) == 2
@@ -198,7 +198,7 @@ async def test_warn_slow_device_update_disabled(hass):
     mock_entity.entity_id = "comp_test.test_entity"
     mock_entity.async_update = async_update
 
-    with patch.object(hass.loop, "call_later", MagicMock()) as mock_call:
+    with patch.object(hass.loop, "call_later") as mock_call:
         await mock_entity.async_device_update(warning=False)
 
         assert not mock_call.called
diff --git a/tests/helpers/test_entity_registry.py b/tests/helpers/test_entity_registry.py
index b2bfd1f48ff..9afb8623f18 100644
--- a/tests/helpers/test_entity_registry.py
+++ b/tests/helpers/test_entity_registry.py
@@ -1,6 +1,5 @@
 """Tests for the Entity Registry."""
 import asyncio
-from unittest.mock import patch
 
 import pytest
 
@@ -9,6 +8,7 @@ from homeassistant.core import CoreState, callback, valid_entity_id
 from homeassistant.helpers import entity_registry
 
 import tests.async_mock
+from tests.async_mock import patch
 from tests.common import MockConfigEntry, flush_store, mock_registry
 
 YAML__OPEN_PATH = "homeassistant.util.yaml.loader.open"
diff --git a/tests/helpers/test_event.py b/tests/helpers/test_event.py
index f6e375acf0b..654cf8483db 100644
--- a/tests/helpers/test_event.py
+++ b/tests/helpers/test_event.py
@@ -1,7 +1,6 @@
 """Test event helpers."""
 # pylint: disable=protected-access
 from datetime import datetime, timedelta
-from unittest.mock import patch
 
 from astral import Astral
 import pytest
@@ -27,6 +26,7 @@ from homeassistant.helpers.template import Template
 from homeassistant.setup import async_setup_component
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import async_fire_time_changed
 
 DEFAULT_TIME_ZONE = dt_util.DEFAULT_TIME_ZONE
diff --git a/tests/helpers/test_integration_platform.py b/tests/helpers/test_integration_platform.py
index d6c844c0d91..6f0e56d34c8 100644
--- a/tests/helpers/test_integration_platform.py
+++ b/tests/helpers/test_integration_platform.py
@@ -1,8 +1,7 @@
 """Test integration platform helpers."""
-from unittest.mock import Mock
-
 from homeassistant.setup import ATTR_COMPONENT, EVENT_COMPONENT_LOADED
 
+from tests.async_mock import Mock
 from tests.common import mock_platform
 
 
diff --git a/tests/helpers/test_network.py b/tests/helpers/test_network.py
index d4c5366b879..0fef40a82f4 100644
--- a/tests/helpers/test_network.py
+++ b/tests/helpers/test_network.py
@@ -1,9 +1,9 @@
 """Test network helper."""
-from unittest.mock import Mock, patch
-
 from homeassistant.components import cloud
 from homeassistant.helpers import network
 
+from tests.async_mock import Mock, patch
+
 
 async def test_get_external_url(hass):
     """Test get_external_url."""
diff --git a/tests/helpers/test_state.py b/tests/helpers/test_state.py
index d8202b88b46..b19669d13f4 100644
--- a/tests/helpers/test_state.py
+++ b/tests/helpers/test_state.py
@@ -1,7 +1,6 @@
 """Test state helpers."""
 import asyncio
 from datetime import timedelta
-from unittest.mock import patch
 
 import pytest
 
@@ -22,6 +21,7 @@ import homeassistant.core as ha
 from homeassistant.helpers import state
 from homeassistant.util import dt as dt_util
 
+from tests.async_mock import patch
 from tests.common import async_mock_service
 
 
diff --git a/tests/helpers/test_sun.py b/tests/helpers/test_sun.py
index b8ecd1ed86a..a877c7cdb00 100644
--- a/tests/helpers/test_sun.py
+++ b/tests/helpers/test_sun.py
@@ -1,12 +1,13 @@
 """The tests for the Sun helpers."""
 # pylint: disable=protected-access
 from datetime import datetime, timedelta
-from unittest.mock import patch
 
 from homeassistant.const import SUN_EVENT_SUNRISE, SUN_EVENT_SUNSET
 import homeassistant.helpers.sun as sun
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import patch
+
 
 def test_next_events(hass):
     """Test retrieving next sun events."""
diff --git a/tests/helpers/test_template.py b/tests/helpers/test_template.py
index 6b3e0774bd8..a698c7af6e7 100644
--- a/tests/helpers/test_template.py
+++ b/tests/helpers/test_template.py
@@ -2,7 +2,6 @@
 from datetime import datetime
 import math
 import random
-from unittest.mock import patch
 
 import pytest
 import pytz
@@ -21,6 +20,8 @@ from homeassistant.helpers import template
 import homeassistant.util.dt as dt_util
 from homeassistant.util.unit_system import UnitSystem
 
+from tests.async_mock import patch
+
 
 def _set_up_units(hass):
     """Set up the tests."""
diff --git a/tests/mock/zwave.py b/tests/mock/zwave.py
index 9089f159761..1049108f9de 100644
--- a/tests/mock/zwave.py
+++ b/tests/mock/zwave.py
@@ -1,8 +1,8 @@
 """Mock helpers for Z-Wave component."""
-from unittest.mock import MagicMock
-
 from pydispatch import dispatcher
 
+from tests.async_mock import MagicMock
+
 
 def value_changed(value):
     """Fire a value changed."""
diff --git a/tests/scripts/test_auth.py b/tests/scripts/test_auth.py
index 3ab19450879..c9ada99dc29 100644
--- a/tests/scripts/test_auth.py
+++ b/tests/scripts/test_auth.py
@@ -1,11 +1,10 @@
 """Test the auth script to manage local users."""
-from unittest.mock import Mock, patch
-
 import pytest
 
 from homeassistant.auth.providers import homeassistant as hass_auth
 from homeassistant.scripts import auth as script_auth
 
+from tests.async_mock import Mock, patch
 from tests.common import register_auth_provider
 
 
diff --git a/tests/scripts/test_check_config.py b/tests/scripts/test_check_config.py
index 737c3b56ecf..d28b5f69530 100644
--- a/tests/scripts/test_check_config.py
+++ b/tests/scripts/test_check_config.py
@@ -1,10 +1,10 @@
 """Test check_config script."""
 import logging
-from unittest.mock import patch
 
 from homeassistant.config import YAML_CONFIG_FILE
 import homeassistant.scripts.check_config as check_config
 
+from tests.async_mock import patch
 from tests.common import get_test_config_dir, patch_yaml_files
 
 _LOGGER = logging.getLogger(__name__)
diff --git a/tests/scripts/test_init.py b/tests/scripts/test_init.py
index 8feef2d3384..2c14bfdcf0a 100644
--- a/tests/scripts/test_init.py
+++ b/tests/scripts/test_init.py
@@ -1,8 +1,8 @@
 """Test script init."""
-from unittest.mock import patch
-
 import homeassistant.scripts as scripts
 
+from tests.async_mock import patch
+
 
 @patch("homeassistant.scripts.get_default_config_dir", return_value="/default")
 def test_config_per_platform(mock_def):
diff --git a/tests/test_main.py b/tests/test_main.py
index 5ec6460301f..40c34b77b50 100644
--- a/tests/test_main.py
+++ b/tests/test_main.py
@@ -1,9 +1,9 @@
 """Test methods in __main__."""
-from unittest.mock import PropertyMock, patch
-
 from homeassistant import __main__ as main
 from homeassistant.const import REQUIRED_PYTHON_VER
 
+from tests.async_mock import PropertyMock, patch
+
 
 @patch("sys.exit")
 def test_validate_python(mock_exit):
diff --git a/tests/util/test_async.py b/tests/util/test_async.py
index 33280895ba2..b60b4097c52 100644
--- a/tests/util/test_async.py
+++ b/tests/util/test_async.py
@@ -1,12 +1,13 @@
 """Tests for async util methods from Python source."""
 import asyncio
 from unittest import TestCase
-from unittest.mock import MagicMock, Mock, patch
 
 import pytest
 
 from homeassistant.util import async_ as hasync
 
+from tests.async_mock import MagicMock, Mock, patch
+
 
 @patch("asyncio.coroutines.iscoroutine")
 @patch("concurrent.futures.Future")
diff --git a/tests/util/test_init.py b/tests/util/test_init.py
index 2ffca07082b..ef5ecd898d7 100644
--- a/tests/util/test_init.py
+++ b/tests/util/test_init.py
@@ -1,12 +1,13 @@
 """Test Home Assistant util methods."""
 from datetime import datetime, timedelta
-from unittest.mock import MagicMock, patch
 
 import pytest
 
 from homeassistant import util
 import homeassistant.util.dt as dt_util
 
+from tests.async_mock import MagicMock, patch
+
 
 def test_sanitize_filename():
     """Test sanitize_filename."""
diff --git a/tests/util/test_json.py b/tests/util/test_json.py
index 258f266ff78..c2b6a428515 100644
--- a/tests/util/test_json.py
+++ b/tests/util/test_json.py
@@ -7,7 +7,6 @@ import os
 import sys
 from tempfile import mkdtemp
 import unittest
-from unittest.mock import Mock
 
 import pytest
 
@@ -20,6 +19,8 @@ from homeassistant.util.json import (
     save_json,
 )
 
+from tests.async_mock import Mock
+
 # Test data that can be saved as JSON
 TEST_JSON_A = {"a": 1, "B": "two"}
 TEST_JSON_B = {"a": "one", "B": 2}
diff --git a/tests/util/test_yaml.py b/tests/util/test_yaml.py
index 140859ccb73..4d6f4ce3ac9 100644
--- a/tests/util/test_yaml.py
+++ b/tests/util/test_yaml.py
@@ -3,7 +3,6 @@ import io
 import logging
 import os
 import unittest
-from unittest.mock import patch
 
 import pytest
 
@@ -12,6 +11,7 @@ from homeassistant.exceptions import HomeAssistantError
 import homeassistant.util.yaml as yaml
 from homeassistant.util.yaml import loader as yaml_loader
 
+from tests.async_mock import patch
 from tests.common import get_test_config_dir, patch_yaml_files
 
 
-- 
GitLab