예제 #1
0
 def testClearDir(self):
     file1 = os.path.join(self.path, 'file1')
     file2 = os.path.join(self.path, 'file2')
     dir1 = os.path.join(self.path, 'dir1')
     dir2 = os.path.join(self.path, 'dir2')
     file3 = os.path.join(dir1, 'file3')
     file4 = os.path.join(dir2, 'file4')
     open(file1, 'w').close()
     open(file2, 'w').close()
     if not os.path.isdir(dir1):
         os.mkdir(dir1)
     if not os.path.isdir(dir2):
         os.mkdir(dir2)
     open(file3, 'w').close()
     open(file4, 'w').close()
     self.assertTrue(os.path.isfile(file1))
     self.assertTrue(os.path.isfile(file2))
     self.assertTrue(os.path.isfile(file3))
     self.assertTrue(os.path.isfile(file4))
     self.assertTrue(os.path.isdir(dir1))
     self.assertTrue(os.path.isdir(dir2))
     dm = DirManager(self.path)
     dm.clear_dir(dm.root_path)
     self.assertFalse(os.path.isfile(file1))
     self.assertFalse(os.path.isfile(file3))
     self.assertFalse(os.path.isdir(dir1))
     self.assertFalse(os.path.isfile(file2))
     self.assertFalse(os.path.isfile(file4))
     self.assertFalse(os.path.isdir(dir2))
예제 #2
0
    def testClearDirOlderThan(self):
        # given
        file1 = os.path.join(self.path, 'file1')
        file2 = os.path.join(self.path, 'file2')
        dir1 = os.path.join(self.path, 'dir1')
        dir2 = os.path.join(self.path, 'dir2')
        file3 = os.path.join(dir1, 'file3')
        file4 = os.path.join(dir2, 'file4')
        open(file1, 'w').close()
        open(file2, 'w').close()
        if not os.path.isdir(dir1):
            os.mkdir(dir1)
        if not os.path.isdir(dir2):
            os.mkdir(dir2)
        open(file3, 'w').close()
        open(file4, 'w').close()

        two_hours_ago = time.time() - 2*60*60

        os.utime(file1, times=(two_hours_ago, two_hours_ago))
        os.utime(dir1, times=(two_hours_ago, two_hours_ago))

        assert os.path.isfile(file1)
        assert os.path.isfile(file2)
        assert os.path.isfile(file3)
        assert os.path.isfile(file4)
        assert os.path.isdir(dir1)
        assert os.path.isdir(dir2)

        # when
        dm = DirManager(self.path)
        dm.clear_dir(dm.root_path, older_than_seconds=60*60)

        # then
        assert not os.path.isfile(file1)
        assert os.path.isfile(file2)
        assert not os.path.isdir(dir1)
        assert not os.path.isfile(file3)
        assert os.path.isdir(dir2)
        assert os.path.isfile(file4)
예제 #3
0
 def remove_received_files(self):
     dir_manager = DirManager(self.datadir)
     dir_manager.clear_dir(self.get_received_files_dir())
예제 #4
0
 def remove_distributed_files(self):
     dir_manager = DirManager(self.datadir)
     dir_manager.clear_dir(self.get_distributed_files_dir())