Whole bunch of Python3 str->bytes fixes

parent 840d18be
...@@ -46,6 +46,8 @@ from fs.contrib.davfs.util import * ...@@ -46,6 +46,8 @@ from fs.contrib.davfs.util import *
from fs.contrib.davfs import xmlobj from fs.contrib.davfs import xmlobj
from fs.contrib.davfs.xmlobj import * from fs.contrib.davfs.xmlobj import *
from six import b
import errno import errno
_RETRYABLE_ERRORS = [errno.EADDRINUSE] _RETRYABLE_ERRORS = [errno.EADDRINUSE]
try: try:
...@@ -354,7 +356,7 @@ class DAVFS(FS): ...@@ -354,7 +356,7 @@ class DAVFS(FS):
def open(self,path,mode="r"): def open(self,path,mode="r"):
mode = mode.replace("b","").replace("t","") mode = mode.replace("b","").replace("t","")
# Truncate the file if requested # Truncate the file if requested
contents = "" contents = b("")
if "w" in mode: if "w" in mode:
self.setcontents(path,contents) self.setcontents(path,contents)
else: else:
...@@ -364,7 +366,7 @@ class DAVFS(FS): ...@@ -364,7 +366,7 @@ class DAVFS(FS):
if "a" not in mode: if "a" not in mode:
contents.close() contents.close()
raise ResourceNotFoundError(path) raise ResourceNotFoundError(path)
contents = "" contents = b("")
self.setcontents(path,contents) self.setcontents(path,contents)
elif contents.status in (401,403): elif contents.status in (401,403):
contents.close() contents.close()
......
...@@ -73,6 +73,8 @@ from fs.base import fnmatch, NoDefaultMeta ...@@ -73,6 +73,8 @@ from fs.base import fnmatch, NoDefaultMeta
from util import TahoeUtil from util import TahoeUtil
from connection import Connection from connection import Connection
from six import b
logger = fs.getLogger('fs.tahoelafs') logger = fs.getLogger('fs.tahoelafs')
def _fix_path(func): def _fix_path(func):
...@@ -155,7 +157,7 @@ class _TahoeLAFS(FS): ...@@ -155,7 +157,7 @@ class _TahoeLAFS(FS):
self._log(DEBUG, 'Creating empty file %s' % path) self._log(DEBUG, 'Creating empty file %s' % path)
if self.getmeta("read_only"): if self.getmeta("read_only"):
raise errors.UnsupportedError('read only filesystem') raise errors.UnsupportedError('read only filesystem')
self.setcontents(path, '') self.setcontents(path, b(''))
handler = NullFile() handler = NullFile()
else: else:
self._log(DEBUG, 'Opening existing file %s for reading' % path) self._log(DEBUG, 'Opening existing file %s for reading' % path)
......
...@@ -1061,11 +1061,12 @@ if __name__ == "__main__": ...@@ -1061,11 +1061,12 @@ if __name__ == "__main__":
from fs.osfs import OSFS from fs.osfs import OSFS
from fs.memoryfs import MemoryFS from fs.memoryfs import MemoryFS
from shutil import rmtree from shutil import rmtree
from six import b
path = tempfile.mkdtemp() path = tempfile.mkdtemp()
try: try:
fs = OSFS(path) fs = OSFS(path)
#fs = MemoryFS() #fs = MemoryFS()
fs.setcontents("test1.txt","test one") fs.setcontents("test1.txt",b("test one"))
flags = DOKAN_OPTION_DEBUG|DOKAN_OPTION_STDERR|DOKAN_OPTION_REMOVABLE flags = DOKAN_OPTION_DEBUG|DOKAN_OPTION_STDERR|DOKAN_OPTION_REMOVABLE
mount(fs, "Q", foreground=True, numthreads=1, flags=flags) mount(fs, "Q", foreground=True, numthreads=1, flags=flags)
fs.close() fs.close()
......
...@@ -223,7 +223,7 @@ if dokan.is_available: ...@@ -223,7 +223,7 @@ if dokan.is_available:
rawfs.setcontents("autoRun.inf", b("evilcodeevilcode")) rawfs.setcontents("autoRun.inf", b("evilcodeevilcode"))
self.assertTrue(safefs.exists("_autoRun.inf")) self.assertTrue(safefs.exists("_autoRun.inf"))
self.assertTrue("autoRun.inf" not in safefs.listdir("/")) self.assertTrue("autoRun.inf" not in safefs.listdir("/"))
safefs.setcontents("file:stream","test") safefs.setcontents("file:stream",b("test"))
self.assertFalse(rawfs.exists("file:stream")) self.assertFalse(rawfs.exists("file:stream"))
self.assertTrue(rawfs.exists("file__colon__stream")) self.assertTrue(rawfs.exists("file__colon__stream"))
self.assertTrue("file:stream" in safefs.listdir("/")) self.assertTrue("file:stream" in safefs.listdir("/"))
......
...@@ -2,6 +2,8 @@ from fs.multifs import MultiFS ...@@ -2,6 +2,8 @@ from fs.multifs import MultiFS
from fs.memoryfs import MemoryFS from fs.memoryfs import MemoryFS
import unittest import unittest
from six import b
class TestMultiFS(unittest.TestCase): class TestMultiFS(unittest.TestCase):
def test_auto_close(self): def test_auto_close(self):
...@@ -36,48 +38,48 @@ class TestMultiFS(unittest.TestCase): ...@@ -36,48 +38,48 @@ class TestMultiFS(unittest.TestCase):
m1 = MemoryFS() m1 = MemoryFS()
m2 = MemoryFS() m2 = MemoryFS()
m3 = MemoryFS() m3 = MemoryFS()
m1.setcontents("name", "m1") m1.setcontents("name", b("m1"))
m2.setcontents("name", "m2") m2.setcontents("name", b("m2"))
m3.setcontents("name", "m3") m3.setcontents("name", b("m3"))
multi_fs = MultiFS(auto_close=False) multi_fs = MultiFS(auto_close=False)
multi_fs.addfs("m1", m1) multi_fs.addfs("m1", m1)
multi_fs.addfs("m2", m2) multi_fs.addfs("m2", m2)
multi_fs.addfs("m3", m3) multi_fs.addfs("m3", m3)
self.assert_(multi_fs.getcontents("name") == "m3") self.assert_(multi_fs.getcontents("name") == b("m3"))
m1 = MemoryFS() m1 = MemoryFS()
m2 = MemoryFS() m2 = MemoryFS()
m3 = MemoryFS() m3 = MemoryFS()
m1.setcontents("name", "m1") m1.setcontents("name", b("m1"))
m2.setcontents("name", "m2") m2.setcontents("name", b("m2"))
m3.setcontents("name", "m3") m3.setcontents("name", b("m3"))
multi_fs = MultiFS(auto_close=False) multi_fs = MultiFS(auto_close=False)
multi_fs.addfs("m1", m1) multi_fs.addfs("m1", m1)
multi_fs.addfs("m2", m2, priority=10) multi_fs.addfs("m2", m2, priority=10)
multi_fs.addfs("m3", m3) multi_fs.addfs("m3", m3)
self.assert_(multi_fs.getcontents("name") == "m2") self.assert_(multi_fs.getcontents("name") == b("m2"))
m1 = MemoryFS() m1 = MemoryFS()
m2 = MemoryFS() m2 = MemoryFS()
m3 = MemoryFS() m3 = MemoryFS()
m1.setcontents("name", "m1") m1.setcontents("name", b("m1"))
m2.setcontents("name", "m2") m2.setcontents("name", b("m2"))
m3.setcontents("name", "m3") m3.setcontents("name", b("m3"))
multi_fs = MultiFS(auto_close=False) multi_fs = MultiFS(auto_close=False)
multi_fs.addfs("m1", m1) multi_fs.addfs("m1", m1)
multi_fs.addfs("m2", m2, priority=10) multi_fs.addfs("m2", m2, priority=10)
multi_fs.addfs("m3", m3, priority=10) multi_fs.addfs("m3", m3, priority=10)
self.assert_(multi_fs.getcontents("name") == "m3") self.assert_(multi_fs.getcontents("name") == b("m3"))
m1 = MemoryFS() m1 = MemoryFS()
m2 = MemoryFS() m2 = MemoryFS()
m3 = MemoryFS() m3 = MemoryFS()
m1.setcontents("name", "m1") m1.setcontents("name", b("m1"))
m2.setcontents("name", "m2") m2.setcontents("name", b("m2"))
m3.setcontents("name", "m3") m3.setcontents("name", b("m3"))
multi_fs = MultiFS(auto_close=False) multi_fs = MultiFS(auto_close=False)
multi_fs.addfs("m1", m1, priority=11) multi_fs.addfs("m1", m1, priority=11)
multi_fs.addfs("m2", m2, priority=10) multi_fs.addfs("m2", m2, priority=10)
multi_fs.addfs("m3", m3, priority=10) multi_fs.addfs("m3", m3, priority=10)
self.assert_(multi_fs.getcontents("name") == "m1") self.assert_(multi_fs.getcontents("name") == b("m1"))
\ No newline at end of file
...@@ -4,14 +4,16 @@ from fs.tempfs import TempFS ...@@ -4,14 +4,16 @@ from fs.tempfs import TempFS
from fs.memoryfs import MemoryFS from fs.memoryfs import MemoryFS
from fs import utils from fs import utils
from six import b
class TestUtils(unittest.TestCase): class TestUtils(unittest.TestCase):
def _make_fs(self, fs): def _make_fs(self, fs):
fs.setcontents("f1", "file 1") fs.setcontents("f1", b("file 1"))
fs.setcontents("f2", "file 2") fs.setcontents("f2", b("file 2"))
fs.setcontents("f3", "file 3") fs.setcontents("f3", b("file 3"))
fs.makedir("foo/bar", recursive=True) fs.makedir("foo/bar", recursive=True)
fs.setcontents("foo/bar/fruit", "apple") fs.setcontents("foo/bar/fruit", b("apple"))
def _check_fs(self, fs): def _check_fs(self, fs):
self.assert_(fs.isfile("f1")) self.assert_(fs.isfile("f1"))
...@@ -19,10 +21,10 @@ class TestUtils(unittest.TestCase): ...@@ -19,10 +21,10 @@ class TestUtils(unittest.TestCase):
self.assert_(fs.isfile("f3")) self.assert_(fs.isfile("f3"))
self.assert_(fs.isdir("foo/bar")) self.assert_(fs.isdir("foo/bar"))
self.assert_(fs.isfile("foo/bar/fruit")) self.assert_(fs.isfile("foo/bar/fruit"))
self.assertEqual(fs.getcontents("f1", "rb"), "file 1") self.assertEqual(fs.getcontents("f1", "rb"), b("file 1"))
self.assertEqual(fs.getcontents("f2", "rb"), "file 2") self.assertEqual(fs.getcontents("f2", "rb"), b("file 2"))
self.assertEqual(fs.getcontents("f3", "rb"), "file 3") self.assertEqual(fs.getcontents("f3", "rb"), b("file 3"))
self.assertEqual(fs.getcontents("foo/bar/fruit", "rb"), "apple") self.assertEqual(fs.getcontents("foo/bar/fruit", "rb"), b("apple"))
def test_copydir_root(self): def test_copydir_root(self):
"""Test copydir from root""" """Test copydir from root"""
...@@ -91,12 +93,12 @@ class TestUtils(unittest.TestCase): ...@@ -91,12 +93,12 @@ class TestUtils(unittest.TestCase):
def test_remove_all(self): def test_remove_all(self):
"""Test remove_all function""" """Test remove_all function"""
fs = TempFS() fs = TempFS()
fs.setcontents("f1", "file 1") fs.setcontents("f1", b("file 1"))
fs.setcontents("f2", "file 2") fs.setcontents("f2", b("file 2"))
fs.setcontents("f3", "file 3") fs.setcontents("f3", b("file 3"))
fs.makedir("foo/bar", recursive=True) fs.makedir("foo/bar", recursive=True)
fs.setcontents("foo/bar/fruit", "apple") fs.setcontents("foo/bar/fruit", b("apple"))
fs.setcontents("foo/baz", "baz") fs.setcontents("foo/baz", b("baz"))
utils.remove_all(fs, "foo/bar") utils.remove_all(fs, "foo/bar")
self.assert_(not fs.exists("foo/bar/fruit")) self.assert_(not fs.exists("foo/bar/fruit"))
...@@ -110,4 +112,4 @@ class TestUtils(unittest.TestCase): ...@@ -110,4 +112,4 @@ class TestUtils(unittest.TestCase):
self.assert_(not fs.exists("f1")) self.assert_(not fs.exists("f1"))
self.assert_(fs.isdirempty('/')) self.assert_(fs.isdirempty('/'))
\ No newline at end of file
...@@ -9,8 +9,10 @@ import unittest ...@@ -9,8 +9,10 @@ import unittest
from fs.zipfs import ZipFS from fs.zipfs import ZipFS
import os import os
from six import b
class ZipFsBinaryWriteRead(unittest.TestCase): class ZipFsBinaryWriteRead(unittest.TestCase):
test_content = chr(32) + chr(10) test_content = b(chr(32) + chr(10))
def setUp(self): def setUp(self):
self.z = ZipFS('test.zip', 'w') self.z = ZipFS('test.zip', 'w')
......
...@@ -582,10 +582,11 @@ def print_fs(fs, ...@@ -582,10 +582,11 @@ def print_fs(fs,
if __name__ == "__main__": if __name__ == "__main__":
from fs.tempfs import TempFS from fs.tempfs import TempFS
from six import b
t1 = TempFS() t1 = TempFS()
t1.setcontents("foo", "test") t1.setcontents("foo", b("test"))
t1.makedir("bar") t1.makedir("bar")
t1.setcontents("bar/baz", "another test") t1.setcontents("bar/baz", b("another test"))
t1.tree() t1.tree()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment