Merge lp:~ricardokirkner/click-toolbelt/fix-storeapi-upload-missing-config into lp:click-toolbelt

Proposed by Ricardo Kirkner
Status: Merged
Approved by: Ricardo Kirkner
Approved revision: 54
Merged at revision: 54
Proposed branch: lp:~ricardokirkner/click-toolbelt/fix-storeapi-upload-missing-config
Merge into: lp:click-toolbelt
Diff against target: 145 lines (+20/-18)
2 files modified
click_toolbelt/tests/test_upload.py (+13/-11)
storeapi/_upload.py (+7/-7)
To merge this branch: bzr merge lp:~ricardokirkner/click-toolbelt/fix-storeapi-upload-missing-config
Reviewer Review Type Date Requested Status
Fabián Ezequiel Gallina (community) Approve
Review via email: mp+282049@code.launchpad.net

Commit message

fix storeapi upload functions invalid calls to get_oauth_session without config

To post a comment you must log in.
Revision history for this message
Fabián Ezequiel Gallina (fgallina) wrote :

LGTM

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'click_toolbelt/tests/test_upload.py'
--- click_toolbelt/tests/test_upload.py 2016-01-08 14:20:13 +0000
+++ click_toolbelt/tests/test_upload.py 2016-01-08 19:30:10 +0000
@@ -62,10 +62,11 @@
6262
63 self.command.take_action(self.args)63 self.command.take_action(self.args)
6464
65 self.mock_upload_files.assert_called_once_with(binary_filename)65 self.mock_upload_files.assert_called_once_with(
66 binary_filename, config=None)
66 self.mock_upload_app.assert_called_once_with(67 self.mock_upload_app.assert_called_once_with(
67 self.package_name, self.mock_upload_files.return_value,68 self.package_name, self.mock_upload_files.return_value,
68 metadata={})69 metadata={}, config=None)
69 self.mock_logger.info.assert_any_call(70 self.mock_logger.info.assert_any_call(
70 'Application uploaded successfully.'71 'Application uploaded successfully.'
71 )72 )
@@ -76,10 +77,11 @@
7677
77 self.command.take_action(args)78 self.command.take_action(args)
7879
79 self.mock_upload_files.assert_called_once_with(binary_filename)80 self.mock_upload_files.assert_called_once_with(
81 binary_filename, config=None)
80 self.mock_upload_app.assert_called_once_with(82 self.mock_upload_app.assert_called_once_with(
81 self.package_name, self.mock_upload_files.return_value,83 self.package_name, self.mock_upload_files.return_value,
82 metadata={})84 metadata={}, config=None)
83 self.mock_logger.info.assert_any_call(85 self.mock_logger.info.assert_any_call(
84 'Application uploaded successfully.'86 'Application uploaded successfully.'
85 )87 )
@@ -96,10 +98,10 @@
96 self.command.take_action(args)98 self.command.take_action(args)
9799
98 self.mock_upload_files.assert_called_once_with(100 self.mock_upload_files.assert_called_once_with(
99 self.binary_filename)101 self.binary_filename, config=None)
100 self.mock_upload_app.assert_called_once_with(102 self.mock_upload_app.assert_called_once_with(
101 self.package_name, self.mock_upload_files.return_value,103 self.package_name, self.mock_upload_files.return_value,
102 metadata={'changelog': 'some changes'})104 metadata={'changelog': 'some changes'}, config=None)
103 self.mock_logger.info.assert_any_call(105 self.mock_logger.info.assert_any_call(
104 'Application uploaded successfully.'106 'Application uploaded successfully.'
105 )107 )
@@ -116,10 +118,10 @@
116 self.command.take_action(args)118 self.command.take_action(args)
117119
118 self.mock_upload_files.assert_called_once_with(120 self.mock_upload_files.assert_called_once_with(
119 self.binary_filename)121 self.binary_filename, config=None)
120 self.mock_upload_app.assert_called_once_with(122 self.mock_upload_app.assert_called_once_with(
121 self.package_name, self.mock_upload_files.return_value,123 self.package_name, self.mock_upload_files.return_value,
122 metadata={'changelog': 'some changes'})124 metadata={'changelog': 'some changes'}, config=None)
123 self.mock_logger.info.assert_any_call(125 self.mock_logger.info.assert_any_call(
124 'Application uploaded successfully.'126 'Application uploaded successfully.'
125 )127 )
@@ -136,7 +138,7 @@
136 self.command.take_action(self.args)138 self.command.take_action(self.args)
137139
138 self.mock_upload_files.assert_called_once_with(140 self.mock_upload_files.assert_called_once_with(
139 binary_filename)141 binary_filename, config=None)
140 self.assertFalse(self.mock_upload_app.called)142 self.assertFalse(self.mock_upload_app.called)
141 self.mock_logger.info.assert_any_call(143 self.mock_logger.info.assert_any_call(
142 'Upload failed:\n\n%s\n', 'some error')144 'Upload failed:\n\n%s\n', 'some error')
@@ -153,10 +155,10 @@
153 self.command.take_action(self.args)155 self.command.take_action(self.args)
154156
155 self.mock_upload_files.assert_called_once_with(157 self.mock_upload_files.assert_called_once_with(
156 binary_filename)158 binary_filename, config=None)
157 self.mock_upload_app.assert_called_once_with(159 self.mock_upload_app.assert_called_once_with(
158 self.package_name, self.mock_upload_files.return_value,160 self.package_name, self.mock_upload_files.return_value,
159 metadata={})161 metadata={}, config=None)
160 self.mock_logger.info.assert_any_call(162 self.mock_logger.info.assert_any_call(
161 'Upload did not complete.')163 'Upload did not complete.')
162 self.mock_logger.info.assert_any_call(164 self.mock_logger.info.assert_any_call(
163165
=== modified file 'storeapi/_upload.py'
--- storeapi/_upload.py 2016-01-08 14:20:09 +0000
+++ storeapi/_upload.py 2016-01-08 19:30:10 +0000
@@ -23,7 +23,7 @@
23logger = logging.getLogger(__name__)23logger = logging.getLogger(__name__)
2424
2525
26def upload(binary_filename, metadata_filename='', metadata=None):26def upload(binary_filename, metadata_filename='', metadata=None, config=None):
27 """Create a new upload based on a click/snap package."""27 """Create a new upload based on a click/snap package."""
2828
29 # validate package filename29 # validate package filename
@@ -36,7 +36,7 @@
36 name = match.groupdict()['name']36 name = match.groupdict()['name']
3737
38 logger.info('Uploading files...')38 logger.info('Uploading files...')
39 data = upload_files(binary_filename)39 data = upload_files(binary_filename, config=config)
40 success = data.get('success', False)40 success = data.get('success', False)
41 errors = data.get('errors', [])41 errors = data.get('errors', [])
42 if not success:42 if not success:
@@ -46,7 +46,7 @@
46 logger.info('Uploading new version...')46 logger.info('Uploading new version...')
47 meta = read_metadata(metadata_filename)47 meta = read_metadata(metadata_filename)
48 meta.update(metadata or {})48 meta.update(metadata or {})
49 result = upload_app(name, data, metadata=meta)49 result = upload_app(name, data, metadata=meta, config=config)
50 success = result.get('success', False)50 success = result.get('success', False)
51 errors = result.get('errors', [])51 errors = result.get('errors', [])
52 app_url = result.get('application_url', '')52 app_url = result.get('application_url', '')
@@ -70,7 +70,7 @@
70 return success70 return success
7171
7272
73def upload_files(binary_filename):73def upload_files(binary_filename, config=None):
74 """Upload a binary file to the Store.74 """Upload a binary file to the Store.
7575
76 Submit a file to the click-updown service and return the76 Submit a file to the click-updown service and return the
@@ -83,7 +83,7 @@
8383
84 result = {'success': False, 'errors': []}84 result = {'success': False, 'errors': []}
8585
86 session = get_oauth_session()86 session = get_oauth_session(config)
87 if session is None:87 if session is None:
88 result['errors'] = ['No valid credentials found.']88 result['errors'] = ['No valid credentials found.']
89 return result89 return result
@@ -131,14 +131,14 @@
131 return metadata131 return metadata
132132
133133
134def upload_app(name, upload_data, metadata=None):134def upload_app(name, upload_data, metadata=None, config=None):
135 """Request a new upload to be created for a given upload_id."""135 """Request a new upload to be created for a given upload_id."""
136 upload_url = get_upload_url(name)136 upload_url = get_upload_url(name)
137137
138 result = {'success': False, 'errors': [],138 result = {'success': False, 'errors': [],
139 'application_url': '', 'revision': None}139 'application_url': '', 'revision': None}
140140
141 session = get_oauth_session()141 session = get_oauth_session(config)
142 if session is None:142 if session is None:
143 result['errors'] = ['No valid credentials found.']143 result['errors'] = ['No valid credentials found.']
144 return result144 return result

Subscribers

People subscribed via source and target branches