[Pkg-bazaar-commits] ./bzr-builddeb/trunk r208: Handle the dot entry existing as well as a prefix.

James Westby jw+debian at jameswestby.net
Thu May 15 13:29:37 UTC 2008


------------------------------------------------------------
revno: 208
committer: James Westby <jw+debian at jameswestby.net>
branch nick: trunk
timestamp: Fri 2008-01-25 17:27:48 +0000
message:
  Handle the dot entry existing as well as a prefix.
modified:
  import_dsc.py
  tests/test_import_dsc.py
-------------- next part --------------
=== modified file 'import_dsc.py'
--- a/import_dsc.py	2008-01-25 17:27:29 +0000
+++ b/import_dsc.py	2008-01-25 17:27:48 +0000
@@ -109,6 +109,8 @@
     """Determine a single directory prefix from a list of names"""
     prefixes = set()
     prefixes.update(map(top_directory, names))
+    if '' in prefixes:
+      prefixes.remove('')
     if len(prefixes) != 1:
       return None
     prefix = prefixes.pop()

=== modified file 'tests/test_import_dsc.py'
--- a/tests/test_import_dsc.py	2008-01-25 17:27:29 +0000
+++ b/tests/test_import_dsc.py	2008-01-25 17:27:48 +0000
@@ -1087,6 +1087,25 @@
     self.failIfExists(os.path.join(self.target, 'ADME'))
     self.failUnlessExists(os.path.join(self.target, 'README'))
 
+  def test_import_dot_and_prefix(self):
+    dir = 'dir'
+    os.mkdir(dir)
+    write_to_file(os.path.join(dir, 'README'), 'hello\n')
+    write_to_file(os.path.join(dir, 'NEWS'), 'bye bye\n')
+    tar = tarfile.open(self.native_1, 'w:gz')
+    try:
+      tar.addfile(_TarInfo('./'))
+      tar.addfile(_TarInfo(dir))
+      tar.addfile(_TarInfo(os.path.join(dir, 'README')))
+      tar.addfile(_TarInfo(os.path.join(dir, 'NEWS')))
+    finally:
+      tar.close()
+      shutil.rmtree(dir)
+    self.make_dsc(self.native_dsc_1, '0.1', self.native_1)
+    DscImporter([self.native_dsc_1]).import_dsc(self.target)
+    self.failUnlessExists(self.target)
+    self.failIfExists(os.path.join(self.target, dir))
+
   def test_import_with_rcs(self):
     write_to_file('README', 'hello\n')
     write_to_file('README,v', 'bye bye\n')



More information about the Pkg-bazaar-commits mailing list