X-Git-Url: http://rtime.felk.cvut.cz/gitweb/can-benchmark.git/blobdiff_plain/4e25bba0f22a675ba1950e2e41fe22dfd60073c9..8c81374c57a81ccab4210951e6374102f4a04d26:/gw-tests/genhtml/genhtml.py diff --git a/gw-tests/genhtml/genhtml.py b/gw-tests/genhtml/genhtml.py index 08a6dac..83995bc 100755 --- a/gw-tests/genhtml/genhtml.py +++ b/gw-tests/genhtml/genhtml.py @@ -34,10 +34,14 @@ class Dimension(dict): self[value] = DimValue(self, value) def htmlLabel(self, v): return v + def __str__(self): + return self.name + def __repr__(self): + return self.type class DimensionKern(Dimension): def __init__(self): - Dimension.__init__(self, 'kern', 'Kernel') + Dimension.__init__(self, 'gwkern', 'GW kernel') def htmlLabel(self, v): i=v.find(":") if i>0: kver=v[:i] @@ -50,20 +54,45 @@ class DimensionKern(Dimension): else: kver=v yield kver +class DimensionHostKern(Dimension): + def __init__(self): + Dimension.__init__(self, 'hostkern', 'Host kernel') + def htmlLabel(self, v): + if v.find("host-") == 0: + v = v[5:] + # TODO: remove host- prefix + i = v.find(":") + if i>0: kver = v[:i] + else: kver = v + return v+"
config"%(urllib.quote(kver)) + def versions(self): + for v in self.values: + i=v.find(":") + if i>0: kver=v[:i] + else: kver=v + yield kver + class DimensionTest(Dimension): def __init__(self): Dimension.__init__(self, 'test', 'Test') def htmlLabel(self, v): return v+"
source"%(urllib.quote(v)) +class DimensionTraffic(Dimension): + def __init__(self): + Dimension.__init__(self, 'traf', 'Traffic') + def htmlLabel(self, v): + return v + class Test: @classmethod def isOnPath(cls, path): - f = os.path.join(path, 'plot.gp') + f = os.path.join(path, '.results') return os.path.isfile(f) def __init__(self, path): self.path = path def printThumbLink(self, file): + print self.path for img in dircache.listdir(self.path+'/thumb'): print >>file, "" % \ (urllib.quote(self.path), img, urllib.quote(self.path), img) @@ -103,7 +132,7 @@ class Tests(dict): def addTest(self, test, coordinates): if len(coordinates) != len(self.dimensions): - raise KeyError("The number coordinates do not match the number of dimensions") + raise KeyError("The number coordinates do not match the number of dimensions: " + str(coordinates)) self[tuple(coordinates)] = test for i in xrange(len(coordinates)): self.dimensions[i].addValue(coordinates[i]) @@ -127,16 +156,17 @@ class Tests(dict): yield d def generateHtml(self): for pair in self.iterDimensionPairs(): - remdims = [d for d in self.iterRemainingDimensions(pair)] - for vals in iterDimValues(remdims): - page = Page(pair, remdims, vals, self) + remDims = [d for d in self.iterRemainingDimensions(pair)] + print pair, remDims + for vals in iterDimValues(remDims): + page = Page(pair, remDims, vals, self) page.generate() try: os.remove("index.html") except OSError: pass os.symlink(page.getName(), "index.html") - os.system("source-highlight -d --output-dir=. ../*.sh") + #os.system("source-highlight -d --output-dir=. ../*.sh") class Page: def __init__(self, dimPair, dimOther, valsOther, tests): @@ -149,8 +179,9 @@ class Page: def generate(self): html = open(self.getName(), "w") title = "CAN gateway timing analysis" + ", ".join([v.dim.name+" "+v.value for v in self.valsOther]) - print >> html, """ - + print >> html, """ + + %s