def setUp(self): self.logger = SEKLogger(__name__, 'DEBUG') self.configer = MSGConfiger() self.exporter = MSGDBExporter() self.testDir = 'db_exporter_test' self.uncompressedTestFilename = 'meco_v3_test_data.sql' self.compressedTestFilename = 'meco_v3_test_data.sql.gz' self.exportTestDataPath = self.configer.configOptionValue( 'Testing', 'export_test_data_path') self.fileUtil = MSGFileUtil() self.fileChunks = [] self.testDataFileID = '' self.pyUtil = MSGPythonUtil() self.timeUtil = MSGTimeUtil() conn = None try: conn = MSGDBConnector().connectDB() except Exception as detail: self.logger.log("Exception occurred: {}".format(detail), 'error') exit(-1) self.logger.log("conn = {}".format(conn), 'debug') self.assertIsNotNone(conn) # Create a temporary working directory. try: os.mkdir(self.testDir) except OSError as detail: self.logger.log( 'Exception during creation of temp directory: %s' % detail, 'ERROR')
def __init__(self): """ Constructor. """ self.logger = SEKLogger(__name__, 'DEBUG', useColor=False) self.timeUtil = MSGTimeUtil() self.configer = MSGConfiger() self.fileUtil = MSGFileUtil() self.pythonUtil = MSGPythonUtil() # for debugging self.connector = MSGDBConnector() self.conn = self.connector.connectDB() self.cursor = self.conn.cursor() self.dbUtil = MSGDBUtil() self.notifier = SEKNotifier( connector=self.connector, dbUtil=self.dbUtil, user=self.configer.configOptionValue('Notifications', 'email_username'), password=self.configer.configOptionValue('Notifications', 'email_password'), fromaddr=self.configer.configOptionValue('Notifications', 'email_from_address'), toaddr=self.configer.configOptionValue('Notifications', 'email_recipients'), testing_toaddr=self.configer.configOptionValue( 'Notifications', 'testing_email_recipients'), smtp_server_and_port=self.configer.configOptionValue( 'Notifications', 'smtp_server_and_port')) # Google Drive parameters. self.clientID = self.configer.configOptionValue( 'Export', 'google_api_client_id') self.clientSecret = self.configer.configOptionValue( 'Export', 'google_api_client_secret') self.oauthScope = 'https://www.googleapis.com/auth/drive' self.oauthConsent = 'urn:ietf:wg:oauth:2.0:oob' self.googleAPICredentials = '' self.exportTempWorkPath = self.configer.configOptionValue( 'Export', 'db_export_work_path') self.credentialPath = self.configer.configOptionValue( 'Export', 'google_api_credentials_path') self.credentialStorage = Storage('{}/google_api_credentials'.format( self.credentialPath)) self._driveService = None self._cloudFiles = None self.postAgent = 'Maui Smart Grid 1.0.0 DB Exporter' self.retryDelay = 10 self.availableFilesURL = ''