def test_put_401_disarmed(self): e = alarm_events.parse_event_code('987618140103001_') with mock.patch('urllib2.urlopen') as mock_open: alarm_events.update_state(e) self.assertTrue(mock_open.called) req = mock_open.call_args_list[0][0][0] self.assertEqual('http://localhost/foo/state', req.get_full_url()) self.assertEqual('PUT', req.get_method()) self.assertEqual('disarmed', req.get_data())
def test_put_401_disarmed(self): e = alarm_events.parse_event_code("987618140103001_") with mock.patch("urllib2.urlopen") as mock_open: alarm_events.update_state(e) self.assertTrue(mock_open.called) req = mock_open.call_args_list[0][0][0] self.assertEqual("http://localhost/foo/state", req.get_full_url()) self.assertEqual("PUT", req.get_method()) self.assertEqual("disarmed", req.get_data())
def test_put_570_unbypass(self): e = alarm_events.parse_event_code('987618357003001_') with mock.patch('urllib2.urlopen') as mock_open: alarm_events.update_state(e) self.assertTrue(mock_open.called) req = mock_open.call_args_list[0][0][0] self.assertEqual('http://localhost/foo/bypass', req.get_full_url()) self.assertEqual('PUT', req.get_method()) self.assertEqual('no', req.get_data()) self.assertEqual(1, len(mock_open.call_args_list))
def test_put_570_unbypass(self): e = alarm_events.parse_event_code("987618357003001_") with mock.patch("urllib2.urlopen") as mock_open: alarm_events.update_state(e) self.assertTrue(mock_open.called) req = mock_open.call_args_list[0][0][0] self.assertEqual("http://localhost/foo/bypass", req.get_full_url()) self.assertEqual("PUT", req.get_method()) self.assertEqual("no", req.get_data()) self.assertEqual(1, len(mock_open.call_args_list))
def test_arm(self): e = alarm_events.parse_event_code("987618340103001_") self.assertEqual("System armed normally", e.event) self.assertEqual(9876, e.account) self.assertEqual(3, e.qualifier) self.assertEqual(1, e.zone_number) self.assertEqual(3, e.partition) self.assertEqual(401, e.event_code) self.assertEqual("Fake Master", e.user) self.assertEqual("Front Door", e.zone)
def test_arm(self): e = alarm_events.parse_event_code('987618340103001_') self.assertEqual('System armed normally', e.event) self.assertEqual(9876, e.account) self.assertEqual(3, e.qualifier) self.assertEqual(1, e.zone_number) self.assertEqual(3, e.partition) self.assertEqual(401, e.event_code) self.assertEqual('Fake Master', e.user) self.assertEqual('Front Door', e.zone)
def test_mail_event(self): e = alarm_events.parse_event_code("987618140103001_") with mock.patch("subprocess.Popen") as mock_p: alarm_events.mail_event(e) mock_p.assert_called_once_with( ["/usr/bin/mail", "-S", "from=Alarm System <*****@*****.**>", "-s", str(e), "*****@*****.**"], stdin=subprocess.PIPE, ) mock_p.return_value.stdin.write.assert_called_once_with(e.dump()) mock_p.return_value.stdin.close.assert_called_once_with() mock_p.return_value.wait.assert_called_once_with()
def test_mail_event(self): e = alarm_events.parse_event_code('987618140103001_') with mock.patch('subprocess.Popen') as mock_p: alarm_events.mail_event(e) mock_p.assert_called_once_with([ '/usr/bin/mail', '-S', 'from=Alarm System <*****@*****.**>', '-s', str(e), '*****@*****.**' ], stdin=subprocess.PIPE) mock_p.return_value.stdin.write.assert_called_once_with(e.dump()) mock_p.return_value.stdin.close.assert_called_once_with() mock_p.return_value.wait.assert_called_once_with()
def test_unknown_user(self): e = alarm_events.parse_event_code('987618340103031_') self.assertEqual('User 31', e.user)
def test_trouble_unknown_type(self): alarm_events.CONFIG.set("9876", "type", "foomatic9000") e = alarm_events.parse_event_code("987618333300911_") reason = e.dump().split("\n")[0] self.assertEqual("reason=Trouble with expander device 911 (restored)", reason)
def test_trouble_no_type(self): alarm_events.CONFIG.remove_option("9876", "type") e = alarm_events.parse_event_code("987618333300911_") reason = e.dump().split("\n")[0] self.assertEqual("reason=Trouble with expander device 911 (restored)", reason)
def test_unknown_trouble(self): e = alarm_events.parse_event_code('987618333300911_') reason = e.dump().split('\n')[0] self.assertEqual('reason=Trouble with expander device 911 (restored)', reason)
def test_expander_trouble(self): e = alarm_events.parse_event_code("987618333300200_") reason = e.dump().split("\n")[0] self.assertEqual("reason=Trouble with Keypad 2 (Partition 1) (restored)", reason)
def test_summary_4xx(self): e = alarm_events.parse_event_code("987618340103001_") self.assertEqual("Event 401: System armed normally by " "Fake Master at Test System", str(e))
def test_unknown_user(self): e = alarm_events.parse_event_code("987618340103031_") self.assertEqual("User 31", e.user)
def test_trouble_no_type(self): alarm_events.CONFIG.remove_option('9876', 'type') e = alarm_events.parse_event_code('987618333300911_') reason = e.dump().split('\n')[0] self.assertEqual('reason=Trouble with expander device 911 (restored)', reason)
def test_trouble_unknown_type(self): alarm_events.CONFIG.set('9876', 'type', 'foomatic9000') e = alarm_events.parse_event_code('987618333300911_') reason = e.dump().split('\n')[0] self.assertEqual('reason=Trouble with expander device 911 (restored)', reason)
def test_quick_arm(self): e = alarm_events.parse_event_code('987618340103098_') self.assertEqual('keypad user', e.user)
def test_unknown_zone(self): e = alarm_events.parse_event_code('987618340103031_') self.assertEqual('Zone 31', e.zone)
def test_summary_4xx(self): e = alarm_events.parse_event_code('987618340103001_') self.assertEqual( 'Event 401: System armed normally by ' 'Fake Master at Test System', str(e))
def test_quick_arm(self): e = alarm_events.parse_event_code("987618340103098_") self.assertEqual("keypad user", e.user)
def test_summary_1xx(self): e = alarm_events.parse_event_code('987618113003001_') self.assertEqual( 'Alarm 130: Burglary alarm in zone ' 'Front Door at Test System', str(e))
def test_unknown_zone(self): e = alarm_events.parse_event_code("987618340103031_") self.assertEqual("Zone 31", e.zone)
def test_expander_trouble(self): e = alarm_events.parse_event_code('987618333300200_') reason = e.dump().split('\n')[0] self.assertEqual( 'reason=Trouble with Keypad 2 (Partition 1) (restored)', reason)
def test_summary_1xx(self): e = alarm_events.parse_event_code("987618113003001_") self.assertEqual("Alarm 130: Burglary alarm in zone " "Front Door at Test System", str(e))
def test_unknown_trouble(self): e = alarm_events.parse_event_code("987618333300911_") reason = e.dump().split("\n")[0] self.assertEqual("reason=Trouble with expander device 911 (restored)", reason)
def test_system_trouble(self): e = alarm_events.parse_event_code("987618333300000_") reason = e.dump().split("\n")[0] self.assertEqual("reason=Trouble with Control Panel (restored)", reason)
def test_system_trouble(self): e = alarm_events.parse_event_code('987618333300000_') reason = e.dump().split('\n')[0] self.assertEqual('reason=Trouble with Control Panel (restored)', reason)