summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2011-01-23 16:24:50 +0000
committerLars Wirzenius <liw@liw.fi>2011-01-23 16:24:50 +0000
commitc4371b9cc34a40155d46e7bef348b0a2c5a1b3b3 (patch)
tree7e94511741569b11873b21de4fbb921098474486
parentf26fbfcffe542c3919b0132190a2b86372592836 (diff)
downloadgenbackupdata-c4371b9cc34a40155d46e7bef348b0a2c5a1b3b3.tar.gz
Fix path tuples when there are more than max subdirs at root.
-rw-r--r--genbackupdatalib/names.py3
-rw-r--r--genbackupdatalib/names_tests.py2
2 files changed, 4 insertions, 1 deletions
diff --git a/genbackupdatalib/names.py b/genbackupdatalib/names.py
index f6ba4e1..287112d 100644
--- a/genbackupdatalib/names.py
+++ b/genbackupdatalib/names.py
@@ -56,9 +56,10 @@ class NameGenerator(object):
return (n,)
else:
items = []
- for i in range(self.depth + 1): # +1 for filenames
+ for i in range(self.depth):
items.append(n % self.max)
n /= self.max
+ items.append(n)
items.reverse()
return tuple(items)
diff --git a/genbackupdatalib/names_tests.py b/genbackupdatalib/names_tests.py
index 2f3483f..60b4d79 100644
--- a/genbackupdatalib/names_tests.py
+++ b/genbackupdatalib/names_tests.py
@@ -75,6 +75,8 @@ class NameGeneratorTests(unittest.TestCase):
self.assertEqual(self.names._path_tuple(5), (0, 1, 2))
self.assertEqual(self.names._path_tuple(6), (0, 2, 0))
self.assertEqual(self.names._path_tuple(9), (1, 0, 0))
+ self.assertEqual(self.names._path_tuple(18), (2, 0, 0))
+ self.assertEqual(self.names._path_tuple(27), (3, 0, 0))
def test_returns_1tuple_for_depth_zero(self):
names = genbackupdatalib.NameGenerator(self.tempdir, 0, 1)