103 lines
3.5 KiB
Python
103 lines
3.5 KiB
Python
"""Test Axis diagnostics."""
|
|
|
|
from copy import deepcopy
|
|
from unittest.mock import patch
|
|
|
|
from homeassistant.components.diagnostics import REDACTED
|
|
|
|
from .test_device import (
|
|
API_DISCOVERY_BASIC_DEVICE_INFO,
|
|
API_DISCOVERY_RESPONSE,
|
|
setup_axis_integration,
|
|
)
|
|
|
|
from tests.components.diagnostics import get_diagnostics_for_config_entry
|
|
|
|
|
|
async def test_entry_diagnostics(hass, hass_client):
|
|
"""Test config entry diagnostics."""
|
|
api_discovery = deepcopy(API_DISCOVERY_RESPONSE)
|
|
api_discovery["data"]["apiList"].append(API_DISCOVERY_BASIC_DEVICE_INFO)
|
|
|
|
with patch.dict(API_DISCOVERY_RESPONSE, api_discovery):
|
|
config_entry = await setup_axis_integration(hass)
|
|
|
|
assert await get_diagnostics_for_config_entry(hass, hass_client, config_entry) == {
|
|
"config": {
|
|
"entry_id": config_entry.entry_id,
|
|
"version": 3,
|
|
"domain": "axis",
|
|
"title": "Mock Title",
|
|
"data": {
|
|
"host": "1.2.3.4",
|
|
"username": REDACTED,
|
|
"password": REDACTED,
|
|
"port": 80,
|
|
"model": "model",
|
|
"name": "name",
|
|
},
|
|
"options": {"events": True},
|
|
"pref_disable_new_entities": False,
|
|
"pref_disable_polling": False,
|
|
"source": "user",
|
|
"unique_id": REDACTED,
|
|
"disabled_by": None,
|
|
},
|
|
"api_discovery": [
|
|
{
|
|
"id": "api-discovery",
|
|
"name": "API Discovery Service",
|
|
"version": "1.0",
|
|
},
|
|
{
|
|
"id": "param-cgi",
|
|
"name": "Legacy Parameter Handling",
|
|
"version": "1.0",
|
|
},
|
|
{
|
|
"id": "basic-device-info",
|
|
"name": "Basic Device Information",
|
|
"version": "1.1",
|
|
},
|
|
],
|
|
"basic_device_info": {
|
|
"ProdNbr": "M1065-LW",
|
|
"ProdType": "Network Camera",
|
|
"SerialNumber": REDACTED,
|
|
"Version": "9.80.1",
|
|
},
|
|
"params": {
|
|
"root.IOPort": {
|
|
"I0.Configurable": "no",
|
|
"I0.Direction": "input",
|
|
"I0.Input.Name": "PIR sensor",
|
|
"I0.Input.Trig": "closed",
|
|
},
|
|
"root.Input": {"NbrOfInputs": "1"},
|
|
"root.Output": {"NbrOfOutputs": "0"},
|
|
"root.Properties": {
|
|
"API.HTTP.Version": "3",
|
|
"API.Metadata.Metadata": "yes",
|
|
"API.Metadata.Version": "1.0",
|
|
"EmbeddedDevelopment.Version": "2.16",
|
|
"Firmware.BuildDate": "Feb 15 2019 09:42",
|
|
"Firmware.BuildNumber": "26",
|
|
"Firmware.Version": "9.10.1",
|
|
"Image.Format": "jpeg,mjpeg,h264",
|
|
"Image.NbrOfViews": "2",
|
|
"Image.Resolution": "1920x1080,1280x960,1280x720,1024x768,1024x576,800x600,640x480,640x360,352x240,320x240",
|
|
"Image.Rotation": "0,180",
|
|
"System.SerialNumber": REDACTED,
|
|
},
|
|
"root.StreamProfile": {
|
|
"MaxGroups": "26",
|
|
"S0.Description": "profile_1_description",
|
|
"S0.Name": "profile_1",
|
|
"S0.Parameters": "videocodec=h264",
|
|
"S1.Description": "profile_2_description",
|
|
"S1.Name": "profile_2",
|
|
"S1.Parameters": "videocodec=h265",
|
|
},
|
|
},
|
|
}
|