def testA_createDashboardInfo(self): """ _createDashboardInfo_ Can we create the dashboardInfo and fill it with local information? """ # Get the necessary objects name = 'testA' job = self.createTestJob() workload = self.createWorkload() task = workload.getTask(taskName = "DataProcessing") report = self.createReport() # Fill the job environment self.setupJobEnvironment(name = name) # Instantiate DBInfo dbInfo = DashboardInfo(job = job, task = task) # Check some defaults self.assertEqual(dbInfo.get('TaskType', None), task.taskType()) self.assertEqual(dbInfo.get('User', None), '*****@*****.**') self.assertEqual(dbInfo.get('JSTool', None), 'WMAgent') # This shouldn't add anything, # but we have to make sure it doesn't fail. dbInfo.jobStart() # Do a step step = task.getStep(stepName = "cmsRun1") # Do the step start data = dbInfo.stepStart(step = step.data) self.assertEqual(data.get('ExeStart', None), step.name()) self.assertEqual(data.get('taskId', None), 'wmagent_Tier1ReReco') # Do the step end data = dbInfo.stepEnd(step = step.data, stepReport = report) self.assertEqual(data.get('ExeEnd', None), step.name()) self.assertEqual(data.get('ExeExitCode', None), 0) # End the job! data = dbInfo.jobEnd() self.assertFalse(data.get('MessageTS', None) == None, 'Did not assign finish time in jobEnd()') return
def testA_createDashboardInfo(self): """ _createDashboardInfo_ Can we create the dashboardInfo and fill it with local information? """ # Get the necessary objects name = 'testA' job = self.createTestJob() workload = self.createWorkload() task = workload.getTask(taskName = "DataProcessing") report = self.createReport() # Fill the job environment self.setupJobEnvironment(name = name) # Instantiate DBInfo dbInfo = DashboardInfo(job = job, task = task) # Check some defaults self.assertEqual(dbInfo.get('TaskType', None), task.taskType()) self.assertEqual(dbInfo.get('User', None), '*****@*****.**') self.assertEqual(dbInfo.get('JSTool', None), 'WMAgent') self.assertEqual(dbInfo.get('jobName', None), 'WMAgent_1_0_ThisIsASillyName') self.assertEqual(dbInfo.get('taskName', None), 'ProdAgent_-Tier1ReReco-DataProcessing_WMAgentPrimary') dbInfo.jobStart() self.assertEqual(dbInfo.get('GridJobID', None), name) self.assertEqual(dbInfo.get('SyncCE', None), name) # Do a step step = task.getStep(stepName = "cmsRun1") # Do the step start dbInfo.stepStart(step = step.data) self.assertEqual(dbInfo.get('ExeStart', None), step.name()) self.assertEqual(dbInfo.get('ApplicationVersion', None), 'CMSSW_3_5_8') # Do the step end dbInfo.stepEnd(step = step.data, stepReport = report) self.assertEqual(dbInfo.get('ExeEnd', None), step.name()) self.assertEqual(dbInfo.get('ExeExitStatus', None), False) # End the job! dbInfo.jobEnd() self.assertFalse(dbInfo.get('JobFinished', None) == None, 'Did not assign finish time in jobEnd()') return