core/tests/components/qnap/conftest.py

35 lines
1012 B
Python
Raw Normal View History

Add config_flow to QNAP (#80450) * Create config_flow.py * Update __init__.py * Create const.py * Create strings.json * Update sensor.py * Update manifest.json * Update manifest.json * Add device name to entities * Correcting health sensor * Update manifest.json * Adding integration_type * Update sensor.py * Update __init__.py * Enums * Update sensor.py * Removed unused notify_create * Switch to SensorDeviceClass.TEMPERATURE * Update enums * Remove SENSOR_TYPES from const.py * Add SENSOR_TYPES to sensor.py * Removed dependancies * Removed import yaml * Removed entity_registry_enabled_default * Update const.py remove dups * Update manifest.json removed dups * Update __init__.py * Update const.py * Update manifest.json * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py remove unused * Update sensor.py add docstring * Update sensor.py add super * Remove FOLDER sensors * Remove VOLUME_NAME * fix cli * fix cli * Add config flow tests * Update requirements_test_all.txt * Update CODEOWNERS * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update __init__.py Change unload to walrus Remove async_setup * Update const.py remove PLATFORMS * Update __init__.py add Platform Enum As per epenet * Update __init__.py * Update config_flow.py * Update sensor.py * Update __init__.py ruff * Update config_flow.py Ruff * Update sensor.py * Update const.py remove attrs * Update sensor.py add attrs * Revert tuple for sensor extend * Update sensor.py * Update coordinator.py * Update coordinator.py * Update sensor.py * Update coordinator.py * Update homeassistant/components/qnap/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/const.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update coordinator.py * Update __init__.py * Update coordinator.py * Update sensor.py * Add device_info * Update sensor.py * Update sensor.py self._attr_unique_id * Update sensor.py * Update sensor.py * Type Hints * Move tuples * Drive sensor name * Remove caps * Remove caps * Add YAML import * Update sensor.py fix ruff * Revert tuples * Update sensor.py as per review * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * assert uid is not None * Update homeassistant/components/qnap/sensor.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/sensor.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update .coveragerc Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/const.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/const.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update sensor.py * Update config_flow.py add imports * Update const.py * Update sensor.py move confs to const * Update config_flow.py add const * Update test_config_flow.py remove const name * Update test_config_flow.py remove standard result const * Update test_config_flow.py * Combine tests * Update test_config_flow.py * Update config_flow.py * Update test_config_flow.py * Update config_flow.py * Update test_config_flow.py * Update test_config_flow.py * Update sensor.py change UID as requested * Update sensor.py added check for monitor_device * fix tests * Remove rounding * Revert "Remove rounding" This reverts commit 61bf653c069d37cd7c20e3dd2f555f80b6e5d94f. --------- Co-authored-by: starkillerOG <starkiller.og@gmail.com> Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-27 15:42:27 +00:00
"""Setup the QNAP tests."""
Add config_flow to QNAP (#80450) * Create config_flow.py * Update __init__.py * Create const.py * Create strings.json * Update sensor.py * Update manifest.json * Update manifest.json * Add device name to entities * Correcting health sensor * Update manifest.json * Adding integration_type * Update sensor.py * Update __init__.py * Enums * Update sensor.py * Removed unused notify_create * Switch to SensorDeviceClass.TEMPERATURE * Update enums * Remove SENSOR_TYPES from const.py * Add SENSOR_TYPES to sensor.py * Removed dependancies * Removed import yaml * Removed entity_registry_enabled_default * Update const.py remove dups * Update manifest.json removed dups * Update __init__.py * Update const.py * Update manifest.json * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py remove unused * Update sensor.py add docstring * Update sensor.py add super * Remove FOLDER sensors * Remove VOLUME_NAME * fix cli * fix cli * Add config flow tests * Update requirements_test_all.txt * Update CODEOWNERS * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update __init__.py Change unload to walrus Remove async_setup * Update const.py remove PLATFORMS * Update __init__.py add Platform Enum As per epenet * Update __init__.py * Update config_flow.py * Update sensor.py * Update __init__.py ruff * Update config_flow.py Ruff * Update sensor.py * Update const.py remove attrs * Update sensor.py add attrs * Revert tuple for sensor extend * Update sensor.py * Update coordinator.py * Update coordinator.py * Update sensor.py * Update coordinator.py * Update homeassistant/components/qnap/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/const.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update coordinator.py * Update __init__.py * Update coordinator.py * Update sensor.py * Add device_info * Update sensor.py * Update sensor.py self._attr_unique_id * Update sensor.py * Update sensor.py * Type Hints * Move tuples * Drive sensor name * Remove caps * Remove caps * Add YAML import * Update sensor.py fix ruff * Revert tuples * Update sensor.py as per review * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * assert uid is not None * Update homeassistant/components/qnap/sensor.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/sensor.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update .coveragerc Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/const.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/const.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update sensor.py * Update config_flow.py add imports * Update const.py * Update sensor.py move confs to const * Update config_flow.py add const * Update test_config_flow.py remove const name * Update test_config_flow.py remove standard result const * Update test_config_flow.py * Combine tests * Update test_config_flow.py * Update config_flow.py * Update test_config_flow.py * Update config_flow.py * Update test_config_flow.py * Update test_config_flow.py * Update sensor.py change UID as requested * Update sensor.py added check for monitor_device * fix tests * Remove rounding * Revert "Remove rounding" This reverts commit 61bf653c069d37cd7c20e3dd2f555f80b6e5d94f. --------- Co-authored-by: starkillerOG <starkiller.og@gmail.com> Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-27 15:42:27 +00:00
from collections.abc import Generator
from unittest.mock import AsyncMock, MagicMock, patch
import pytest
TEST_HOST = "1.2.3.4"
TEST_USERNAME = "admin"
TEST_PASSWORD = "password"
TEST_NAS_NAME = "Test NAS name"
TEST_SERIAL = "123456789"
TEST_SYSTEM_STATS = {"system": {"serial_number": TEST_SERIAL, "name": TEST_NAS_NAME}}
@pytest.fixture
def mock_setup_entry() -> Generator[AsyncMock, None, None]:
"""Override async_setup_entry."""
with patch(
"homeassistant.components.qnap.async_setup_entry", return_value=True
) as mock_setup_entry:
yield mock_setup_entry
@pytest.fixture
def qnap_connect(mock_get_source_ip: None) -> Generator[MagicMock, None, None]:
"""Mock qnap connection."""
with patch(
"homeassistant.components.qnap.config_flow.QNAPStats", autospec=True
) as host_mock_class:
host_mock = host_mock_class.return_value
host_mock.get_system_stats.return_value = TEST_SYSTEM_STATS
yield host_mock