summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClay Gerrard <clay.gerrard@gmail.com>2016-02-09 13:15:22 -0800
committerClay Gerrard <clay.gerrard@gmail.com>2016-02-09 13:15:22 -0800
commit9a97b51c0c2f71f9e35a25bdafb42fb541af74c1 (patch)
tree661b6546eb22b9da72d3b205a9fb639d0c4f51d8
parent5ed02345d36acf87fc4678e587db713004696124 (diff)
downloadpython-swiftclient-9a97b51c0c2f71f9e35a25bdafb42fb541af74c1.tar.gz
more tests for pseudo/dir
Change-Id: Idab172aefd8e69ca8e4d623918eba1bc1da91a42
-rw-r--r--tests/unit/test_service.py31
1 files changed, 24 insertions, 7 deletions
diff --git a/tests/unit/test_service.py b/tests/unit/test_service.py
index c2a7143..3f6da2b 100644
--- a/tests/unit/test_service.py
+++ b/tests/unit/test_service.py
@@ -1272,13 +1272,30 @@ class TestServiceUpload(_TestServiceBase):
mock_conn.get_container.assert_has_calls(expected)
def test_make_upload_objects(self):
- # String list
- filenames = ['/absolute/file/path', 'relative/file/path']
- self.assertEqual(
- [o.object_name for o in SwiftService._make_upload_objects(
- filenames, 'pseudo/folder/path')],
- ['pseudo/folder/path/absolute/file/path',
- 'pseudo/folder/path/relative/file/path'])
+ check_names_pseudo_to_expected = {
+ (('/absolute/file/path',), ''): ['absolute/file/path'],
+ (('relative/file/path',), ''): ['relative/file/path'],
+ (('/absolute/file/path',), '/absolute/pseudo/dir'): [
+ 'absolute/pseudo/dir/absolute/file/path'],
+ (('/absolute/file/path',), 'relative/pseudo/dir'): [
+ 'relative/pseudo/dir/absolute/file/path'],
+ (('relative/file/path',), '/absolute/pseudo/dir'): [
+ 'absolute/pseudo/dir/relative/file/path'],
+ (('relative/file/path',), 'relative/pseudo/dir'): [
+ 'relative/pseudo/dir/relative/file/path'],
+ }
+ errors = []
+ for (filenames, pseudo_folder), expected in \
+ check_names_pseudo_to_expected.items():
+ actual = SwiftService._make_upload_objects(
+ filenames, pseudo_folder=pseudo_folder)
+ try:
+ self.assertEqual(expected, [o.object_name for o in actual])
+ except AssertionError as e:
+ msg = 'given (%r, %r) expected %r, got %s' % (
+ filenames, pseudo_folder, expected, e)
+ errors.append(msg)
+ self.assertFalse(errors, "\nERRORS:\n%s" % '\n'.join(errors))
class TestServiceDownload(_TestServiceBase):