Skip to content

Commit e47cba8

Browse files
committed
Add more unit tests
1 parent 89883bd commit e47cba8

File tree

12 files changed

+196
-0
lines changed

12 files changed

+196
-0
lines changed

tests/slack_bolt/listener/__init__.py

Whitespace-only changes.
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import logging
2+
3+
from slack_bolt import BoltRequest
4+
from slack_bolt.listener.listener_completion_handler import (
5+
CustomListenerCompletionHandler,
6+
)
7+
8+
9+
class TestListenerCompletionHandler:
10+
def test_handler(self):
11+
result = {"called": False}
12+
13+
def f():
14+
result["called"] = True
15+
16+
handler = CustomListenerCompletionHandler(
17+
logger=logging.getLogger(__name__),
18+
func=f,
19+
)
20+
request = BoltRequest(
21+
body="{}",
22+
query={},
23+
headers={"content-type": ["application/json"]},
24+
context={},
25+
)
26+
handler.handle(request, None)
27+
assert result["called"] is True
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import logging
2+
3+
from slack_bolt import BoltRequest
4+
from slack_bolt.listener.listener_start_handler import (
5+
CustomListenerStartHandler,
6+
)
7+
8+
9+
class TestListenerStartHandler:
10+
def test_handler(self):
11+
result = {"called": False}
12+
13+
def f():
14+
result["called"] = True
15+
16+
handler = CustomListenerStartHandler(
17+
logger=logging.getLogger(__name__),
18+
func=f,
19+
)
20+
request = BoltRequest(
21+
body="{}",
22+
query={},
23+
headers={"content-type": ["application/json"]},
24+
context={},
25+
)
26+
handler.handle(request, None)
27+
assert result["called"] is True

tests/slack_bolt/workflows/__init__.py

Whitespace-only changes.

tests/slack_bolt/workflows/step/__init__.py

Whitespace-only changes.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import pytest
2+
3+
from slack_bolt import Ack
4+
from slack_bolt.error import BoltError
5+
from slack_bolt.workflows.step import WorkflowStep
6+
7+
8+
class TestStep:
9+
def test_build(self):
10+
step = WorkflowStep.builder("foo")
11+
step.edit(just_ack)
12+
step.save(just_ack)
13+
step.execute(just_ack)
14+
assert step.build() is not None
15+
16+
def test_build_errors(self):
17+
with pytest.raises(BoltError):
18+
step = WorkflowStep.builder("foo")
19+
step.edit(None)
20+
step.save(just_ack)
21+
step.execute(just_ack)
22+
step.build()
23+
with pytest.raises(BoltError):
24+
step = WorkflowStep.builder("foo")
25+
step.edit(just_ack)
26+
step.save(None)
27+
step.execute(just_ack)
28+
step.build()
29+
with pytest.raises(BoltError):
30+
step = WorkflowStep.builder("foo")
31+
step.edit(just_ack)
32+
step.save(just_ack)
33+
step.execute(None)
34+
step.build()
35+
36+
37+
def just_ack(ack: Ack):
38+
ack()
39+
40+
41+
def execute():
42+
pass

tests/slack_bolt_async/listener/__init__.py

Whitespace-only changes.
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import logging
2+
import pytest
3+
4+
from slack_bolt.request.async_request import AsyncBoltRequest
5+
from slack_bolt.listener.async_listener_completion_handler import (
6+
AsyncCustomListenerCompletionHandler,
7+
)
8+
9+
10+
class TestAsyncListenerCompletionHandler:
11+
@pytest.mark.asyncio
12+
async def test_handler(self):
13+
result = {"called": False}
14+
15+
async def f():
16+
result["called"] = True
17+
18+
handler = AsyncCustomListenerCompletionHandler(
19+
logger=logging.getLogger(__name__),
20+
func=f,
21+
)
22+
request = AsyncBoltRequest(
23+
body="{}",
24+
query={},
25+
headers={"content-type": ["application/json"]},
26+
context={},
27+
)
28+
await handler.handle(request, None)
29+
assert result["called"] is True
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import logging
2+
import pytest
3+
4+
from slack_bolt.request.async_request import AsyncBoltRequest
5+
from slack_bolt.listener.async_listener_start_handler import (
6+
AsyncCustomListenerStartHandler,
7+
)
8+
9+
10+
class TestAsyncListenerStartHandler:
11+
@pytest.mark.asyncio
12+
async def test_handler(self):
13+
result = {"called": False}
14+
15+
async def f():
16+
result["called"] = True
17+
18+
handler = AsyncCustomListenerStartHandler(
19+
logger=logging.getLogger(__name__),
20+
func=f,
21+
)
22+
request = AsyncBoltRequest(
23+
body="{}",
24+
query={},
25+
headers={"content-type": ["application/json"]},
26+
context={},
27+
)
28+
await handler.handle(request, None)
29+
assert result["called"] is True

tests/slack_bolt_async/workflows/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)