コード例 #1
0
ファイル: test_messenger.py プロジェクト: enod/fbmessenger
def test_set_thread_setting(messenger, monkeypatch):
    mock = Mock()
    mock.return_value = {'success': True}
    monkeypatch.setattr(messenger.client, 'set_messenger_profile', mock)
    welcome_message = thread_settings.GreetingText(text='Welcome message')
    profile = thread_settings.MessengerProfile(greetings=[welcome_message])
    res = messenger.set_messenger_profile(profile.to_dict())
    assert res == mock()
コード例 #2
0
def test_set_greeting_text_too_long(monkeypatch):
    mock_post = mock.Mock()
    mock_post.return_value.status_code = 200
    mock_post.return_value.json.return_value = {"result": "success"}
    monkeypatch.setattr('requests.Session.post', mock_post)

    with pytest.raises(ValueError) as err:
        thread_settings.GreetingText(text='x' * 161)
    assert str(err.value) == 'Text cannot be longer 160 characters.'
コード例 #3
0
def test_set_thread_setting(messenger, monkeypatch):
    mock = Mock()
    mock.return_value = {'success': True}
    monkeypatch.setattr(messenger.client, 'set_messenger_profile', mock)
    welcome_message = thread_settings.GreetingText(text='Welcome message')
    profile = thread_settings.MessengerProfile(greetings=[welcome_message])
    res = messenger.set_messenger_profile(profile.to_dict())
    assert res == mock.return_value
    greeting = {'greeting': [{'locale': 'default', 'text': 'Welcome message'}]}
    mock.assert_called_with(greeting, timeout=None)
コード例 #4
0
 def test_greeting_text(self):
     res = thread_settings.GreetingText(text='Hello')
     profile = thread_settings.MessengerProfile(greetings=[res])
     expected = {
         'greeting': [{
             'locale': 'default',
             'text': 'Hello',
         }]
     }
     assert expected == profile.to_dict()
コード例 #5
0
def test_set_greeting_text(client, monkeypatch):
    mock_post = Mock()
    mock_post.return_value.status_code = 200
    mock_post.return_value.json.return_value = {"result": "success"}
    monkeypatch.setattr('requests.Session.post', mock_post)
    welcome_message = thread_settings.GreetingText(text='Welcome message')
    profile = thread_settings.MessengerProfile(greetings=[welcome_message])
    resp = client.set_messenger_profile(profile.to_dict())

    assert resp == {"result": "success"}
    assert mock_post.call_count == 1
    mock_post.assert_called_with(
        'https://graph.facebook.com/v2.11/me/messenger_profile',
        params={'access_token': 12345678},
        json={'greeting': [{
            'locale': 'default',
            'text': 'Welcome message'
        }]})
コード例 #6
0
def test_set_greeting_text(client, monkeypatch, default_params):
    mock_post = mock.Mock()
    mock_post.return_value.status_code = 200
    mock_post.return_value.json.return_value = {"result": "success"}
    monkeypatch.setattr('requests.Session.post', mock_post)
    welcome_message = thread_settings.GreetingText(text='Welcome message')
    profile = thread_settings.MessengerProfile(greetings=[welcome_message])
    resp = client.set_messenger_profile(profile.to_dict())

    assert resp == {"result": "success"}
    assert mock_post.call_count == 1
    mock_post.assert_called_with(
        'https://graph.facebook.com/v{api_version}/me/messenger_profile'.
        format(api_version=client.api_version),
        params=default_params,
        json={
            'greeting': [{
                'locale': 'default',
                'text': 'Welcome message',
            }]
        },
        timeout=None)