1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
import unittest
from tests.utils import (
do_events,
setup_test_env,
)
setup_test_env()
from softwarecenter.backend.launchpad import GLaunchpad
class TestUbuntuSSO(unittest.TestCase):
def _cb_login_successful(self, lp, token):
self._login_successful = True
def test_launchpad_login(self):
lp = GLaunchpad()
lp.connect("login-successful", self._cb_login_successful)
# monkey patch
lp.login = lambda u,p: True
lp.login("user", "password")
lp.emit("login-successful", None)
do_events()
self.assertTrue(self._login_successful)
def _monkey_get_subscribed_archives(self):
return ["deb http://foo:pw@launchpad.net/ main"]
def test_launchpad_get_subscribed_archives(self):
lp = GLaunchpad()
lp.get_subscribed_archives = self._monkey_get_subscribed_archives
archives = lp.get_subscribed_archives()
self.assertEqual(archives, ["deb http://foo:pw@launchpad.net/ main"])
if __name__ == "__main__":
unittest.main()
|