Home | Trees | Indices | Help |
---|
|
1 2 from elisa.core.tests.test_media_provider import TestMediaProvider 3 from elisa.core.tests.elisa_test_case import BoilerPlateApp 4 from elisa.plugins.good.media_db import elisa_media 5 from elisa.core import common 6 from elisa.core.media_uri import MediaUri 7 from elisa.core.media_db import MediaDB 8 from elisa.core.db_backend import DBBackend, DBBackendError 9 from elisa.core.utils import classinit 10 11 import os, platform 12 import threading 13 14 DB_CONNECTIONS = {} 1517 18 # Allows property fget/fset/fdel/doc overriding 19 __metaclass__ = classinit.ClassInitMeta 20 __classinit__ = classinit.build_properties 21 2451 57 5826 """ MediaDB instance accessor. 27 @warning: If '../elisa/plugins/base/tests/data/elisa.db' changes 28 the tests won't work anymore 29 """ 30 31 db = None 32 33 global DB_CONNECTIONS 34 try: 35 self._db_lock.acquire() 36 current_thread = threading.currentThread() 37 thread_id = id(current_thread) 38 backend = DB_CONNECTIONS.get(thread_id) 39 if not backend: 40 db = '../elisa/plugins/good/media_db/tests/data/elisa.db' 41 backend = DBBackend(db_backend='sqlite', 42 database=db) 43 44 DB_CONNECTIONS[thread_id] = backend 45 if backend: 46 db = MediaDB(backend) 47 finally: 48 self._db_lock.release() 49 50 return db60 61 component_class = elisa_media.ElisaMedia 62 63103 104 if platform.system() == 'Windows': 105 test_get_artists.skip = "Skipped under windows, to fix" 106 10765 TestMediaProvider.__init__(self, methodName=methodName) 66 db_file = 'elisa/plugins/good/media_db/tests/data/elisa.db' 67 try: 68 db = DBBackend(db_backend='sqlite', database=db_file) 69 except DBBackendError, error: 70 self.skip = error7173 TestMediaProvider.setUp(self) 74 75 common.boot() 76 77 app = ElisaMediaApp('empty.conf') 78 common.set_application(app)79 80 #common.application.media_manager.media_db = MediaDB(db) 8183 return [MediaUri("elisa:///")]8486 87 lc = [] 88 89 def gotchildren(l): 90 res = MediaUri('elisa://localhost/artists/archive') 91 92 uri = [] 93 for ur,els in l: 94 uri.append(ur) 95 96 self.failUnless(res in uri)97 98 99 uri = MediaUri('elisa://localhost/artists') 100 dfr = self.component.get_direct_children(uri, lc) 101 dfr.addCallback(gotchildren) 102 return dfr109 110 lc = [] 111 112 def gotchildren(l): 113 r = 'elisa://localhost/artists/archive/albums/' 114 expected_uris = [ MediaUri('%s%s' % (r, u)) 115 for u in ('lights', 116 'londinium', 117 'take%20my%20head', 118 'you%20all%20look%20the%20same%20to%20me') 119 ] 120 uris = [] 121 for ur,els in l: 122 uris.append(ur) 123 124 self.assertEqual(expected_uris, uris)125 126 uri = MediaUri('elisa://localhost/artists/archive') 127 dfr = self.component.get_direct_children(uri, lc) 128 dfr.addCallback(gotchildren) 129 return dfr 130 131 if platform.system() == 'Windows': 132 test_get_artists_by_name.skip = "Skipped under windows, to fix" 133 134 146 147 148 uri = MediaUri('elisa://localhost/artists/archive/albums') 149 dfr = self.component.get_direct_children(uri, lc) 150 dfr.addCallback(gotchildren) 151 return dfr 152 153 if platform.system() == 'Windows': 154 test_get_artists_by_name_by_album.skip = "Skipped under windows, to fix" 155 163 164 165 uri = MediaUri('elisa://localhost/files') 166 dfr = self.component.get_direct_children(uri, lc) 167 dfr.addCallback(gotchildren) 168 return dfr 169 170 if platform.system() == 'Windows': 171 test_get_files.skip = "Skipped under windows, to fix" 172
Home | Trees | Indices | Help |
---|
Generated by Epydoc 3.0beta1 on Wed Jan 16 19:11:09 2008 | http://epydoc.sourceforge.net |