1# Copyright 2013 Christoph Reiter 2# 3# This program is free software; you can redistribute it and/or modify 4# it under the terms of the GNU General Public License as published by 5# the Free Software Foundation; either version 2 of the License, or 6# (at your option) any later version. 7 8from senf import fsnative 9 10from tests import TestCase 11 12import quodlibet 13from quodlibet import config 14from quodlibet.const import Version 15 16 17class TQuodlibet(TestCase): 18 19 def setUp(self): 20 config.init() 21 22 def tearDown(self): 23 config.quit() 24 25 def test_first_session(self): 26 self.assertTrue(quodlibet.is_first_session("quodlibet")) 27 self.assertTrue(quodlibet.is_first_session("quodlibet")) 28 quodlibet.finish_first_session("exfalso") 29 self.assertTrue(quodlibet.is_first_session("quodlibet")) 30 quodlibet.finish_first_session("quodlibet") 31 self.assertFalse(quodlibet.is_first_session("quodlibet")) 32 33 def test_dirs(self): 34 self.assertTrue(isinstance(quodlibet.get_base_dir(), fsnative)) 35 self.assertTrue(isinstance(quodlibet.get_image_dir(), fsnative)) 36 self.assertTrue(isinstance(quodlibet.get_user_dir(), fsnative)) 37 self.assertTrue(isinstance(quodlibet.get_cache_dir(), fsnative)) 38 39 def test_get_build_description(self): 40 quodlibet.get_build_description() 41 42 def test_get_build_version(self): 43 ver = quodlibet.get_build_version() 44 self.assertTrue(isinstance(ver, tuple)) 45 46 47class TVersion(TestCase): 48 49 def test_message(self): 50 v = Version("foo", 1, 2, message="bla") 51 self.assertRaises(ImportError, v.check, (1, 1)) 52 try: 53 v.check((1, 1)) 54 except ImportError as e: 55 self.assertTrue("bla" in str(e)) 56