mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 05:07:41 +00:00
This reverts commit 49c2a4a4e3290de32cf3a10fd17f5c7a1f0234de. The validation was causing more problems than it was fixing, so removed it completely
This commit is contained in:
parent
05e7238c45
commit
99d732b974
@ -2,7 +2,6 @@
|
|||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
import logging
|
import logging
|
||||||
from math import ceil
|
from math import ceil
|
||||||
from uuid import UUID
|
|
||||||
|
|
||||||
import pytankerkoenig
|
import pytankerkoenig
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
@ -26,26 +25,11 @@ _LOGGER = logging.getLogger(__name__)
|
|||||||
DEFAULT_RADIUS = 2
|
DEFAULT_RADIUS = 2
|
||||||
DEFAULT_SCAN_INTERVAL = timedelta(minutes=30)
|
DEFAULT_SCAN_INTERVAL = timedelta(minutes=30)
|
||||||
|
|
||||||
|
|
||||||
def uuid4_string(value):
|
|
||||||
"""Validate a v4 UUID in string format."""
|
|
||||||
try:
|
|
||||||
result = UUID(value, version=4)
|
|
||||||
except (ValueError, AttributeError, TypeError) as error:
|
|
||||||
raise vol.Invalid("Invalid Version4 UUID", error_message=str(error))
|
|
||||||
|
|
||||||
if str(result) != value.lower():
|
|
||||||
# UUID() will create a uuid4 if input is invalid
|
|
||||||
raise vol.Invalid("Invalid Version4 UUID")
|
|
||||||
|
|
||||||
return str(result)
|
|
||||||
|
|
||||||
|
|
||||||
CONFIG_SCHEMA = vol.Schema(
|
CONFIG_SCHEMA = vol.Schema(
|
||||||
{
|
{
|
||||||
DOMAIN: vol.Schema(
|
DOMAIN: vol.Schema(
|
||||||
{
|
{
|
||||||
vol.Required(CONF_API_KEY): uuid4_string,
|
vol.Required(CONF_API_KEY): cv.string,
|
||||||
vol.Optional(
|
vol.Optional(
|
||||||
CONF_SCAN_INTERVAL, default=DEFAULT_SCAN_INTERVAL
|
CONF_SCAN_INTERVAL, default=DEFAULT_SCAN_INTERVAL
|
||||||
): cv.time_period,
|
): cv.time_period,
|
||||||
@ -66,7 +50,7 @@ CONFIG_SCHEMA = vol.Schema(
|
|||||||
cv.positive_int, vol.Range(min=1)
|
cv.positive_int, vol.Range(min=1)
|
||||||
),
|
),
|
||||||
vol.Optional(CONF_STATIONS, default=[]): vol.All(
|
vol.Optional(CONF_STATIONS, default=[]): vol.All(
|
||||||
cv.ensure_list, [uuid4_string]
|
cv.ensure_list, [cv.string]
|
||||||
),
|
),
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
@ -588,9 +588,6 @@ pysonos==0.0.25
|
|||||||
# homeassistant.components.spc
|
# homeassistant.components.spc
|
||||||
pyspcwebgw==0.4.0
|
pyspcwebgw==0.4.0
|
||||||
|
|
||||||
# homeassistant.components.tankerkoenig
|
|
||||||
pytankerkoenig==0.0.6
|
|
||||||
|
|
||||||
# homeassistant.components.ecobee
|
# homeassistant.components.ecobee
|
||||||
python-ecobee-api==0.2.2
|
python-ecobee-api==0.2.2
|
||||||
|
|
||||||
|
@ -1 +0,0 @@
|
|||||||
"""Tests for the tankerkoenig integration."""
|
|
@ -1,32 +0,0 @@
|
|||||||
"""The tests for the custom tankerkoenig validators."""
|
|
||||||
import unittest
|
|
||||||
import uuid
|
|
||||||
|
|
||||||
import pytest
|
|
||||||
import voluptuous as vol
|
|
||||||
|
|
||||||
from homeassistant.components.tankerkoenig import uuid4_string
|
|
||||||
|
|
||||||
|
|
||||||
class TestUUID4StringValidator(unittest.TestCase):
|
|
||||||
"""Test the UUID4 string custom validator."""
|
|
||||||
|
|
||||||
def test_uuid4_string(caplog):
|
|
||||||
"""Test string uuid validation."""
|
|
||||||
schema = vol.Schema(uuid4_string)
|
|
||||||
|
|
||||||
for value in ["Not a hex string", "0", 0]:
|
|
||||||
with pytest.raises(vol.Invalid):
|
|
||||||
schema(value)
|
|
||||||
|
|
||||||
with pytest.raises(vol.Invalid):
|
|
||||||
# the third block should start with 4
|
|
||||||
schema("a03d31b2-2eee-2acc-bb90-eec40be6ed23")
|
|
||||||
|
|
||||||
with pytest.raises(vol.Invalid):
|
|
||||||
# the fourth block should start with 8-a
|
|
||||||
schema("a03d31b2-2eee-4acc-1b90-eec40be6ed23")
|
|
||||||
|
|
||||||
_str = str(uuid.uuid4())
|
|
||||||
assert schema(_str) == _str
|
|
||||||
assert schema(_str.upper()) == _str
|
|
Loading…
x
Reference in New Issue
Block a user