diff options
author | Jenkins <jenkins@review.openstack.org> | 2016-02-10 19:56:27 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2016-02-10 19:56:27 +0000 |
commit | 8918c292d7def6d4218f2abfc9e68133c2e6f88e (patch) | |
tree | 2e0cdd5ed5265b168d96663dd897a7053b36b0c9 | |
parent | 50f3396620515ffd8210b2e30d1e1e550e0711d1 (diff) | |
parent | 9a97b51c0c2f71f9e35a25bdafb42fb541af74c1 (diff) | |
download | python-swiftclient-8918c292d7def6d4218f2abfc9e68133c2e6f88e.tar.gz |
Merge "more tests for pseudo/dir"
-rw-r--r-- | tests/unit/test_service.py | 31 |
1 files changed, 24 insertions, 7 deletions
diff --git a/tests/unit/test_service.py b/tests/unit/test_service.py index 2a7fb31..3fbe987 100644 --- a/tests/unit/test_service.py +++ b/tests/unit/test_service.py @@ -1341,13 +1341,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): |