From 64c5d26a845733183f54d932266b8b6f0d0c7764 Mon Sep 17 00:00:00 2001 From: Rene Nulsch <33263735+ReneNulschDE@users.noreply.github.com> Date: Sun, 11 Feb 2018 18:19:31 +0100 Subject: [PATCH] Fix Panel_IFrame - FTP URL not allowed in 0.63 (#12295) --- homeassistant/components/panel_iframe.py | 3 ++- tests/components/test_panel_iframe.py | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/panel_iframe.py b/homeassistant/components/panel_iframe.py index 6ddf00cf7d4..4574437bac9 100644 --- a/homeassistant/components/panel_iframe.py +++ b/homeassistant/components/panel_iframe.py @@ -23,13 +23,14 @@ CONF_RELATIVE_URL_REGEX = r'\A/' CONFIG_SCHEMA = vol.Schema({ DOMAIN: vol.Schema({ cv.slug: { + # pylint: disable=no-value-for-parameter vol.Optional(CONF_TITLE): cv.string, vol.Optional(CONF_ICON): cv.icon, vol.Required(CONF_URL): vol.Any( vol.Match( CONF_RELATIVE_URL_REGEX, msg=CONF_RELATIVE_URL_ERROR_MSG), - cv.url), + vol.Url()), }})}, extra=vol.ALLOW_EXTRA) diff --git a/tests/components/test_panel_iframe.py b/tests/components/test_panel_iframe.py index ef702b96f4b..91a07511787 100644 --- a/tests/components/test_panel_iframe.py +++ b/tests/components/test_panel_iframe.py @@ -55,6 +55,11 @@ class TestPanelIframe(unittest.TestCase): 'title': 'Api', 'url': '/api', }, + 'ftp': { + 'icon': 'mdi:weather', + 'title': 'FTP', + 'url': 'ftp://some/ftp', + }, }, }) @@ -86,3 +91,12 @@ class TestPanelIframe(unittest.TestCase): 'url': '/frontend_es5/panels/ha-panel-iframe-md5md5.html', 'url_path': 'api', } + + assert panels.get('ftp').to_response(self.hass, None) == { + 'component_name': 'iframe', + 'config': {'url': 'ftp://some/ftp'}, + 'icon': 'mdi:weather', + 'title': 'FTP', + 'url': '/frontend_es5/panels/ha-panel-iframe-md5md5.html', + 'url_path': 'ftp', + }