mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2025-01-05 04:34:10 +00:00
Move the test for _write_download_file() to test_magic_folder module
This commit is contained in:
parent
9bf5f5c312
commit
982c89a835
@ -11,7 +11,6 @@ from .test_cli import CLITestMixin
|
|||||||
from allmydata.scripts import magic_folder_cli
|
from allmydata.scripts import magic_folder_cli
|
||||||
from allmydata.util.fileutil import abspath_expanduser_unicode
|
from allmydata.util.fileutil import abspath_expanduser_unicode
|
||||||
from allmydata.frontends.magic_folder import MagicFolder
|
from allmydata.frontends.magic_folder import MagicFolder
|
||||||
from allmydata.frontends.magic_folder import Downloader
|
|
||||||
from allmydata import uri
|
from allmydata import uri
|
||||||
|
|
||||||
|
|
||||||
@ -202,35 +201,3 @@ class CreateMagicFolder(MagicFolderTestMixin, unittest.TestCase):
|
|||||||
d.addCallback(lambda x: self.check_joined_config(0, self.upload_dircap))
|
d.addCallback(lambda x: self.check_joined_config(0, self.upload_dircap))
|
||||||
d.addCallback(lambda x: self.check_config(0, self.local_dir))
|
d.addCallback(lambda x: self.check_config(0, self.local_dir))
|
||||||
return d
|
return d
|
||||||
|
|
||||||
def test_write_downloaded_file(self):
|
|
||||||
workdir = u"cli/MagicFolder/write-downloaded-file"
|
|
||||||
local_file = fileutil.abspath_expanduser_unicode(os.path.join(workdir, "foobar"))
|
|
||||||
|
|
||||||
# create a file with name "foobar" with content "foo"
|
|
||||||
# write downloaded file content "bar" into "foobar" with is_conflict = False
|
|
||||||
fileutil.make_dirs(workdir)
|
|
||||||
fileutil.write(local_file, "foo")
|
|
||||||
|
|
||||||
# if is_conflict is False, then the .conflict file shouldn't exist.
|
|
||||||
Downloader._write_downloaded_file(local_file, "bar", False, None)
|
|
||||||
conflicted_path = local_file + u".conflict"
|
|
||||||
self.failIf(os.path.exists(conflicted_path))
|
|
||||||
|
|
||||||
# At this point, the backup file should exist with content "foo"
|
|
||||||
backup_path = local_file + u".backup"
|
|
||||||
self.failUnless(os.path.exists(backup_path))
|
|
||||||
self.failUnlessEqual(fileutil.read(backup_path), "foo")
|
|
||||||
|
|
||||||
# .tmp file shouldn't exist
|
|
||||||
self.failIf(os.path.exists(local_file + u".tmp"))
|
|
||||||
|
|
||||||
# .. and the original file should have the new content
|
|
||||||
self.failUnlessEqual(fileutil.read(local_file), "bar")
|
|
||||||
|
|
||||||
# now a test for conflicted case
|
|
||||||
Downloader._write_downloaded_file(local_file, "bar", True, None)
|
|
||||||
self.failUnless(os.path.exists(conflicted_path))
|
|
||||||
|
|
||||||
# .tmp file shouldn't exist
|
|
||||||
self.failIf(os.path.exists(local_file + u".tmp"))
|
|
||||||
|
@ -16,6 +16,7 @@ from allmydata.test.test_cli_magic_folder import MagicFolderTestMixin
|
|||||||
|
|
||||||
from allmydata.frontends import magic_folder
|
from allmydata.frontends import magic_folder
|
||||||
from allmydata.frontends.magic_folder import MagicFolder
|
from allmydata.frontends.magic_folder import MagicFolder
|
||||||
|
from allmydata.frontends.magic_folder import Downloader
|
||||||
from allmydata import backupdb, magicpath
|
from allmydata import backupdb, magicpath
|
||||||
from allmydata.util.fileutil import abspath_expanduser_unicode
|
from allmydata.util.fileutil import abspath_expanduser_unicode
|
||||||
|
|
||||||
@ -454,6 +455,38 @@ class MockTest(MagicFolderTestMixin, unittest.TestCase):
|
|||||||
d.addCallback(_check_errors)
|
d.addCallback(_check_errors)
|
||||||
return d
|
return d
|
||||||
|
|
||||||
|
def test_write_downloaded_file(self):
|
||||||
|
workdir = u"cli/MagicFolder/write-downloaded-file"
|
||||||
|
local_file = fileutil.abspath_expanduser_unicode(os.path.join(workdir, "foobar"))
|
||||||
|
|
||||||
|
# create a file with name "foobar" with content "foo"
|
||||||
|
# write downloaded file content "bar" into "foobar" with is_conflict = False
|
||||||
|
fileutil.make_dirs(workdir)
|
||||||
|
fileutil.write(local_file, "foo")
|
||||||
|
|
||||||
|
# if is_conflict is False, then the .conflict file shouldn't exist.
|
||||||
|
Downloader._write_downloaded_file(local_file, "bar", False, None)
|
||||||
|
conflicted_path = local_file + u".conflict"
|
||||||
|
self.failIf(os.path.exists(conflicted_path))
|
||||||
|
|
||||||
|
# At this point, the backup file should exist with content "foo"
|
||||||
|
backup_path = local_file + u".backup"
|
||||||
|
self.failUnless(os.path.exists(backup_path))
|
||||||
|
self.failUnlessEqual(fileutil.read(backup_path), "foo")
|
||||||
|
|
||||||
|
# .tmp file shouldn't exist
|
||||||
|
self.failIf(os.path.exists(local_file + u".tmp"))
|
||||||
|
|
||||||
|
# .. and the original file should have the new content
|
||||||
|
self.failUnlessEqual(fileutil.read(local_file), "bar")
|
||||||
|
|
||||||
|
# now a test for conflicted case
|
||||||
|
Downloader._write_downloaded_file(local_file, "bar", True, None)
|
||||||
|
self.failUnless(os.path.exists(conflicted_path))
|
||||||
|
|
||||||
|
# .tmp file shouldn't exist
|
||||||
|
self.failIf(os.path.exists(local_file + u".tmp"))
|
||||||
|
|
||||||
|
|
||||||
class RealTest(MagicFolderTestMixin, unittest.TestCase):
|
class RealTest(MagicFolderTestMixin, unittest.TestCase):
|
||||||
"""This is skipped unless both Twisted and the platform support inotify."""
|
"""This is skipped unless both Twisted and the platform support inotify."""
|
||||||
|
Loading…
Reference in New Issue
Block a user