示例#1
0
	def testVirtualFiles(self):
		"""Testing virtual files"""
		tempout = self.conn.open("testfiles/tempout", "w")
		assert isinstance(tempout, VirtualFile)
		regfilefp = open(self.regfilename, "r")
		rpath.copyfileobj(regfilefp, tempout)
		tempout.close()
		regfilefp.close()
		tempoutlocal = open("testfiles/tempout", "r")
		regfilefp = open(self.regfilename, "r")
		assert rpath.cmpfileobj(regfilefp, tempoutlocal)
		tempoutlocal.close()
		regfilefp.close()
		os.unlink("testfiles/tempout")

		assert rpath.cmpfileobj(self.conn.open(self.regfilename, "r"),
								open(self.regfilename, "r"))
示例#2
0
	def testRdiffSig(self):
		"""Test making rdiff signatures"""
		sig = rpath.RPath(self.lc,
						  "testfiles/various_file_types/regular_file.sig")
		sigfp = sig.open("r")
		rfsig = Rdiff.get_signature(RPath(self.lc, "testfiles/various_file_types/regular_file"), 2048)
		assert rpath.cmpfileobj(sigfp, rfsig)
		sigfp.close()
		rfsig.close()
示例#3
0
 def testRdiffSig(self):
     """Test making rdiff signatures"""
     sig = rpath.RPath(self.lc,
                       "testfiles/various_file_types/regular_file.sig")
     sigfp = sig.open("r")
     rfsig = Rdiff.get_signature(
         RPath(self.lc, "testfiles/various_file_types/regular_file"), 2048)
     assert rpath.cmpfileobj(sigfp, rfsig)
     sigfp.close()
     rfsig.close()
示例#4
0
    def testVirtualFiles(self):
        """Testing virtual files"""
        # generate file name for temporary file
        temp_file = os.path.join(abs_test_dir, b"tempout")

        tempout = self.conn.open(temp_file, "wb")
        assert isinstance(tempout, VirtualFile)
        regfilefp = open(regfilename, "rb")
        rpath.copyfileobj(regfilefp, tempout)
        tempout.close()
        regfilefp.close()
        tempoutlocal = open(temp_file, "rb")
        regfilefp = open(regfilename, "rb")
        assert rpath.cmpfileobj(regfilefp, tempoutlocal)
        tempoutlocal.close()
        regfilefp.close()
        os.unlink(temp_file)

        with open(regfilename, "rb") as localfh:
            assert rpath.cmpfileobj(self.conn.open(regfilename, "rb"), localfh)
示例#5
0
    def testGzipsnapshot(self):
        """Test making a compressed snapshot"""
        Globals.compression = 1
        rp = increment.Increment(rf, sym, target)
        self.check_time(rp)
        assert rp.equal_verbose(sym, check_index=0, compare_size=0)
        assert rpath.cmp(rp, sym)
        rp.delete()

        rp = increment.Increment(sym, rf, target)
        self.check_time(rp)
        assert rp.equal_verbose(rf, check_index=0, compare_size=0)
        assert rpath.cmpfileobj(rp.open("rb", 1), rf.open("rb"))
        assert rp.isinccompressed()
        rp.delete()
示例#6
0
 def testRdiffSig(self):
     """Test making rdiff signatures"""
     sig = rpath.RPath(
         self.lc,
         os.path.join(old_test_dir, b"various_file_types",
                      b"regular_file.sig"))
     sigfp = sig.open("rb")
     rfsig = Rdiff.get_signature(
         rpath.RPath(
             self.lc,
             os.path.join(old_test_dir, b"various_file_types",
                          b"regular_file")), 2048)
     assert rpath.cmpfileobj(sigfp, rfsig)
     sigfp.close()
     rfsig.close()
示例#7
0
	def testGzipsnapshot(self):
		"""Test making a compressed snapshot"""
		Globals.compression = 1
		rp = increment.Increment(rf, sym, target)
		self.check_time(rp)
		assert rp.equal_verbose(sym, check_index = 0, compare_size = 0)
		assert rpath.cmp(rp, sym)
		rp.delete()
		
		rp = increment.Increment(sym, rf, target)
		self.check_time(rp)
		assert rp.equal_verbose(rf, check_index = 0, compare_size = 0)
		assert rpath.cmpfileobj(rp.open("rb", 1), rf.open("rb"))
		assert rp.isinccompressed()
		rp.delete()
示例#8
0
	def compare_at_time(self, t):
		"""Restore file, make sure it is the same at time t"""
		log.Log("Checking result at time %s" % (t,), 7)
		tf = TempFile.new(tempdir.append("foo"))
		restore.MirrorStruct._mirror_time = mirror_time
		restore.MirrorStruct._rest_time = t
		self.rf.set_relevant_incs()
		out_rorpath = self.rf.get_attribs().getRORPath()
		correct_result = self.time_rp_dict[t]

		if out_rorpath.isreg():
			out_rorpath.setfile(self.rf.get_restore_fp())
		rpath.copy_with_attribs(out_rorpath, tf)
		assert tf.equal_verbose(correct_result, check_index = 0), \
			   "%s, %s" % (tf, correct_result)
		if tf.isreg():
			assert rpath.cmpfileobj(tf.open("rb"), correct_result.open("rb"))
		if tf.lstat(): tf.delete()