Skip to content

Commit d4a5234

Browse files
committed
Simplify login() method, don't catch Exceptions
1 parent 2409ad0 commit d4a5234

File tree

2 files changed

+10
-16
lines changed

2 files changed

+10
-16
lines changed

couchdb/client.py

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -257,23 +257,18 @@ def login(self, name, password):
257257
"""Login regular user in couch db
258258
:param name: name of regular user, normally user id
259259
:param password: password of regular user
260-
:return: (status, token) tuple of the login user
261-
:rtype: `tuple`
260+
:return: authentication token
262261
"""
263-
data = {
262+
status, headers, _ = self.resource.post_json('_session', {
264263
'name': name,
265264
'password': password,
266-
}
267-
try:
268-
status, headers, _ = self.resource.post_json('_session', data)
269-
if sys.version_info > (3, ):
270-
cookie = headers._headers[0][1]
271-
else:
272-
cookie = headers.headers[0].split(';')[0]
273-
pos = cookie.find('=')
274-
return status, cookie[pos + 1:]
275-
except http.Unauthorized:
276-
return 401, None
265+
})
266+
if sys.version_info[0] > 2:
267+
cookie = headers._headers[0][1]
268+
else:
269+
cookie = headers.headers[0].split(';')[0]
270+
pos = cookie.find('=')
271+
return cookie[pos + 1:]
277272

278273
def logout(self, token):
279274
"""Logout regular user in couch db

couchdb/tests/client.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,8 +144,7 @@ def test_user_management(self):
144144
server = client.Server(url)
145145
try:
146146
server.add_user('foo', 'secret', roles=['hero'])
147-
status, token = server.login('foo', 'secret')
148-
self.assertEqual(status, 200)
147+
token = server.login('foo', 'secret')
149148
self.assertTrue(server.verify_token(token))
150149
self.assertTrue(server.logout(token))
151150
finally:

0 commit comments

Comments
 (0)