File: test_pypyresult.py

package info (click to toggle)
pypy3 7.0.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 111,848 kB
  • sloc: python: 1,291,746; ansic: 74,281; asm: 5,187; cpp: 3,017; sh: 2,533; makefile: 544; xml: 243; lisp: 45; csh: 21; awk: 4
file content (47 lines) | stat: -rw-r--r-- 1,287 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47

import py

from pypy.tool.bench.pypyresult import ResultDB, BenchResult
import pickle

def setup_module(mod):
    mod.tmpdir = py.test.ensuretemp(__name__) 

def gettestpickle(cache=[]):
    if cache:
        return cache[0]
    pp = tmpdir.join("testpickle")
    f = pp.open("wb")
    pickle.dump({'./pypy-llvm-39474-O3-c_richards': 5}, f)
    pickle.dump({'./pypy-llvm-39474-O3-c_richards': 42.0}, f)
    f.close()
    cache.append(pp)
    return pp

def test_unpickle():
    pp = gettestpickle()
    db = ResultDB()
    db.parsepickle(pp)
    assert len(db.benchmarks) == 1
    l = db.getbenchmarks(name="richards")
    assert len(l) == 1
    bench = l[0]
    l = db.getbenchmarks(name="xyz")
    assert not l

def test_BenchResult_cpython():
    res = BenchResult("2.3.5_pystone", besttime=2.0, numruns=3)
    assert res.executable == "cpython"
    assert res.revision == "2.3.5"
    assert res.name == "pystone"
    assert res.numruns == 3
    assert res.besttime == 2.0

def test_BenchResult_pypy():
    res = BenchResult("pypy-llvm-39474-O3-c_richards",
                      besttime=2.0, numruns=3)
    assert res.executable == "pypy-llvm-39474-O3-c"
    assert res.revision == 39474
    assert res.name == "richards"
    assert res.numruns == 3
    assert res.besttime == 2.0