Rev 5633: (jameinel) Fix case-sensitive test failures on Windows. (John A Meinel) in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Tue Jan 25 17:45:10 UTC 2011


At file:///home/pqm/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 5633 [merge]
revision-id: pqm at pqm.ubuntu.com-20110125174508-jmx7uxbgbc7kuwbg
parent: pqm at pqm.ubuntu.com-20110125135932-0o8d07i3j1flp6ou
parent: john at arbash-meinel.com-20110125164824-9n8zg1y5sg5vu6i0
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Tue 2011-01-25 17:45:08 +0000
message:
  (jameinel) Fix case-sensitive test failures on Windows. (John A Meinel)
modified:
  bzrlib/tests/per_workingtree/test_workingtree.py test_workingtree.py-20060203003124-817757d3e31444fb
  bzrlib/workingtree.py          workingtree.py-20050511021032-29b6ec0a681e02e3
=== modified file 'bzrlib/tests/per_workingtree/test_workingtree.py'
--- a/bzrlib/tests/per_workingtree/test_workingtree.py	2011-01-19 20:05:11 +0000
+++ b/bzrlib/tests/per_workingtree/test_workingtree.py	2011-01-25 16:48:24 +0000
@@ -924,6 +924,16 @@
             case_sensitive = True
         tree = self.make_branch_and_tree('test')
         self.assertEqual(case_sensitive, tree.case_sensitive)
+        # now we cheat, and make a file that matches the case-sensitive name
+        t = tree.bzrdir.get_workingtree_transport(None)
+        try:
+            content = tree._format.get_format_string()
+        except NotImplementedError:
+            # All-in-one formats didn't have a separate format string.
+            content = tree.bzrdir._format.get_format_string()
+        t.put_bytes(tree._format.case_sensitive_filename, content)
+        tree = tree.bzrdir.open_workingtree()
+        self.assertFalse(tree.case_sensitive)
 
     def test_all_file_ids_with_missing(self):
         tree = self.make_branch_and_tree('tree')

=== modified file 'bzrlib/workingtree.py'
--- a/bzrlib/workingtree.py	2011-01-19 20:04:23 +0000
+++ b/bzrlib/workingtree.py	2011-01-25 16:48:24 +0000
@@ -256,7 +256,7 @@
     def _detect_case_handling(self):
         wt_trans = self.bzrdir.get_workingtree_transport(None)
         try:
-            wt_trans.stat("FoRMaT")
+            wt_trans.stat(self._format.case_sensitive_filename)
         except errors.NoSuchFile:
             self.case_sensitive = True
         else:
@@ -2860,6 +2860,8 @@
 
     requires_normalized_unicode_filenames = False
 
+    case_sensitive_filename = "FoRMaT"
+
     @classmethod
     def find_format(klass, a_bzrdir):
         """Return the format for the working tree object in a_bzrdir."""
@@ -2932,6 +2934,8 @@
 
     requires_normalized_unicode_filenames = True
 
+    case_sensitive_filename = "Branch-FoRMaT"
+
     def get_format_description(self):
         """See WorkingTreeFormat.get_format_description()."""
         return "Working tree format 2"




More information about the bazaar-commits mailing list