def test_isdir(self): drive = Drive() self.assertFalse(drive.isdir("drive://gsync_unittest/is_a_dir")) drive.mkdir("drive://gsync_unittest/is_a_dir") self.assertTrue(drive.isdir("drive://gsync_unittest/is_a_dir")) drive.create("drive://gsync_unittest/not_a_dir", {}) self.assertFalse(drive.isdir("drive://gsync_unittest/not_a_dir"))
def setup_drive_data(testcase): # Ironic, using Gsync to setup the tests, but if it fails the tests # will fail anyway, so we will be okay. assert os.path.exists("tests/data") drive = Drive() drive.delete("drive://gsync_unittest/", skip_trash=True) drive.mkdir("drive://gsync_unittest/") drive.create("drive://gsync_unittest/open_for_read.txt", {}) drive.update("drive://gsync_unittest/open_for_read.txt", {}, media_body=MediaFileUpload("tests/data/open_for_read.txt", mimetype=MimeTypes.BINARY_FILE, resumable=True))
def setup_drive_data(testcase): # Ironic, using Gsync to setup the tests, but if it fails the tests # will fail anyway, so we will be okay. assert os.path.exists("tests/data") drive = Drive() drive.delete("drive://gsync_unittest/", skip_trash=True) drive.mkdir("drive://gsync_unittest/") drive.create("drive://gsync_unittest/open_for_read.txt", {}) drive.update("drive://gsync_unittest/open_for_read.txt", {}, media_body=MediaFileUpload("tests/data/open_for_read.txt", mimetype=MimeTypes.BINARY_FILE, resumable=True ) )
def test_revisions(self): drive = Drive() num_revisions = 6 info = drive.create("drive://gsync_unittest/revision_test", {"description": "revision-0"}) self.assertEqual(info['description'], "revision-0") for revision in range(1, num_revisions): description = "revision-%d" % revision info = drive.update("drive://gsync_unittest/revision_test", {"description": description}, media_body=MediaFileUpload( "tests/data/open_for_read.txt", mimetype=MimeTypes.BINARY_FILE, resumable=True)) self.assertEqual(info['description'], description) f = drive.open("drive://gsync_unittest/revision_test", "r") revisions = f.revisions() self.assertEqual(len(revisions), num_revisions) self.assertEqual(int(revisions[0]['fileSize']), 0) self.assertNotEqual(int(revisions[-1]['fileSize']), 0)
def test_revisions(self): drive = Drive() num_revisions = 6 info = drive.create("drive://gsync_unittest/revision_test", { "description": "revision-0" }) self.assertEqual(info['description'], "revision-0") for revision in range(1, num_revisions): description = "revision-%d" % revision info = drive.update("drive://gsync_unittest/revision_test", { "description": description }, media_body=MediaFileUpload("tests/data/open_for_read.txt", mimetype=MimeTypes.BINARY_FILE, resumable=True ) ) self.assertEqual(info['description'], description) f = drive.open("drive://gsync_unittest/revision_test", "r") revisions = f.revisions() self.assertEqual(len(revisions), num_revisions) self.assertEqual(int(revisions[0]['fileSize']), 0) self.assertNotEqual(int(revisions[-1]['fileSize']), 0)
def test_create(self): drive = Drive() info = drive.create("drive://gsync_unittest/create_test", { "title": "Will be overwritten", "description": "Will be kept" }) self.assertEqual(info['title'], "create_test") self.assertEqual(info['description'], "Will be kept") info2 = drive.create("drive://gsync_unittest/create_test", { "description": "This file will replace the first one" }) self.assertNotEqual(info['id'], info2['id']) self.assertEqual(info2['title'], "create_test") self.assertEqual(info2['description'], "This file will replace the first one")
def test_create(self): drive = Drive() info = drive.create("drive://gsync_unittest/create_test", { "title": "Will be overwritten", "description": "Will be kept" }) self.assertEqual(info['title'], "create_test") self.assertEqual(info['description'], "Will be kept") info2 = drive.create( "drive://gsync_unittest/create_test", {"description": "This file will replace the first one"}) self.assertNotEqual(info['id'], info2['id']) self.assertEqual(info2['title'], "create_test") self.assertEqual(info2['description'], "This file will replace the first one")
def test_listdir(self): drive = Drive() info = drive.create("drive://gsync_unittest/a_file_to_list", {}) self.assertIsNotNone(info) items = drive.listdir("drive://gsync_unittest/") self.assertTrue(isinstance(items, list)) self.assertTrue("a_file_to_list" in items)
def _createFile(self, path, src): debug("Creating remote file: %s" % repr(path)) if GsyncOptions.dry_run: return drive = Drive() info = drive.create(path, src.getInfo()) if info is None: debug("Creation failed")
def test_update_with_progress(self): drive = Drive() info = drive.create("drive://gsync_unittest/update_test", {"description": "Old description"}) self.assertEqual(info['title'], "update_test") def progress_callback(status): progress_callback.called = True progress_callback.called = False info = drive.update("drive://gsync_unittest/update_test", {"description": "New description"}, media_body=MediaFileUpload( "tests/data/open_for_read.txt", mimetype=MimeTypes.BINARY_FILE, resumable=True), progress_callback=progress_callback) self.assertEqual(info['description'], "New description") self.assertTrue(int(info['fileSize']) > 0) self.assertTrue(progress_callback.called)
def test_update_with_progress(self): drive = Drive() info = drive.create("drive://gsync_unittest/update_test", { "description": "Old description" }) self.assertEqual(info['title'], "update_test") def progress_callback(status): progress_callback.called = True progress_callback.called = False info = drive.update("drive://gsync_unittest/update_test", { "description": "New description" }, media_body=MediaFileUpload("tests/data/open_for_read.txt", mimetype=MimeTypes.BINARY_FILE, resumable=True ), progress_callback=progress_callback ) self.assertEqual(info['description'], "New description") self.assertTrue(int(info['fileSize']) > 0) self.assertTrue(progress_callback.called)