示例#1
0
    def test_one_file_rollback(self):

        testfile = os.path.join(self.tempdir, 'testfile.dat')
        self.create_file(testfile, 'one')

        ftrans = FileTransaction()

        fp = ftrans.open(testfile, 'r')
        self.assertEqual(fp.read(), 'one')

        fp = ftrans.open(testfile, 'w')
        fp.write('one,two')
        fp.close()
        fp = ftrans.open(testfile, 'r')
        self.assertEqual(fp.read(), 'one,two')

        fp = ftrans.open(testfile, 'a')
        fp.write(',three')
        fp.close()
        fp = ftrans.open(testfile, 'r')
        self.assertEqual(fp.read(), 'one,two,three')

        ftrans.rollback()

        self.assertEqual(open(testfile, 'r').read(), 'one')
示例#2
0
    def test_one_file_rollback(self):

        testfile = os.path.join(self.tempdir, 'testfile.dat')
        self.create_file(testfile, 'one')

        ftrans = FileTransaction()

        fp = ftrans.open(testfile, 'r')
        self.assertEqual(fp.read(), 'one')

        fp = ftrans.open(testfile, 'w')
        fp.write('one,two')
        fp.close()
        fp = ftrans.open(testfile, 'r')
        self.assertEqual(fp.read(), 'one,two')

        fp = ftrans.open(testfile, 'a')
        fp.write(',three')
        fp.close()
        fp = ftrans.open(testfile, 'r')
        self.assertEqual(fp.read(), 'one,two,three')

        ftrans.rollback()

        self.assertEqual(open(testfile, 'r').read(), 'one')
示例#3
0
    def test_mkdir_rollback(self):

        ftrans = FileTransaction()
        ftrans.mkdir(os.path.join(self.tempdir, '1'))
        ftrans.mkdir(os.path.join(self.tempdir, '1', '2'))
        fp = ftrans.open(os.path.join(self.tempdir, '1', '2', 'file'), 'w')
        fp.write('data')
        fp.close()

        ftrans.rollback()

        self.assertFalse(os.path.exists(os.path.join(self.tempdir, '1')))
示例#4
0
    def test_mkdir_rollback(self):

        ftrans = FileTransaction()
        ftrans.mkdir(os.path.join(self.tempdir, '1'))
        ftrans.mkdir(os.path.join(self.tempdir, '1', '2'))
        fp = ftrans.open(os.path.join(self.tempdir, '1', '2', 'file'), 'w')
        fp.write('data')
        fp.close()

        ftrans.rollback()

        self.assertFalse(os.path.exists(os.path.join(self.tempdir, '1')))
示例#5
0
    def test_rollback(self):

        init_data = "init data,"
        data1 = "test data one"
        data2 = "test data two"
        file1 = os.path.join(self.tempdir, "file1.dat")
        file2 = os.path.join(self.tempdir, "file2.dat")

        self.create_file(file1, init_data)

        ftrans = FileTransaction()
        fp1 = ftrans.open(file1, "a")
        fp2 = ftrans.open(file2, "w")
        fp1.write(data1)
        fp2.write(data2)
        fp1.close()
        fp2.close()
        ftrans.rollback()

        self.assertEqual(open(file1).read(), init_data)
        self.assertFalse(os.path.exists(file2))
示例#6
0
    def test_rollback(self):

        init_data = "init data,"
        data1 = "test data one"
        data2 = "test data two"
        file1 = os.path.join(self.tempdir, "file1.dat")
        file2 = os.path.join(self.tempdir, "file2.dat")

        self.create_file(file1, init_data)

        ftrans = FileTransaction()
        fp1 = ftrans.open(file1, "a")
        fp2 = ftrans.open(file2, "w")
        fp1.write(data1)
        fp2.write(data2)
        fp1.close()
        fp2.close()
        ftrans.rollback()

        self.assertEqual(open(file1).read(), init_data)
        self.assertFalse(os.path.exists(file2))