Example #1
0
 def test_get_console_log_file(self):
     log_text = files.read(self.console_log_path)
     path = "{}/1/console.log.gz".format(JOBNAME)
     url = "{}/{}".format(LOGURL, path)
     restclient = rest_client.RestClient(LOGURL)
     with requests_mock.Mocker() as mrequests:
         mrequests.register_uri('GET', url, text=log_text)
         log = reports.get_log_file(restclient, path)
         self.assertEqual(log[0:5], "pybot")
Example #2
0
 def test_get_exceptions_txt_file(self):
     log_text = files.read(self.excepts_log_path)
     path = "{}/1/odl_1_exceptions.txt.gz".format(JOBNAME)
     url = "{}/{}".format(LOGURL, path)
     restclient = rest_client.RestClient(LOGURL)
     with requests_mock.Mocker() as mrequests:
         mrequests.register_uri('GET', url, text=log_text)
         log = reports.get_log_file(restclient, path)
         self.assertEqual(log[0:5], "=====")
Example #3
0
    def get_reports(self, numjobs=1):
        """
        Scrape the log server for jobs, get their console logs and extract the
        suite and test data.

        :param int numjobs: the number of jobs to scrape
        :return dict: dictionary of suites with dictionaries of tests
        """
        self.jobs, self.first_job, self.last_job = reports.get_job_list(numjobs, self.jobname, self.restclient)
        for jobno in self.jobs:
            urlpath = "{}/{}/odl_1/{}".format(self.jobname, jobno, LOG_GZ)
            log = reports.get_log_file(self.restclient, urlpath)
            self.process_log(log, jobno)
        return self.reports
Example #4
0
    def get_reports(self, numjobs=1):
        """
        Create a dictionary of all suites test results.

        Scrape the log server for the requested jobs. Then for each job get the console log and
        extract the suite and test data from the log. Aggregate all results per suite and test.

        :param int numjobs: the number of jobs to scrape
        :return dict: dictionary of suites with dictionaries of tests
        """
        self.jobs, self.first_job, self.last_job = reports.get_job_list(
            numjobs, self.jobname, self.restclient)
        for jobno in self.jobs:
            urlpath = "{}/{}/{}".format(self.jobname, jobno, LOG_GZ)
            console_log = reports.get_log_file(self.restclient, urlpath)
            self.process_console_log(console_log, jobno)
        return self.reports
 def test_get_console_log_real(self):
     report = console.ConsoleReports(LOGURL, JOBNAME)
     path = "{}/109/console.log.gz".format(JOBNAME)
     console_log = reports.get_log_file(report.restclient, path)
     report.process_console_log(console_log, 109)
     report.write_reports("/tmp")