Fix: Event types with periods cannot be fired using API
parent
94752f663e
commit
2f65751087
|
@ -152,8 +152,9 @@ class RequestHandler(BaseHTTPRequestHandler):
|
||||||
|
|
||||||
# /events
|
# /events
|
||||||
('GET', '/api/events', '_handle_get_api_events'),
|
('GET', '/api/events', '_handle_get_api_events'),
|
||||||
('POST', re.compile(r'/api/events/(?P<event_type>\w+)'),
|
('POST',
|
||||||
'_handle_fire_event'),
|
re.compile(r'/api/events/(?P<event_type>[a-zA-Z\._0-9]+)'),
|
||||||
|
'_handle_fire_event'),
|
||||||
|
|
||||||
# Statis files
|
# Statis files
|
||||||
('GET', re.compile(r'/static/(?P<file>[a-zA-Z\._\-0-9\/]+)'),
|
('GET', re.compile(r'/static/(?P<file>[a-zA-Z\._\-0-9\/]+)'),
|
||||||
|
|
|
@ -87,14 +87,14 @@ class TestHTTPInterface(unittest.TestCase):
|
||||||
|
|
||||||
def test_debug_change_state(self):
|
def test_debug_change_state(self):
|
||||||
""" Test if we can change a state from the debug interface. """
|
""" Test if we can change a state from the debug interface. """
|
||||||
self.statemachine.set_state("test", "not_to_be_set_state")
|
self.statemachine.set_state("test.test", "not_to_be_set_state")
|
||||||
|
|
||||||
requests.post(_url(hah.URL_CHANGE_STATE),
|
requests.post(_url(hah.URL_CHANGE_STATE),
|
||||||
data={"category": "test",
|
data={"category": "test.test",
|
||||||
"new_state":"debug_state_change2",
|
"new_state":"debug_state_change2",
|
||||||
"api_password":API_PASSWORD})
|
"api_password":API_PASSWORD})
|
||||||
|
|
||||||
self.assertEqual(self.statemachine.get_state("test")['state'],
|
self.assertEqual(self.statemachine.get_state("test.test")['state'],
|
||||||
"debug_state_change2")
|
"debug_state_change2")
|
||||||
|
|
||||||
def test_debug_fire_event(self):
|
def test_debug_fire_event(self):
|
||||||
|
@ -159,13 +159,13 @@ class TestHTTPInterface(unittest.TestCase):
|
||||||
def test_api_state_change(self):
|
def test_api_state_change(self):
|
||||||
""" Test if we can change the state of a category that exists. """
|
""" Test if we can change the state of a category that exists. """
|
||||||
|
|
||||||
self.statemachine.set_state("test", "not_to_be_set_state")
|
self.statemachine.set_state("test.test", "not_to_be_set_state")
|
||||||
|
|
||||||
requests.post(_url(hah.URL_API_STATES_CATEGORY.format("test")),
|
requests.post(_url(hah.URL_API_STATES_CATEGORY.format("test.test")),
|
||||||
data={"new_state":"debug_state_change2",
|
data={"new_state":"debug_state_change2",
|
||||||
"api_password":API_PASSWORD})
|
"api_password":API_PASSWORD})
|
||||||
|
|
||||||
self.assertEqual(self.statemachine.get_state("test")['state'],
|
self.assertEqual(self.statemachine.get_state("test.test")['state'],
|
||||||
"debug_state_change2")
|
"debug_state_change2")
|
||||||
|
|
||||||
# pylint: disable=invalid-name
|
# pylint: disable=invalid-name
|
||||||
|
@ -196,10 +196,10 @@ class TestHTTPInterface(unittest.TestCase):
|
||||||
""" Helper method that will verify our event got called. """
|
""" Helper method that will verify our event got called. """
|
||||||
test_value.append(1)
|
test_value.append(1)
|
||||||
|
|
||||||
self.eventbus.listen_once("test_event_no_data", listener)
|
self.eventbus.listen_once("test.event_no_data", listener)
|
||||||
|
|
||||||
requests.post(
|
requests.post(
|
||||||
_url(hah.URL_API_EVENTS_EVENT.format("test_event_no_data")),
|
_url(hah.URL_API_EVENTS_EVENT.format("test.event_no_data")),
|
||||||
data={"api_password":API_PASSWORD})
|
data={"api_password":API_PASSWORD})
|
||||||
|
|
||||||
# Allow the event to take place
|
# Allow the event to take place
|
||||||
|
|
Loading…
Reference in New Issue