def test_verifyMythTVConnectivity_OK(self): when(self.platform).getScriptDataDir().thenReturn( tempfile.gettempdir()) settings = mythtv.MythSettings(self.platform, self.translator) privateConfig = util.OnDemandConfig() settings.put('mythtv_host', privateConfig.get('mythtv_host')) settings.put('mythtv_port', privateConfig.get('mythtv_port')) settings.verifyMythTVConnectivity()
def setUp(self): self.data = [('title', 'Bonanza'), ('subtitle', 'The Shootout'), ('description', 'Yee haw!'), ('starttime', '2008-10-04 18:00:00'), ('endtime', '2008-10-04 19:00:00'), ('channum', '23')] self.translator = Mock() self.platform = util.Platform() self.settings = mythtv.MythSettings(self.platform, self.translator)
def test_constructor_NonExistentSettingsFilesLoadsDefaults(self): when(self.platform).getScriptDataDir().thenReturn( tempfile.gettempdir()) s = mythtv.MythSettings(self.platform, self.translator) self.assertEquals('localhost', s.get('mysql_host')) self.assertEquals('3306', s.get('mysql_port')) self.assertEquals('mythconverg', s.get('mysql_database')) self.assertEquals('mythtv', s.get('mysql_user')) self.assertEquals('change_me', s.get('mysql_password'))
def test_getRecordingDirs_ManyDirectories(self): when(self.platform).getScriptDataDir().thenReturn( tempfile.gettempdir()) settings = mythtv.MythSettings(self.platform, self.translator) settings.put('paths_recordedprefix', os.pathsep.join(['a', 'b', 'c'])) log.debug("Recording prefix = %s" % settings.get('paths_recordedprefix')) dirs = settings.getRecordingDirs() self.assertEquals(3, len(dirs)) self.assertEquals(['a', 'b', 'c'], dirs)
def test_getRecordingDirs_SingleDirectory(self): when(self.platform).getScriptDataDir().thenReturn( tempfile.gettempdir()) settings = mythtv.MythSettings(self.platform, self.translator) settings.put('paths_recordedprefix', '/mnt/mythtv') log.debug("Recording prefix = %s" % settings.get('paths_recordedprefix')) dirs = settings.getRecordingDirs() self.assertEquals(1, len(dirs)) self.assertEquals('/mnt/mythtv', dirs[0])
def setUp(self): self.translator = mockito.Mock() self.platform = util.Platform() self.settings = mythtv.MythSettings(self.platform, self.translator) privateConfig = util.OnDemandConfig() self.settings.put('mysql_host', privateConfig.get('mysql_host')) self.settings.put('mysql_password', privateConfig.get('mysql_password')) self.settings.put('mythtv_host', privateConfig.get('mythtv_host')) self.db = mythdb.MythDatabase(self.settings, self.translator)
def test_verifyMySQLConnectivity_OK(self): when(self.platform).getScriptDataDir().thenReturn( tempfile.gettempdir()) settings = mythtv.MythSettings(self.platform, self.translator) privateConfig = util.OnDemandConfig() settings.put('mysql_host', privateConfig.get('mysql_host')) settings.put('mysql_database', privateConfig.get('mysql_database')) settings.put('mysql_user', privateConfig.get('mysql_user')) settings.put('mysql_password', privateConfig.get('mysql_password')) settings.verifyMySQLConnectivity()
def test_verifyMythTVConnectivity_InvalidPortThrowsSettingsException(self): when(self.platform).getScriptDataDir().thenReturn( tempfile.gettempdir()) settings = mythtv.MythSettings(self.platform, self.translator) privateConfig = util.OnDemandConfig() settings.put('mythtv_host', privateConfig.get('mythtv_host')) settings.put('mythtv_port', "9999") try: settings.verifyMythTVConnectivity() self.fail('expected failure on invalid port') except mythtv.SettingsException, se: log.debug("PASS: %s" % se)
def setUp(self): translator = mockito.Mock() platform = mockito.Mock() settings = mythtv.MythSettings(platform, translator) privateConfig = util.OnDemandConfig() settings.put('mysql_host', privateConfig.get('mysql_host')) settings.put('mysql_password', privateConfig.get('mysql_password')) settings.put('mythtv_host', privateConfig.get('mythtv_host')) self.db = mythdb.MythDatabase(settings, translator) self.session = mythtv.Connection(settings, self.db, translator, platform) self.brain = livetv.LiveTVBrain(self.session, self.db)
def test_verifyMySQLConnectivity_InvalidUsernamePasswordThrowsSettingsException( self): when(self.platform).getScriptDataDir().thenReturn( tempfile.gettempdir()) settings = mythtv.MythSettings(self.platform, self.translator) privateConfig = util.OnDemandConfig() settings.put('mysql_host', privateConfig.get('mysql_host')) settings.put('mysql_database', privateConfig.get('mysql_database')) settings.put('mysql_user', 'bogususer') settings.put('mysql_password', 'boguspassword') try: settings.verifyMySQLConnectivity() self.fail('expected failure on invalid username and password') except mythtv.SettingsException, se: log.debug('PASS: %s' % se)
def test_saveSettings_LoadedDefaultsCreatesNewSettingsFile(self): filename = 'settings.xml' settingsPath = tempfile.gettempdir() + os.sep + 'mythbox_settings_dir' filepath = settingsPath + os.sep + filename when(self.platform).getScriptDataDir().thenReturn(settingsPath) try: self.assertFalse(os.path.exists(filepath)) s = mythtv.MythSettings(self.platform, self.translator) s.save() self.assertTrue(os.path.exists(filepath)) finally: try: os.remove(filepath) os.rmdir(settingsPath) except: pass
def setUp(self): self.platform = util.getPlatform() self.translator = Mock() self.settings = mythtv.MythSettings(self.platform, self.translator) privateConfig = util.OnDemandConfig() self.settings.put('mysql_host', privateConfig.get('mysql_host')) self.settings.put('mysql_password', privateConfig.get('mysql_password')) self.settings.put('mysql_port', privateConfig.get('mysql_port')) self.settings.put('mythtv_host', privateConfig.get('mythtv_host')) self.settings.put('mythtv_port', privateConfig.get('mythtv_port')) self.settings.put('paths_recordedprefix', privateConfig.get('paths_recordedprefix')) self.db = mythdb.MythDatabase(self.settings, self.translator) self.conn = mythtv.Connection(self.settings, self.db, self.translator, self.platform)
def test_constructor_LoadExistingSettingsFile(self): # Setup settingsDir = 'resources' + os.sep + 'test' settingsFile = 'test_mythtv_settings.xml' settingsPath = settingsDir + os.sep + settingsFile when(self.platform).getScriptDataDir().thenReturn(settingsDir) self.assertTrue(os.stat(settingsPath), 'Expected settings file to exist') # Test s = mythtv.MythSettings(self.platform, self.translator, settingsFile) # Verify self.assertEquals('test_host', s.get('mysql_host')) self.assertEquals('9999', s.get('mysql_port')) self.assertEquals('test_database', s.get('mysql_database')) self.assertEquals('test_user', s.get('mysql_user')) self.assertEquals('test_password', s.get('mysql_password'))
import mythdb import mythtv import util updateProgress("Checking Settings") # TODO: Springify later... # Injected dependencies that get passed all over the place # 1 platform = util.getPlatform() log.debug(platform) # 2 translator = util.NativeTranslator(platform.getScriptDir()) # 3 settings = mythtv.MythSettings(platform, translator, 'settings.xml') settingsOK = False try: import uisettings settings.verify() settingsOK = True except mythtv.SettingsException: settingsWindow = uisettings.showWindow(myprogress, settings, translator, platform) try: settings.verify() settingsOK = True except mythtv.SettingsException: settingsOK = False