summaryrefslogtreecommitdiff
path: root/git/test/test_index.py
diff options
context:
space:
mode:
authorSebastian Thiel <byronimo@gmail.com>2015-07-29 18:29:03 +0200
committerSebastian Thiel <byronimo@gmail.com>2015-07-29 18:29:03 +0200
commit7ab12b403207bb46199f46d5aaa72d3e82a3080d (patch)
tree807987529384fd80af59443772e2fae349243ff7 /git/test/test_index.py
parent8324c4b38cf37af416833d36696577d8d35dce7f (diff)
downloadgitpython-7ab12b403207bb46199f46d5aaa72d3e82a3080d.tar.gz
fix(index):allow adding non-unicode paths to index
This issue only surfaced in python 2, in case paths containing unicode characters were not actual unicode objects. In python 3, this was never the issue. Closes #331
Diffstat (limited to 'git/test/test_index.py')
-rw-r--r--git/test/test_index.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/git/test/test_index.py b/git/test/test_index.py
index 2fd53f65..39788575 100644
--- a/git/test/test_index.py
+++ b/git/test/test_index.py
@@ -18,6 +18,7 @@ from git.exc import (
)
from git import (
IndexFile,
+ Repo,
BlobFilter,
UnmergedEntriesError,
Tree,
@@ -45,6 +46,7 @@ from git.index.typ import (
IndexEntry
)
from git.index.fun import hook_path
+from gitdb.test.lib import with_rw_directory
class TestIndex(TestBase):
@@ -780,3 +782,14 @@ class TestIndex(TestBase):
except InvalidGitRepositoryError:
asserted = True
assert asserted, "Adding using a filename is not correctly asserted."
+
+ @with_rw_directory
+ def test_add_utf8P_path(self, rw_dir):
+ # NOTE: fp is not a Unicode object in python 2 (which is the source of the problem)
+ fp = os.path.join(rw_dir, 'ø.txt')
+ with open(fp, 'w') as fs:
+ fs.write('content of ø')
+
+ r = Repo.init(rw_dir)
+ r.index.add([fp])
+ r.index.commit('Added orig and prestable')