예제 #1
0
파일: test_report.py 프로젝트: mcopik/ELAPS
    def test_discrard_frist_repetitions(self):
        """Test discard_first_repetitions()."""
        ex = self.ex

        nreps = random.randint(2, 10)
        vals = [random.randint(1, 1000) for _ in range(nreps)]

        ex.call = Signature("name")()
        ex.nreps = nreps
        rawdata = [[0]] + [[val] for val in vals] + [[1]]

        report = Report(ex, rawdata)

        report2 = report.discard_first_repetitions()
        self.assertEqual(report2.experiment, ex)
        self.assertEqual(report2.rawdata, report.rawdata)
        self.assertEqual(len(report2.fulldata[None]), nreps - 1)
예제 #2
0
파일: io.py 프로젝트: mcopik/ELAPS
def load_report(filename, discard_first_repetitions=False):
    """Load a Report from a frile."""
    def try_eval(expr, *args):
        try:
            return eval(expr, *args)
        except:
            return expr
    with open(filename) as fin:
        experiment = eval(fin.readline())
        rawdata = [map(try_eval, line.split()) for line in fin.readlines()]
    report = Report(experiment, rawdata)
    if discard_first_repetitions:
        return report.discard_first_repetitions()
    errfile = "%s.%s" % (filename[:-4], error_extension)
    if os.path.isfile(errfile) and os.path.getsize(errfile):
        report.error = True
    return report