예제 #1
0
def handle_webhook(payload, headers, resource_path):
    event = {
        "X-Hub-Signature": headers.get("X-Hub-Signature"),
        "X-Github-Event": headers.get("X-Github-Event"),
        "resource-path": resource_path,
        "irc-server": "chat.freenode.net",
        "irc-port": 6667,
        "irc-channel": "##testtest",
        "irchooky-sns-arn": get_sns_topic_arn("irc-hooky"),
        "payload": payload
    }
    return handler(event, {})
 def test_valid_sns_event(self):
     event = {
         "Records": [
             {
                 "number": "1"
             }
         ]
     }
     result = handler(event, {})
     self.assertTrue('version' in result)
     self.assertEqual(len(self.mock_send_irc_msg.mock_calls), 1)
     self.assertEqual(len(self.mock_send_sns_msg.mock_calls), 0)
예제 #3
0
파일: server.py 프로젝트: byorgey/irc-hooky
def handle_webhook(payload, headers, resource_path):
    event = {
        "X-Hub-Signature": headers.get("X-Hub-Signature"),
        "X-Github-Event": headers.get("X-Github-Event"),
        "resource-path": resource_path,
        "irc-server": "chat.freenode.net",
        "irc-port": 6667,
        "irc-channel": "##testtest",
        "irchooky-sns-arn": get_sns_topic_arn("irc-hooky"),
        "payload": payload
    }
    return handler(event, {})
 def test_invalid_github_event_type(self):
     event = {
         "X-Hub-Signature": "",
         "X-Github-Event": "fake_event",
         "resource-path": "/github",
         "irc-server": "chat.freenode.net",
         "irc-port": 6667,
         "irc-channel": "##testtest",
         "irchooky-sns-arn": "arn",
         "payload": {}
     }
     result = handler(event, {})
     self.assertTrue('version' in result)
     self.assertEqual(len(self.mock_send_irc_msg.mock_calls), 0)
     self.assertEqual(len(self.mock_send_sns_msg.mock_calls), 0)
예제 #5
0
 def test_invalid_github_event_type(self):
     event = {
         "X-Hub-Signature": "",
         "X-Github-Event": "fake_event",
         "resource-path": "/github",
         "irc-server": "chat.freenode.net",
         "irc-port": 6667,
         "irc-channel": "##testtest",
         "irchooky-sns-arn": "arn",
         "payload": {}
     }
     result = handler(event, {})
     self.assertTrue('version' in result)
     self.assertEqual(len(self.mock_send_irc_msg.mock_calls), 0)
     self.assertEqual(len(self.mock_send_sns_msg.mock_calls), 0)
 def test_valid_atlas_event_type(self):
     payload = {
         "terraform_alert": {
             "environment": "user/tf-test",
             "message": "Queued manually in Atlas",
             "number": 2,
             "status": "errored",
             "url": "https://url.com"
         }
     }
     event = {
         "X-Hub-Signature": "",
         "X-Github-Event": "pull_request",
         "resource-path": "/atlas",
         "irc-server": "chat.freenode.net",
         "irc-port": 6667,
         "irc-channel": "##testtest",
         "irchooky-sns-arn": "arn",
         "payload": payload
     }
     result = handler(event, {})
     self.assertTrue('version' in result)
     self.assertEqual(len(self.mock_send_irc_msg.mock_calls), 0)
     self.assertEqual(len(self.mock_send_sns_msg.mock_calls), 1)
예제 #7
0
 def test_valid_atlas_event_type(self):
     payload = {
         "terraform_alert": {
             "environment": "user/tf-test",
             "message": "Queued manually in Atlas",
             "number": 2,
             "status": "errored",
             "url": "https://url.com"
         }
     }
     event = {
         "X-Hub-Signature": "",
         "X-Github-Event": "pull_request",
         "resource-path": "/atlas",
         "irc-server": "chat.freenode.net",
         "irc-port": 6667,
         "irc-channel": "##testtest",
         "irchooky-sns-arn": "arn",
         "payload": payload
     }
     result = handler(event, {})
     self.assertTrue('version' in result)
     self.assertEqual(len(self.mock_send_irc_msg.mock_calls), 0)
     self.assertEqual(len(self.mock_send_sns_msg.mock_calls), 1)
예제 #8
0
 def test_valid_sns_event(self):
     event = {"Records": [{"number": "1"}]}
     result = handler(event, {})
     self.assertTrue('version' in result)
     self.assertEqual(len(self.mock_send_irc_msg.mock_calls), 1)
     self.assertEqual(len(self.mock_send_sns_msg.mock_calls), 0)