[Zodb-checkins] SVN: ZODB/trunk/src/ZODB/ fixed some windows test failures
Jim Fulton
jim at zope.com
Mon Oct 27 18:34:05 EDT 2008
Log message for revision 92639:
fixed some windows test failures
Changed:
U ZODB/trunk/src/ZODB/blob.py
U ZODB/trunk/src/ZODB/scripts/migrateblobs.py
U ZODB/trunk/src/ZODB/tests/blob_layout.txt
U ZODB/trunk/src/ZODB/tests/testblob.py
-=-
Modified: ZODB/trunk/src/ZODB/blob.py
===================================================================
--- ZODB/trunk/src/ZODB/blob.py 2008-10-27 22:16:14 UTC (rev 92638)
+++ ZODB/trunk/src/ZODB/blob.py 2008-10-27 22:34:04 UTC (rev 92639)
@@ -329,9 +329,8 @@
os.path.join(self.base_dir, LAYOUT_MARKER), 'wb')
layout_marker.write(self.layout_name)
else:
- layout_marker = open(
- os.path.join(self.base_dir, LAYOUT_MARKER), 'rb')
- layout = layout_marker.read().strip()
+ layout = open(os.path.join(self.base_dir, LAYOUT_MARKER), 'rb'
+ ).read().strip()
if layout != self.layout_name:
raise ValueError(
"Directory layout `%s` selected for blob directory %s, but "
Modified: ZODB/trunk/src/ZODB/scripts/migrateblobs.py
===================================================================
--- ZODB/trunk/src/ZODB/scripts/migrateblobs.py 2008-10-27 22:16:14 UTC (rev 92638)
+++ ZODB/trunk/src/ZODB/scripts/migrateblobs.py 2008-10-27 22:34:04 UTC (rev 92639)
@@ -17,6 +17,7 @@
import logging
import optparse
import os
+import shutil
from ZODB.blob import FilesystemHelper, rename_or_copy_blob
from ZODB.utils import cp, oid_repr
@@ -28,6 +29,12 @@
except OSError:
shutil.copy(f1, f2)
+# Check if we actually have link
+try:
+ os.link
+except AttributeError:
+ link_or_copy = shutil.copy
+
def migrate(source, dest, layout):
source_fsh = FilesystemHelper(source)
Modified: ZODB/trunk/src/ZODB/tests/blob_layout.txt
===================================================================
--- ZODB/trunk/src/ZODB/tests/blob_layout.txt 2008-10-27 22:16:14 UTC (rev 92638)
+++ ZODB/trunk/src/ZODB/tests/blob_layout.txt 2008-10-27 22:34:04 UTC (rev 92639)
@@ -29,9 +29,12 @@
>>> bushy.oid_to_path('\x00\x00\x00\x00\x00\x00\x00\x01')
'0x00/0x00/0x00/0x00/0x00/0x00/0x00/0x01'
->>> bushy.path_to_oid('0x01/0x00/0x00/0x00/0x00/0x00/0x00/0x00')
+>>> import os
+>>> bushy.path_to_oid(os.path.join(
+... '0x01', '0x00', '0x00', '0x00', '0x00', '0x00', '0x00', '0x00'))
'\x01\x00\x00\x00\x00\x00\x00\x00'
->>> bushy.path_to_oid('0xff/0x00/0x00/0x00/0x00/0x00/0x00/0x00')
+>>> bushy.path_to_oid(os.path.join(
+... '0xff', '0x00', '0x00', '0x00', '0x00', '0x00', '0x00', '0x00'))
'\xff\x00\x00\x00\x00\x00\x00\x00'
Paths that do not represent an OID will cause a ValueError:
@@ -142,8 +145,8 @@
'lawn'
>>> fsh.create() # doctest: +ELLIPSIS
Traceback (most recent call last):
-ValueError: Directory layout `lawn` selected for blob directory /.../blobs/, but marker found for layout `bushy`
->>> shutil.rmtree(blobs)
+ValueError: Directory layout `lawn` selected for blob directory .../blobs/, but marker found for layout `bushy`
+>>> rmtree(blobs)
This function interacts with the automatic detection in the way, that an
unmarked directory will be marked the first time when it is auto-guessed and
@@ -163,10 +166,11 @@
'lawn'
>>> blob_storage = BlobStorage(blobs, base_storage, layout='bushy') # doctest: +ELLIPSIS
Traceback (most recent call last):
-ValueError: Directory layout `bushy` selected for blob directory /.../blobs/, but marker found for layout `lawn`
+ValueError: Directory layout `bushy` selected for blob directory .../blobs/, but marker found for layout `lawn`
->>> shutil.rmtree(d)
+>>> base_storage.close()
+>>> rmtree(d)
Migrating between directory layouts
@@ -206,7 +210,7 @@
>>> bushy = os.path.join(d, 'bushy')
>>> migrate(old, bushy, 'bushy') # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
-Migrating blob data from `/.../old` (lawn) to `/.../bushy` (bushy)
+Migrating blob data from `.../old` (lawn) to `.../bushy` (bushy)
OID: 0x0a - 2 files
OID: 0x1b7a - 2 files
OID: 0x1b7f - 2 files
@@ -248,7 +252,7 @@
>>> lawn = os.path.join(d, 'lawn')
>>> migrate(bushy, lawn, 'lawn')
-Migrating blob data from `/.../bushy` (bushy) to `/.../lawn` (lawn)
+Migrating blob data from `.../bushy` (bushy) to `.../lawn` (lawn)
OID: 0x0a - 2 files
OID: 0x1b7a - 2 files
OID: 0x1b7f - 2 files
@@ -278,4 +282,4 @@
bushy/0x00/0x00/0x00/0x00/0x00/0x00/0x1b/0x7a/foo5 --> lawn/0x1b7a/foo5
bushy/0x00/0x00/0x00/0x00/0x00/0x00/0x1b/0x7a/foo6 --> lawn/0x1b7a/foo6
->>> shutil.rmtree(d)
+>>> rmtree(d)
Modified: ZODB/trunk/src/ZODB/tests/testblob.py
===================================================================
--- ZODB/trunk/src/ZODB/tests/testblob.py 2008-10-27 22:16:14 UTC (rev 92638)
+++ ZODB/trunk/src/ZODB/tests/testblob.py 2008-10-27 22:34:04 UTC (rev 92639)
@@ -656,10 +656,11 @@
suite.addTest(doctest.DocFileSuite(
"blob_layout.txt",
optionflags=doctest.ELLIPSIS|doctest.NORMALIZE_WHITESPACE,
- setUp=zope.testing.setupstack.setUpDirectory,
+ setUp=setUp,
tearDown=zope.testing.setupstack.tearDown,
checker = zope.testing.renormalizing.RENormalizing([
- (re.compile(r'[%(sep)s]' % dict(sep=os.path.sep)), '/'),
+ (re.compile(r'\%(sep)s\%(sep)s' % dict(sep=os.path.sep)), '/'),
+ (re.compile(r'\%(sep)s' % dict(sep=os.path.sep)), '/'),
(re.compile(r'\S+/((old|bushy|lawn)/\S+/foo[23456]?)'), r'\1'),
]),
))
More information about the Zodb-checkins
mailing list