def testCopy(self):
        gfile.MkDir(self.tmp + "dir1")
        gfile.MkDir(self.tmp + "dir2")
        with gfile.GFile(self.tmp + "dir1/file1", "w"):
            pass  # Create file
        with gfile.GFile(self.tmp + "dir2/file2", "w"):
            pass  # Create file

        # Dest file already exists, overwrite=False (default).
        self.assertRaises(
            OSError, lambda: gfile.Copy(self.tmp + "dir1/file1", self.tmp +
                                        "dir2/file2"))
        # Overwrite succeeds
        gfile.Copy(self.tmp + "dir1/file1",
                   self.tmp + "dir2/file2",
                   overwrite=True)
        self.assertTrue(gfile.Exists(self.tmp + "dir2/file2"))

        # Normal copy.
        gfile.Rename(self.tmp + "dir1/file1", self.tmp + "dir2/file1")
        self.assertTrue(gfile.Exists(self.tmp + "dir2/file1"))

        # Normal copy to non-existent dir
        self.assertRaises(
            OSError, lambda: gfile.Rename(self.tmp + "dir1/file1", self.tmp +
                                          "newdir/file1"))
 def testStat(self):
     with gfile.GFile(self.tmp + "test_stat", "w"):
         pass
     creation_time = time.time()
     statinfo = gfile.Stat(self.tmp + "test_stat")
     # Test the modification timestamp is within 20 seconds of closing the file.
     self.assertLessEqual(statinfo.mtime, creation_time + 10)
     self.assertGreaterEqual(statinfo.mtime, creation_time - 10)
    def testRename(self):
        gfile.MkDir(self.tmp + "dir1")
        gfile.MkDir(self.tmp + "dir2")
        with gfile.GFile(self.tmp + "file1", "w"):
            pass  # Create file
        with gfile.GFile(self.tmp + "file2", "w"):
            pass  # Create file

        # Dest file already exists, overwrite=False (default).
        self.assertRaises(
            OSError,
            lambda: gfile.Rename(self.tmp + "file1", self.tmp + "file2"))
        gfile.Rename(self.tmp + "file1", self.tmp + "file2", overwrite=True)
        self.assertFalse(gfile.Exists(self.tmp + "file1"))
        gfile.Rename(self.tmp + "file2", self.tmp + "newfile")
        self.assertTrue(gfile.Exists(self.tmp + "newfile"))

        gfile.Rename(self.tmp + "dir1", self.tmp + "dir2")
        self.assertFalse(gfile.Exists(self.tmp + "dir1"))
        gfile.Rename(self.tmp + "dir2", self.tmp + "newdir")
        self.assertTrue(gfile.Exists(self.tmp + "newdir"))
 def testErrors(self):
     self.assertRaises(OSError,
                       lambda: gfile.RmDir(self.tmp + "dir_doesnt_exist"))
     self.assertRaises(OSError,
                       lambda: gfile.Remove(self.tmp + "file_doesnt_exist"))
     gfile.MkDir(self.tmp + "error_dir")
     with gfile.GFile(self.tmp + "error_dir/file", "w"):
         pass  # Create file
     self.assertRaises(OSError,
                       lambda: gfile.Remove(self.tmp + "error_dir"))
     self.assertRaises(OSError, lambda: gfile.RmDir(self.tmp + "error_dir"))
     self.assertTrue(gfile.Exists(self.tmp + "error_dir"))
     gfile.DeleteRecursively(self.tmp + "error_dir")
     self.assertFalse(gfile.Exists(self.tmp + "error_dir"))
Ejemplo n.º 5
0
def maybe_download(filename, work_directory, source_url):
    """Download the data from source url, unless it's already here."""
    if not gfile.Exists(work_directory):
        gfile.MakeDirs(work_directory)
    filepath = os.path.join(work_directory, filename)
    if not gfile.Exists(filepath):
        with tempfile.NamedTemporaryFile() as tmpfile:
            temp_file_name = tmpfile.name
            urllib.request.urlretrieve(source_url, temp_file_name)
            gfile.Copy(temp_file_name, filepath)
            with gfile.GFile(filepath) as f:
                size = f.Size()
            print('Successfully downloaded', filename, size, 'bytes.')
    return filepath
Ejemplo n.º 6
0
def maybe_download(filename, work_directory, source_url):
    """Download the data from source url, unless it's already here.

    Args:
        filename: string, name of the file in the directory.
        work_directory: string, path to working directory.
        source_url: url to download from if file doesn't exist.

    Returns:
        Path to resulting file.
    """
    if not gfile.Exists(work_directory):
        gfile.MakeDirs(work_directory)
    filepath = os.path.join(work_directory, filename)
    if not gfile.Exists(filepath):
        with tempfile.NamedTemporaryFile() as tmpfile:
            temp_file_name = tmpfile.name
            urllib.request.urlretrieve(source_url, temp_file_name)
            gfile.Copy(temp_file_name, filepath)
        with gfile.GFile(filepath) as f:
            size = f.Size()
        print('Successfully downloaded', filename, size, 'bytes.')
    return filepath
 def testExists(self):
     self.assertFalse(gfile.Exists(self.tmp + "test_exists"))
     with gfile.GFile(self.tmp + "test_exists", "w"):
         pass
     self.assertTrue(gfile.Exists(self.tmp + "test_exists"))