def test_api_key_not_set(self, m): hook = OpsgenieAlertHook() m.post(self.opsgenie_alert_endpoint, status_code=202, json=self._mock_success_response_body) with self.assertRaises(AirflowException): hook.execute(payload=self._payload)
def test_payload_set(self, m): hook = OpsgenieAlertHook(opsgenie_conn_id=self.conn_id) m.post(self.opsgenie_alert_endpoint, status_code=202, json=self._mock_success_response_body) resp = hook.execute(payload=self._payload) self.assertEqual(json.loads(resp.request.body), self._payload)
def test_api_key_set(self, m): hook = OpsgenieAlertHook(opsgenie_conn_id=self.conn_id) m.post(self.opsgenie_alert_endpoint, status_code=202, json=self._mock_success_response_body) resp = hook.execute(payload=self._payload) self.assertEqual(resp.request.headers.get('Authorization'), 'GenieKey eb243592-faa2-4ba2-a551q-1afdf565c889')
def test_call_with_success(self, m): hook = OpsgenieAlertHook(opsgenie_conn_id=self.conn_id) m.post(self.opsgenie_alert_endpoint, status_code=202, json=self._mock_success_response_body) resp = hook.execute(payload=self._payload) self.assertEqual(resp.status_code, 202) self.assertEqual(resp.json(), self._mock_success_response_body)
def execute(self, context): """ Call the OpsgenieAlertHook to post message """ self.hook = OpsgenieAlertHook(self.opsgenie_conn_id) self.hook.execute(self._build_opsgenie_payload())
def test_get_conn_defaults_host(self): hook = OpsgenieAlertHook() hook.get_conn() self.assertEqual('https://api.opsgenie.com', hook.base_url)
def test_get_api_key(self): hook = OpsgenieAlertHook(opsgenie_conn_id=self.conn_id) api_key = hook._get_api_key() self.assertEqual('eb243592-faa2-4ba2-a551q-1afdf565c889', api_key)
def test_get_conn_defaults_host(self): hook = OpsgenieAlertHook() hook.get_conn() assert 'https://api.opsgenie.com' == hook.base_url