Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(186)

Side by Side Diff: third_party/gsutil/gslib/test_util.py

Issue 10199002: Upgrade gsutil to 3.4 (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Addressed comments Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # 2 #
3 # Copyright 2010 Google Inc. 3 # Copyright 2010 Google Inc.
4 # 4 #
5 # Permission is hereby granted, free of charge, to any person obtaining a 5 # Permission is hereby granted, free of charge, to any person obtaining a
6 # copy of this software and associated documentation files (the 6 # copy of this software and associated documentation files (the
7 # "Software"), to deal in the Software without restriction, including 7 # "Software"), to deal in the Software without restriction, including
8 # without limitation the rights to use, copy, modify, merge, publish, dis- 8 # without limitation the rights to use, copy, modify, merge, publish, dis-
9 # tribute, sublicense, and/or sell copies of the Software, and to permit 9 # tribute, sublicense, and/or sell copies of the Software, and to permit
10 # persons to whom the Software is furnished to do so, subject to the fol- 10 # persons to whom the Software is furnished to do so, subject to the fol-
11 # lowing conditions: 11 # lowing conditions:
12 # 12 #
13 # The above copyright notice and this permission notice shall be included 13 # The above copyright notice and this permission notice shall be included
14 # in all copies or substantial portions of the Software. 14 # in all copies or substantial portions of the Software.
15 # 15 #
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17 # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- 17 # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL-
18 # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 18 # ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
19 # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 19 # SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
20 # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 21 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
22 # IN THE SOFTWARE. 22 # IN THE SOFTWARE.
23 23
24 """Utility class for gslib unit tests""" 24 """Utility class for gslib unit tests"""
25 25
26 import sys 26 import sys
27 import wildcard_iterator
27 # Put local libs at front of path so tests will run latest lib code rather 28 # Put local libs at front of path so tests will run latest lib code rather
28 # than whatever code is found on user's PYTHONPATH. 29 # than whatever code is found on user's PYTHONPATH.
29 sys.path.insert(0, '.') 30 sys.path.insert(0, '.')
30 sys.path.insert(0, 'boto') 31 sys.path.insert(0, 'boto')
31 import boto 32 import boto
32 from gslib.project_id import ProjectIdHandler 33 from gslib.project_id import ProjectIdHandler
33 from tests.s3 import mock_storage_service 34 from tests.s3 import mock_storage_service
34 import wildcard_iterator
35 35
36 proj_id_handler = ProjectIdHandler() 36 proj_id_handler = ProjectIdHandler()
37 37
38 38
39 def test_wildcard_iterator(uri_or_str, 39 def test_wildcard_iterator(uri_or_str, debug=0):
40 result_type=wildcard_iterator.ResultType.URIS,
41 debug=0):
42 """ 40 """
43 Convenience method for instantiating a testing 41 Convenience method for instantiating a testing instance of
44 instance of WildCardIterator, without having to specify 42 WildCardIterator, without having to specify all the params of that class
45 all the params of that class (like 43 (like bucket_storage_uri_class=mock_storage_service.MockBucketStorageUri).
46 bucket_storage_uri_class=mock_storage_service.MockBucketStorageUri). 44 Also naming the factory method this way makes it clearer in the test code
47 Also naming the factory method this way makes it clearer in the test 45 that WildcardIterator needs to be set up for testing.
48 code that WildcardIterator needs to be set up for testing.
49 46
50 Args, Returns, and Raises are same as for 47 Args are same as for wildcard_iterator.wildcard_iterator(), except there's
51 wildcard_iterator.wildcard_iterator(), except there's no 48 no bucket_storage_uri_class arg.
52 bucket_storage_uri_class arg. 49
50 Returns:
51 WildcardIterator.IterUris(), over which caller can iterate.
53 """ 52 """
54 return wildcard_iterator.wildcard_iterator( 53 return wildcard_iterator.wildcard_iterator(
55 uri_or_str, proj_id_handler, result_type, 54 uri_or_str, proj_id_handler,
56 mock_storage_service.MockBucketStorageUri, headers={}, debug=debug) 55 mock_storage_service.MockBucketStorageUri, debug=debug)
57 56
58 57
59 def test_storage_uri(uri_str, default_scheme='file', debug=0, validate=True): 58 def test_storage_uri(uri_str, default_scheme='file', debug=0, validate=True):
60 """ 59 """
61 Convenience method for instantiating a testing 60 Convenience method for instantiating a testing
62 instance of StorageUri, without having to specify 61 instance of StorageUri, without having to specify
63 bucket_storage_uri_class=mock_storage_service.MockBucketStorageUri. 62 bucket_storage_uri_class=mock_storage_service.MockBucketStorageUri.
64 Also naming the factory method this way makes it clearer in the test 63 Also naming the factory method this way makes it clearer in the test
65 code that StorageUri needs to be set up for testing. 64 code that StorageUri needs to be set up for testing.
66 65
67 Args, Returns, and Raises are same as for 66 Args, Returns, and Raises are same as for boto.storage_uri(), except there's
68 boto.storage_uri(), except there's no bucket_storage_uri_class arg. 67 no bucket_storage_uri_class arg.
69 """ 68 """
70
71 return boto.storage_uri(uri_str, default_scheme, debug, validate, 69 return boto.storage_uri(uri_str, default_scheme, debug, validate,
72 mock_storage_service.MockBucketStorageUri) 70 mock_storage_service.MockBucketStorageUri)
OLDNEW
« no previous file with comments | « third_party/gsutil/gslib/test_thread_pool.py ('k') | third_party/gsutil/gslib/test_wildcard_iterator.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698