embedchain

Форк
0
/
test_slack.py 
47 строк · 1.2 Кб
1
import pytest
2

3
from embedchain.loaders.slack import SlackLoader
4

5

6
@pytest.fixture
7
def slack_loader(mocker, monkeypatch):
8
    # Mocking necessary dependencies
9
    mocker.patch("slack_sdk.WebClient")
10
    mocker.patch("ssl.create_default_context")
11
    mocker.patch("certifi.where")
12

13
    monkeypatch.setenv("SLACK_USER_TOKEN", "slack_user_token")
14

15
    return SlackLoader()
16

17

18
def test_slack_loader_initialization(slack_loader):
19
    assert slack_loader.client is not None
20
    assert slack_loader.config == {"base_url": "https://www.slack.com/api/"}
21

22

23
def test_slack_loader_setup_loader(slack_loader):
24
    slack_loader._setup_loader({"base_url": "https://custom.slack.api/"})
25

26
    assert slack_loader.client is not None
27

28

29
def test_slack_loader_check_query(slack_loader):
30
    valid_json_query = "test_query"
31
    invalid_query = 123
32

33
    slack_loader._check_query(valid_json_query)
34

35
    with pytest.raises(ValueError):
36
        slack_loader._check_query(invalid_query)
37

38

39
def test_slack_loader_load_data(slack_loader, mocker):
40
    valid_json_query = "in:random"
41

42
    mocker.patch.object(slack_loader.client, "search_messages", return_value={"messages": {}})
43

44
    result = slack_loader.load_data(valid_json_query)
45

46
    assert "doc_id" in result
47
    assert "data" in result
48

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.