pactest: make pmfile a bit more pythonic
Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
parent
11d8418737
commit
3ace8ceb23
3 changed files with 16 additions and 23 deletions
|
@ -17,38 +17,44 @@
|
||||||
|
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
import stat
|
||||||
|
|
||||||
import util
|
import util
|
||||||
|
|
||||||
class pmfile(object):
|
class PacmanFile(object):
|
||||||
"""File object
|
"""File object
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self, root, name):
|
def __init__(self, root, name):
|
||||||
self.name = name
|
|
||||||
self.root = root
|
self.root = root
|
||||||
|
self.name = name
|
||||||
self.filename = os.path.join(self.root, self.name)
|
self.filename = os.path.join(self.root, self.name)
|
||||||
|
|
||||||
self.checksum = util.getmd5sum(self.filename)
|
self.checksum = util.getmd5sum(self.filename)
|
||||||
self.mtime = util.getmtime(self.filename)
|
self.mtime = self.getmtime()
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return "%s (%s / %lu)" % (self.name, self.checksum, self.mtime)
|
return "%s (%s / %lu)" % (self.name, self.checksum, self.mtime)
|
||||||
|
|
||||||
|
def getmtime(self):
|
||||||
|
if not os.path.exists(self.filename):
|
||||||
|
return None, None
|
||||||
|
statbuf = os.lstat(self.filename)
|
||||||
|
return (statbuf[stat.ST_MTIME], statbuf[stat.ST_CTIME])
|
||||||
|
|
||||||
def ismodified(self):
|
def ismodified(self):
|
||||||
"""
|
|
||||||
"""
|
|
||||||
checksum = util.getmd5sum(self.filename)
|
checksum = util.getmd5sum(self.filename)
|
||||||
mtime = util.getmtime(self.filename)
|
mtime = self.getmtime()
|
||||||
|
|
||||||
util.vprint("\tismodified(%s)" % self.name)
|
util.vprint("\tismodified(%s)" % self.name)
|
||||||
util.vprint("\t\told: %s / %s" % (self.checksum, self.mtime))
|
util.vprint("\t\told: %s / %s" % (self.checksum, self.mtime))
|
||||||
util.vprint("\t\tnew: %s / %s" % (checksum, mtime))
|
util.vprint("\t\tnew: %s / %s" % (checksum, mtime))
|
||||||
|
|
||||||
if self.checksum != checksum \
|
if self.checksum != checksum \
|
||||||
or (self.mtime[1], self.mtime[2]) != (mtime[1], mtime[2]):
|
or self.mtime[0] != mtime[0] \
|
||||||
return 1
|
or self.mtime[1] != mtime[1]:
|
||||||
|
return True
|
||||||
|
|
||||||
return 0
|
return False
|
||||||
|
|
||||||
# vim: set ts=4 sw=4 et:
|
# vim: set ts=4 sw=4 et:
|
||||||
|
|
|
@ -188,7 +188,7 @@ class pmtest(object):
|
||||||
for roots, dirs, files in os.walk(self.root):
|
for roots, dirs, files in os.walk(self.root):
|
||||||
for i in files:
|
for i in files:
|
||||||
filename = os.path.join(roots, i)
|
filename = os.path.join(roots, i)
|
||||||
f = pmfile.pmfile(self.root, filename.replace(self.root + "/", ""))
|
f = pmfile.PacmanFile(self.root, filename.replace(self.root + "/", ""))
|
||||||
self.files.append(f)
|
self.files.append(f)
|
||||||
vprint("\t%s" % f.name)
|
vprint("\t%s" % f.name)
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
import hashlib
|
import hashlib
|
||||||
import stat
|
|
||||||
|
|
||||||
|
|
||||||
# ALPM
|
# ALPM
|
||||||
|
@ -156,18 +155,6 @@ def mkmd5sum(data):
|
||||||
return checksum.hexdigest()
|
return checksum.hexdigest()
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# Mtime helpers
|
|
||||||
#
|
|
||||||
|
|
||||||
def getmtime(filename):
|
|
||||||
"""
|
|
||||||
"""
|
|
||||||
if not os.path.exists(filename):
|
|
||||||
return None, None, None
|
|
||||||
st = os.lstat(filename)
|
|
||||||
return st[stat.ST_ATIME], st[stat.ST_MTIME], st[stat.ST_CTIME]
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Miscellaneous
|
# Miscellaneous
|
||||||
#
|
#
|
||||||
|
|
Loading…
Add table
Reference in a new issue