Introduction
Introduction Statistics Contact Development Disclaimer Help
test_auth.py - toot - Unnamed repository; edit this file 'description' to name …
Log
Files
Refs
LICENSE
---
test_auth.py (1858B)
---
1 # -*- coding: utf-8 -*-
2
3 from toot import App, User, api, config, auth
4 from tests.utils import retval
5
6
7 def test_register_app(monkeypatch):
8 app_data = {'id': 100, 'client_id': 'cid', 'client_secret': 'cs'}
9
10 def assert_app(app):
11 assert isinstance(app, App)
12 assert app.instance == "foo.bar"
13 assert app.base_url == "https://foo.bar"
14 assert app.client_id == "cid"
15 assert app.client_secret == "cs"
16
17 monkeypatch.setattr(api, 'create_app', retval(app_data))
18 monkeypatch.setattr(api, 'get_instance', retval({"title": "foo", "ve…
19 monkeypatch.setattr(config, 'save_app', assert_app)
20
21 app = auth.register_app("foo.bar")
22 assert_app(app)
23
24
25 def test_create_app_from_config(monkeypatch):
26 """When there is saved config, it's returned"""
27 monkeypatch.setattr(config, 'load_app', retval("loaded app"))
28 app = auth.create_app_interactive("bezdomni.net")
29 assert app == 'loaded app'
30
31
32 def test_create_app_registered(monkeypatch):
33 """When there is no saved config, a new app is registered"""
34 monkeypatch.setattr(config, 'load_app', retval(None))
35 monkeypatch.setattr(auth, 'register_app', retval("registered app"))
36
37 app = auth.create_app_interactive("bezdomni.net")
38 assert app == 'registered app'
39
40
41 def test_create_user(monkeypatch):
42 app = App(4, 5, 6, 7)
43
44 def assert_user(user, activate=True):
45 assert activate
46 assert isinstance(user, User)
47 assert user.instance == app.instance
48 assert user.username == "foo"
49 assert user.access_token == "abc"
50
51 monkeypatch.setattr(config, 'save_user', assert_user)
52 monkeypatch.setattr(api, 'verify_credentials', lambda x, y: {"userna…
53
54 user = auth.create_user(app, 'abc')
55
56 assert_user(user)
57
58 #
59 # TODO: figure out how to mock input so the rest can be tested
60 #
You are viewing proxied material from vernunftzentrum.de. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.