|
1 | 1 | import time |
2 | 2 | import pytest |
3 | | -from slackeventsapi import SlackEventAdapter |
4 | 3 |
|
5 | | -ADAPTER = SlackEventAdapter('SIGNING_SECRET') |
| 4 | +def test_event_emission(adapter): |
| 5 | + test_event_emission.event_handled = False |
6 | 6 |
|
7 | | -def test_event_emission(client): |
8 | 7 | # Events should trigger an event |
9 | | - @ADAPTER.on('reaction_added') |
10 | | - def event_handler(event): |
| 8 | + @adapter.on('reaction_added') |
| 9 | + def event_handler(event_data): |
| 10 | + test_event_emission.event_handled = True |
| 11 | + |
| 12 | + event = event_data['event'] |
11 | 13 | assert event["reaction"] == 'grinning' |
12 | 14 |
|
13 | 15 | data = pytest.reaction_event_fixture |
14 | 16 | timestamp = int(time.time()) |
15 | | - signature = pytest.create_signature(ADAPTER.signing_secret, timestamp, data) |
| 17 | + signature = pytest.create_signature(adapter.signing_secret, timestamp, data) |
16 | 18 |
|
17 | | - res = client.post( |
18 | | - '/slack/events', |
19 | | - data=data, |
20 | | - content_type='application/json', |
21 | | - headers={ |
22 | | - 'X-Slack-Request-Timestamp': timestamp, |
23 | | - 'X-Slack-Signature': signature |
24 | | - } |
25 | | - ) |
| 19 | + with adapter.server.test_client() as client: |
| 20 | + res = client.post( |
| 21 | + '/slack/events', |
| 22 | + data=data, |
| 23 | + content_type='application/json', |
| 24 | + headers={ |
| 25 | + 'X-Slack-Request-Timestamp': timestamp, |
| 26 | + 'X-Slack-Signature': signature |
| 27 | + } |
| 28 | + ) |
| 29 | + assert res.status_code == 200 |
26 | 30 |
|
27 | | - assert res.status_code == 200 |
| 31 | + assert test_event_emission.event_handled |
0 commit comments