gajim-plural/test/unit/test_gui_interface.py

61 lines
1.8 KiB
Python

'''
Some diverse tests covering functionality in the GUI Interface class.
'''
import unittest
import lib
lib.setup_env()
from gajim.common import logging_helpers
logging_helpers.set_quiet()
from gajim.common import app
from gajim_mocks import MockLogger
app.logger = MockLogger()
from gajim.gui_interface import Interface
from gi.repository import GLib
class TestInterface(unittest.TestCase):
def test_instantiation(self):
''' Test that we can proper initialize and do not fail on globals '''
def close_app():
app.app.quit()
GLib.idle_add(close_app)
app.app.run()
def test_links_regexp_entire(self):
sut = Interface()
def assert_matches_all(str_):
m = sut.basic_pattern_re.match(str_)
# the match should equal the string
str_span = (0, len(str_))
self.assertEqual(m.span(), str_span)
# these entire strings should be parsed as links
assert_matches_all('http://google.com/')
assert_matches_all('http://google.com')
assert_matches_all('http://www.google.ca/search?q=xmpp')
assert_matches_all('http://tools.ietf.org/html/draft-saintandre-rfc3920bis-05#section-12.3')
assert_matches_all('http://en.wikipedia.org/wiki/Protocol_(computing)')
assert_matches_all(
'http://en.wikipedia.org/wiki/Protocol_%28computing%29')
assert_matches_all('mailto:test@example.org')
assert_matches_all('xmpp:example-node@example.com')
assert_matches_all('xmpp:example-node@example.com/some-resource')
assert_matches_all('xmpp:example-node@example.com?message')
assert_matches_all('xmpp://guest@example.com/support@example.com?message')
if __name__ == "__main__":
#import sys;sys.argv = ['', 'Test.test']
unittest.main()