diff options
author | dotdotisdead <dotdotisdead@a3eca27d-f21b-0410-9b4a-6511e771f64e> | 2007-01-07 03:19:22 +0000 |
---|---|---|
committer | dotdotisdead <dotdotisdead@a3eca27d-f21b-0410-9b4a-6511e771f64e> | 2007-01-07 03:19:22 +0000 |
commit | 6b8007761b66db36f7863cfb42270a8d0c8b9077 (patch) | |
tree | b0c8be67cdefa42aea872bda19a09b75d109238f /xdelta3/xdelta3-regtest.py | |
parent | bae7eb2b3db9664a5041a8dbefef5a2fa3847376 (diff) |
Fixes the python module, there were some bugs in main.
Diffstat (limited to 'xdelta3/xdelta3-regtest.py')
-rwxr-xr-x | xdelta3/xdelta3-regtest.py | 67 |
1 files changed, 28 insertions, 39 deletions
diff --git a/xdelta3/xdelta3-regtest.py b/xdelta3/xdelta3-regtest.py index e8d0339..6590792 100755 --- a/xdelta3/xdelta3-regtest.py +++ b/xdelta3/xdelta3-regtest.py | |||
@@ -42,13 +42,6 @@ MAX_TRIALS = 1 | |||
42 | MIN_STDDEV_PCT = 1.5 # stop | 42 | MIN_STDDEV_PCT = 1.5 # stop |
43 | MAX_RUN = 1000 * 1000 * 10 | 43 | MAX_RUN = 1000 * 1000 * 10 |
44 | 44 | ||
45 | XD3CMD = './xdelta3-64' | ||
46 | #XD3CMD = './xdelta3' | ||
47 | |||
48 | # kind: | ||
49 | PYEXT = 1 | ||
50 | FORK = 0 | ||
51 | |||
52 | # | 45 | # |
53 | # | 46 | # |
54 | RCSDIR = '/mnt/polaroid/Polaroid/orbit_linux/home/jmacd/PRCS/prcs/b' | 47 | RCSDIR = '/mnt/polaroid/Polaroid/orbit_linux/home/jmacd/PRCS/prcs/b' |
@@ -433,14 +426,11 @@ def RunCommandIO(args,infn,outfn): | |||
433 | if not os.WIFEXITED(s[1]) or o != 0: | 426 | if not os.WIFEXITED(s[1]) or o != 0: |
434 | raise CommandError(args, 'exited %d' % o) | 427 | raise CommandError(args, 'exited %d' % o) |
435 | 428 | ||
436 | def RunXdelta3(args,kind=FORK): | 429 | def RunXdelta3(args): |
437 | if 0: # kind == FORK: | 430 | try: |
438 | RunCommand([XD3CMD] + args) | 431 | xdelta3.main(args) |
439 | else: | 432 | except Exception, e: |
440 | try: | 433 | raise CommandError(args, "xdelta3.main exception") |
441 | xdelta3.main(args) | ||
442 | except Exception, e: | ||
443 | raise CommandError(args, "xdelta3.main exception") | ||
444 | 434 | ||
445 | class GzipInfo: | 435 | class GzipInfo: |
446 | def __init__(self,target,delta): | 436 | def __init__(self,target,delta): |
@@ -449,13 +439,7 @@ class GzipInfo: | |||
449 | 439 | ||
450 | class Xdelta3Info: | 440 | class Xdelta3Info: |
451 | def __init__(self,target,delta): | 441 | def __init__(self,target,delta): |
452 | RunXdelta3(['printhdr', | 442 | self.extcomp = 0 # @@@ |
453 | '-f', | ||
454 | delta, | ||
455 | HFILE]) | ||
456 | o = open(HFILE, "r") | ||
457 | l = o.readline() | ||
458 | self.extcomp = 0 | ||
459 | self.hdrsize = 0 | 443 | self.hdrsize = 0 |
460 | self.tgtsize = os.stat(target).st_size | 444 | self.tgtsize = os.stat(target).st_size |
461 | self.dsize = os.stat(delta).st_size | 445 | self.dsize = os.stat(delta).st_size |
@@ -463,19 +447,25 @@ class Xdelta3Info: | |||
463 | self.ideal = 100.0 * self.dsize / self.tgtsize; | 447 | self.ideal = 100.0 * self.dsize / self.tgtsize; |
464 | else: | 448 | else: |
465 | self.ideal = 0.0 | 449 | self.ideal = 0.0 |
466 | while l: | 450 | # RunXdelta3(['printhdr', |
467 | #print l.strip() | 451 | # '-f', |
468 | m = RE_HDRSZ.match(l) | 452 | # delta, |
469 | if m: | 453 | # HFILE]) |
470 | self.hdrsize = int(m.group(1)) | 454 | # o = open(HFILE, "r") |
471 | m = RE_EXTCOMP.match(l) | 455 | # l = o.readline() |
472 | if m: | 456 | # while l: |
473 | #print 'EXTCOMP', m.group(0) | 457 | # #print l.strip() |
474 | self.extcomp = 1 | 458 | # m = RE_HDRSZ.match(l) |
475 | l = o.readline() | 459 | # if m: |
476 | if self.hdrsize == 0: | 460 | # self.hdrsize = int(m.group(1)) |
477 | raise CommandError(cmd, 'no hdrsize') | 461 | # m = RE_EXTCOMP.match(l) |
478 | o.close() | 462 | # if m: |
463 | # #print 'EXTCOMP', m.group(0) | ||
464 | # self.extcomp = 1 | ||
465 | # l = o.readline() | ||
466 | # if self.hdrsize == 0: | ||
467 | # raise CommandError(cmd, 'no hdrsize') | ||
468 | # o.close() | ||
479 | 469 | ||
480 | class Xdelta3Pair: | 470 | class Xdelta3Pair: |
481 | def __init__(self): | 471 | def __init__(self): |
@@ -542,16 +532,15 @@ def Decimals(max): | |||
542 | return l | 532 | return l |
543 | 533 | ||
544 | class Xdelta3Run1: | 534 | class Xdelta3Run1: |
545 | def __init__(self,file,kind,reps=0): | 535 | def __init__(self,file,reps=0): |
546 | self.file = file | 536 | self.file = file |
547 | self.reps = reps | 537 | self.reps = reps |
548 | self.canrep = 1 | 538 | self.canrep = 1 |
549 | self.kind = kind | ||
550 | def Run(self,trial,reps): | 539 | def Run(self,trial,reps): |
551 | if self.reps: | 540 | if self.reps: |
552 | assert(reps == 1) | 541 | assert(reps == 1) |
553 | reps = self.reps | 542 | reps = self.reps |
554 | RunXdelta3(['-vvv', '-P', '%d' % reps, '-efq', self.file, DFILE],kind=self.kind) | 543 | RunXdelta3(['-P', '%d' % reps, '-efq', self.file, DFILE]) |
555 | if trial > 0: | 544 | if trial > 0: |
556 | return None | 545 | return None |
557 | return Xdelta3Info(self.file,DFILE) | 546 | return Xdelta3Info(self.file,DFILE) |
@@ -580,7 +569,7 @@ def ReportSpeed(L,tr,desc): | |||
580 | def RunSpeed(): | 569 | def RunSpeed(): |
581 | for L in Decimals(MAX_RUN): | 570 | for L in Decimals(MAX_RUN): |
582 | SetFileSize(RUNFILE, L) | 571 | SetFileSize(RUNFILE, L) |
583 | trx = TimeRun(Xdelta3Run1(RUNFILE,kind=PYEXT)) | 572 | trx = TimeRun(Xdelta3Run1(RUNFILE)) |
584 | ReportSpeed(L,trx,'xdelta3') | 573 | ReportSpeed(L,trx,'xdelta3') |
585 | trg = TimeRun(GzipRun1(RUNFILE)) | 574 | trg = TimeRun(GzipRun1(RUNFILE)) |
586 | ReportSpeed(L,trg,'gzip ') | 575 | ReportSpeed(L,trg,'gzip ') |