Esempio n. 1
0
 def _load_common_rec(self, port, version=3):
     if version == 3:
         # Added trailing size to v2, negative when None.
         unpack_fmt = 'vvsvsvvVvVvVv'
     elif version == 2:
         unpack_fmt = 'vvsvsvvVvVvV'
     elif version == 1:
         unpack_fmt = 'VVsVsVvVvVvV'
     else:
         raise Exception('unexpected common_rec version %d' % version)
     data = vint.read_bvec(port)
     values = vint.unpack(unpack_fmt, data)
     if version == 3:
         (self.mode, self.uid, self.user, self.gid, self.group,
          self.rdev,
          self.atime, atime_ns,
          self.mtime, mtime_ns,
          self.ctime, ctime_ns, size) = values
         if size >= 0:
             self.size = size
     else:
         (self.mode, self.uid, self.user, self.gid, self.group,
          self.rdev,
          self.atime, atime_ns,
          self.mtime, mtime_ns,
          self.ctime, ctime_ns) = values
     self.atime = xstat.timespec_to_nsecs((self.atime, atime_ns))
     self.mtime = xstat.timespec_to_nsecs((self.mtime, mtime_ns))
     self.ctime = xstat.timespec_to_nsecs((self.ctime, ctime_ns))
Esempio n. 2
0
File: index.py Progetto: lelutin/bup
 def __init__(self, parent, basename, name, m, ofs):
     Entry.__init__(self, basename, name, None, None)
     self.parent = parent
     self._m = m
     self._ofs = ofs
     (
         self.dev,
         self.ino,
         self.nlink,
         self.ctime,
         ctime_ns,
         self.mtime,
         mtime_ns,
         self.atime,
         atime_ns,
         self.size,
         self.mode,
         self.gitmode,
         self.sha,
         self.flags,
         self.children_ofs,
         self.children_n,
         self.meta_ofs,
     ) = struct.unpack(INDEX_SIG, str(buffer(m, ofs, ENTLEN)))
     self.atime = xstat.timespec_to_nsecs((self.atime, atime_ns))
     self.mtime = xstat.timespec_to_nsecs((self.mtime, mtime_ns))
     self.ctime = xstat.timespec_to_nsecs((self.ctime, ctime_ns))
Esempio n. 3
0
 def _load_common_rec(self, port):
     data = vint.read_bvec(port)
     (self.mode, self.uid, self.user, self.gid, self.group, self.rdev,
      self.atime, atime_ns, self.mtime, mtime_ns, self.ctime,
      ctime_ns) = vint.unpack('VVsVsVvVvVvV', data)
     self.atime = xstat.timespec_to_nsecs((self.atime, atime_ns))
     self.mtime = xstat.timespec_to_nsecs((self.mtime, mtime_ns))
     self.ctime = xstat.timespec_to_nsecs((self.ctime, ctime_ns))
Esempio n. 4
0
def test_fstime():
    WVPASSEQ(xstat.timespec_to_nsecs((0, 0)), 0)
    WVPASSEQ(xstat.timespec_to_nsecs((1, 0)), 10**9)
    WVPASSEQ(xstat.timespec_to_nsecs((0, 10**9 / 2)), 500000000)
    WVPASSEQ(xstat.timespec_to_nsecs((1, 10**9 / 2)), 1500000000)
    WVPASSEQ(xstat.timespec_to_nsecs((-1, 0)), -10**9)
    WVPASSEQ(xstat.timespec_to_nsecs((-1, 10**9 / 2)), -500000000)
    WVPASSEQ(xstat.timespec_to_nsecs((-2, 10**9 / 2)), -1500000000)
    WVEXCEPT(Exception, xstat.timespec_to_nsecs, (0, -1))
    WVPASSEQ(type(xstat.timespec_to_nsecs((2, 22222222))), type(0))
    WVPASSEQ(type(xstat.timespec_to_nsecs((-2, 22222222))), type(0))

    WVPASSEQ(xstat.nsecs_to_timespec(0), (0, 0))
    WVPASSEQ(xstat.nsecs_to_timespec(10**9), (1, 0))
    WVPASSEQ(xstat.nsecs_to_timespec(500000000), (0, 10**9 / 2))
    WVPASSEQ(xstat.nsecs_to_timespec(1500000000), (1, 10**9 / 2))
    WVPASSEQ(xstat.nsecs_to_timespec(-10**9), (-1, 0))
    WVPASSEQ(xstat.nsecs_to_timespec(-500000000), (-1, 10**9 / 2))
    WVPASSEQ(xstat.nsecs_to_timespec(-1500000000), (-2, 10**9 / 2))
    x = xstat.nsecs_to_timespec(1977777778)
    WVPASSEQ(type(x[0]), type(0))
    WVPASSEQ(type(x[1]), type(0))
    x = xstat.nsecs_to_timespec(-1977777778)
    WVPASSEQ(type(x[0]), type(0))
    WVPASSEQ(type(x[1]), type(0))

    WVPASSEQ(xstat.fstime_floor_secs(0), 0)
    WVPASSEQ(xstat.fstime_floor_secs(10**9 / 2), 0)
    WVPASSEQ(xstat.fstime_floor_secs(10**9), 1)
    WVPASSEQ(xstat.fstime_floor_secs(-10**9 / 2), -1)
    WVPASSEQ(xstat.fstime_floor_secs(-10**9), -1)
    WVPASSEQ(type(xstat.fstime_floor_secs(10**9 / 2)), type(0))
    WVPASSEQ(type(xstat.fstime_floor_secs(-10**9 / 2)), type(0))
Esempio n. 5
0
def test_fstime():
    WVPASSEQ(xstat.timespec_to_nsecs((0, 0)), 0)
    WVPASSEQ(xstat.timespec_to_nsecs((1, 0)), 10**9)
    WVPASSEQ(xstat.timespec_to_nsecs((0, 10**9 / 2)), 500000000)
    WVPASSEQ(xstat.timespec_to_nsecs((1, 10**9 / 2)), 1500000000)
    WVPASSEQ(xstat.timespec_to_nsecs((-1, 0)), -10**9)
    WVPASSEQ(xstat.timespec_to_nsecs((-1, 10**9 / 2)), -500000000)
    WVPASSEQ(xstat.timespec_to_nsecs((-2, 10**9 / 2)), -1500000000)
    WVEXCEPT(Exception, xstat.timespec_to_nsecs, (0, -1))
    WVPASSEQ(type(xstat.timespec_to_nsecs((2, 22222222))), type(0))
    WVPASSEQ(type(xstat.timespec_to_nsecs((-2, 22222222))), type(0))

    WVPASSEQ(xstat.nsecs_to_timespec(0), (0, 0))
    WVPASSEQ(xstat.nsecs_to_timespec(10**9), (1, 0))
    WVPASSEQ(xstat.nsecs_to_timespec(500000000), (0, 10**9 / 2))
    WVPASSEQ(xstat.nsecs_to_timespec(1500000000), (1, 10**9 / 2))
    WVPASSEQ(xstat.nsecs_to_timespec(-10**9), (-1, 0))
    WVPASSEQ(xstat.nsecs_to_timespec(-500000000), (-1, 10**9 / 2))
    WVPASSEQ(xstat.nsecs_to_timespec(-1500000000), (-2, 10**9 / 2))
    x = xstat.nsecs_to_timespec(1977777778)
    WVPASSEQ(type(x[0]), type(0))
    WVPASSEQ(type(x[1]), type(0))
    x = xstat.nsecs_to_timespec(-1977777778)
    WVPASSEQ(type(x[0]), type(0))
    WVPASSEQ(type(x[1]), type(0))

    WVPASSEQ(xstat.fstime_floor_secs(0), 0)
    WVPASSEQ(xstat.fstime_floor_secs(10**9 / 2), 0)
    WVPASSEQ(xstat.fstime_floor_secs(10**9), 1)
    WVPASSEQ(xstat.fstime_floor_secs(-10**9 / 2), -1)
    WVPASSEQ(xstat.fstime_floor_secs(-10**9), -1)
    WVPASSEQ(type(xstat.fstime_floor_secs(10**9 / 2)), type(0))
    WVPASSEQ(type(xstat.fstime_floor_secs(-10**9 / 2)), type(0))
Esempio n. 6
0
 def _load_common_rec(self, port, legacy_format=False):
     unpack_fmt = 'vvsvsvvVvVvV'
     if legacy_format:
         unpack_fmt = 'VVsVsVvVvVvV'
     data = vint.read_bvec(port)
     (self.mode, self.uid, self.user, self.gid, self.group, self.rdev,
      self.atime, atime_ns, self.mtime, mtime_ns, self.ctime,
      ctime_ns) = vint.unpack(unpack_fmt, data)
     self.atime = xstat.timespec_to_nsecs((self.atime, atime_ns))
     self.mtime = xstat.timespec_to_nsecs((self.mtime, mtime_ns))
     self.ctime = xstat.timespec_to_nsecs((self.ctime, ctime_ns))
Esempio n. 7
0
 def __init__(self, parent, basename, name, m, ofs):
     Entry.__init__(self, basename, name, None, None)
     self.parent = parent
     self._m = m
     self._ofs = ofs
     (self.dev, self.ino, self.nlink, self.ctime, ctime_ns, self.mtime,
      mtime_ns, self.atime, atime_ns, self.size, self.mode, self.gitmode,
      self.sha, self.flags, self.children_ofs, self.children_n,
      self.meta_ofs) = struct.unpack(INDEX_SIG, m[ofs:ofs + ENTLEN])
     self.atime = xstat.timespec_to_nsecs((self.atime, atime_ns))
     self.mtime = xstat.timespec_to_nsecs((self.mtime, mtime_ns))
     self.ctime = xstat.timespec_to_nsecs((self.ctime, ctime_ns))
Esempio n. 8
0
def test_fstime():
    with no_lingering_errors():
        WVPASSEQ(xstat.timespec_to_nsecs((0, 0)), 0)
        WVPASSEQ(xstat.timespec_to_nsecs((1, 0)), 10**9)
        WVPASSEQ(xstat.timespec_to_nsecs((0, 10**9 / 2)), 500000000)
        WVPASSEQ(xstat.timespec_to_nsecs((1, 10**9 / 2)), 1500000000)
        WVPASSEQ(xstat.timespec_to_nsecs((-1, 0)), -10**9)
        WVPASSEQ(xstat.timespec_to_nsecs((-1, 10**9 / 2)), -500000000)
        WVPASSEQ(xstat.timespec_to_nsecs((-2, 10**9 / 2)), -1500000000)
        WVPASSEQ(xstat.timespec_to_nsecs((0, -1)), -1)
        WVPASSEQ(type(xstat.timespec_to_nsecs((2, 22222222))), type(0))
        WVPASSEQ(type(xstat.timespec_to_nsecs((-2, 22222222))), type(0))

        WVPASSEQ(xstat.nsecs_to_timespec(0), (0, 0))
        WVPASSEQ(xstat.nsecs_to_timespec(10**9), (1, 0))
        WVPASSEQ(xstat.nsecs_to_timespec(500000000), (0, 10**9 / 2))
        WVPASSEQ(xstat.nsecs_to_timespec(1500000000), (1, 10**9 / 2))
        WVPASSEQ(xstat.nsecs_to_timespec(-10**9), (-1, 0))
        WVPASSEQ(xstat.nsecs_to_timespec(-500000000), (-1, 10**9 / 2))
        WVPASSEQ(xstat.nsecs_to_timespec(-1500000000), (-2, 10**9 / 2))
        x = xstat.nsecs_to_timespec(1977777778)
        WVPASSEQ(type(x[0]), type(0))
        WVPASSEQ(type(x[1]), type(0))
        x = xstat.nsecs_to_timespec(-1977777778)
        WVPASSEQ(type(x[0]), type(0))
        WVPASSEQ(type(x[1]), type(0))

        WVPASSEQ(xstat.nsecs_to_timeval(0), (0, 0))
        WVPASSEQ(xstat.nsecs_to_timeval(10**9), (1, 0))
        WVPASSEQ(xstat.nsecs_to_timeval(500000000), (0, (10**9 / 2) / 1000))
        WVPASSEQ(xstat.nsecs_to_timeval(1500000000), (1, (10**9 / 2) / 1000))
        WVPASSEQ(xstat.nsecs_to_timeval(-10**9), (-1, 0))
        WVPASSEQ(xstat.nsecs_to_timeval(-500000000), (-1, (10**9 / 2) / 1000))
        WVPASSEQ(xstat.nsecs_to_timeval(-1500000000), (-2, (10**9 / 2) / 1000))
        x = xstat.nsecs_to_timeval(1977777778)
        WVPASSEQ(type(x[0]), type(0))
        WVPASSEQ(type(x[1]), type(0))
        x = xstat.nsecs_to_timeval(-1977777778)
        WVPASSEQ(type(x[0]), type(0))
        WVPASSEQ(type(x[1]), type(0))

        WVPASSEQ(xstat.fstime_floor_secs(0), 0)
        WVPASSEQ(xstat.fstime_floor_secs(10**9 / 2), 0)
        WVPASSEQ(xstat.fstime_floor_secs(10**9), 1)
        WVPASSEQ(xstat.fstime_floor_secs(-10**9 / 2), -1)
        WVPASSEQ(xstat.fstime_floor_secs(-10**9), -1)
        WVPASSEQ(type(xstat.fstime_floor_secs(10**9 / 2)), type(0))
        WVPASSEQ(type(xstat.fstime_floor_secs(-10**9 / 2)), type(0))
Esempio n. 9
0
File: txstat.py Progetto: bup/bup
def test_fstime():
    with no_lingering_errors():
        WVPASSEQ(xstat.timespec_to_nsecs((0, 0)), 0)
        WVPASSEQ(xstat.timespec_to_nsecs((1, 0)), 10**9)
        WVPASSEQ(xstat.timespec_to_nsecs((0, 10**9 / 2)), 500000000)
        WVPASSEQ(xstat.timespec_to_nsecs((1, 10**9 / 2)), 1500000000)
        WVPASSEQ(xstat.timespec_to_nsecs((-1, 0)), -10**9)
        WVPASSEQ(xstat.timespec_to_nsecs((-1, 10**9 / 2)), -500000000)
        WVPASSEQ(xstat.timespec_to_nsecs((-2, 10**9 / 2)), -1500000000)
        WVPASSEQ(xstat.timespec_to_nsecs((0, -1)), -1)
        WVPASSEQ(type(xstat.timespec_to_nsecs((2, 22222222))), type(0))
        WVPASSEQ(type(xstat.timespec_to_nsecs((-2, 22222222))), type(0))

        WVPASSEQ(xstat.nsecs_to_timespec(0), (0, 0))
        WVPASSEQ(xstat.nsecs_to_timespec(10**9), (1, 0))
        WVPASSEQ(xstat.nsecs_to_timespec(500000000), (0, 10**9 / 2))
        WVPASSEQ(xstat.nsecs_to_timespec(1500000000), (1, 10**9 / 2))
        WVPASSEQ(xstat.nsecs_to_timespec(-10**9), (-1, 0))
        WVPASSEQ(xstat.nsecs_to_timespec(-500000000), (-1, 10**9 / 2))
        WVPASSEQ(xstat.nsecs_to_timespec(-1500000000), (-2, 10**9 / 2))
        x = xstat.nsecs_to_timespec(1977777778)
        WVPASSEQ(type(x[0]), type(0))
        WVPASSEQ(type(x[1]), type(0))
        x = xstat.nsecs_to_timespec(-1977777778)
        WVPASSEQ(type(x[0]), type(0))
        WVPASSEQ(type(x[1]), type(0))

        WVPASSEQ(xstat.nsecs_to_timeval(0), (0, 0))
        WVPASSEQ(xstat.nsecs_to_timeval(10**9), (1, 0))
        WVPASSEQ(xstat.nsecs_to_timeval(500000000), (0, (10**9 / 2) / 1000))
        WVPASSEQ(xstat.nsecs_to_timeval(1500000000), (1, (10**9 / 2) / 1000))
        WVPASSEQ(xstat.nsecs_to_timeval(-10**9), (-1, 0))
        WVPASSEQ(xstat.nsecs_to_timeval(-500000000), (-1, (10**9 / 2) / 1000))
        WVPASSEQ(xstat.nsecs_to_timeval(-1500000000), (-2, (10**9 / 2) / 1000))
        x = xstat.nsecs_to_timeval(1977777778)
        WVPASSEQ(type(x[0]), type(0))
        WVPASSEQ(type(x[1]), type(0))
        x = xstat.nsecs_to_timeval(-1977777778)
        WVPASSEQ(type(x[0]), type(0))
        WVPASSEQ(type(x[1]), type(0))

        WVPASSEQ(xstat.fstime_floor_secs(0), 0)
        WVPASSEQ(xstat.fstime_floor_secs(10**9 / 2), 0)
        WVPASSEQ(xstat.fstime_floor_secs(10**9), 1)
        WVPASSEQ(xstat.fstime_floor_secs(-10**9 / 2), -1)
        WVPASSEQ(xstat.fstime_floor_secs(-10**9), -1)
        WVPASSEQ(type(xstat.fstime_floor_secs(10**9 / 2)), type(0))
        WVPASSEQ(type(xstat.fstime_floor_secs(-10**9 / 2)), type(0))
Esempio n. 10
0
 def _load_common_rec(self, port):
     data = vint.read_bvec(port)
     (self.mode,
      self.uid,
      self.user,
      self.gid,
      self.group,
      self.rdev,
      self.atime,
      atime_ns,
      self.mtime,
      mtime_ns,
      self.ctime,
      ctime_ns) = vint.unpack('VVsVsVvVvVvV', data)
     self.atime = xstat.timespec_to_nsecs((self.atime, atime_ns))
     self.mtime = xstat.timespec_to_nsecs((self.mtime, mtime_ns))
     self.ctime = xstat.timespec_to_nsecs((self.ctime, ctime_ns))
Esempio n. 11
0
 def _load_common_rec(self, port, legacy_format=False):
     unpack_fmt = 'vvsvsvvVvVvV'
     if legacy_format:
         unpack_fmt = 'VVsVsVvVvVvV'
     data = vint.read_bvec(port)
     (self.mode,
      self.uid,
      self.user,
      self.gid,
      self.group,
      self.rdev,
      self.atime,
      atime_ns,
      self.mtime,
      mtime_ns,
      self.ctime,
      ctime_ns) = vint.unpack(unpack_fmt, data)
     self.atime = xstat.timespec_to_nsecs((self.atime, atime_ns))
     self.mtime = xstat.timespec_to_nsecs((self.mtime, mtime_ns))
     self.ctime = xstat.timespec_to_nsecs((self.ctime, ctime_ns))