def review_list_handler(): """Get list of users. **Request Example:** .. code-block:: bash $ curl "https://critiquebrainz.org/ws/1/user/?offset=10&limit=3" \\ -X GET **Response Example:** .. code-block:: json { "count": 925, "limit": 3, "offset": 10, "users": [ { "created": "Wed, 07 May 2014 14:46:58 GMT", "display_name": "Display Name", "id": "b291a99b-7bb0-4531-ba45-f6cfb4d944de", "karma": 0, "user_type": "Noob" }, { "created": "Wed, 07 May 2014 14:46:59 GMT", "display_name": "Name comes here", "id": "a52e1629-a516-43c2-855f-bb195aeb2a33", "karma": 3, "user_type": "Noob" }, { "created": "Wed, 07 May 2014 14:47:00 GMT", "display_name": "Display Name", "id": "1fb36917-d4d3-411b-82c4-901d949e17b8", "karma": 0, "user_type": "Noob" } ] } :query limit: results limit, min is 0, max is 50, default is 50 **(optional)** :query offset: result offset, default is 0 **(optional)** :resheader Content-Type: *application/json* """ def fetch_params(): limit = Parser.int('uri', 'limit', min=1, max=50, optional=True) or 50 offset = Parser.int('uri', 'offset', optional=True) or 0 return limit, offset limit, offset = fetch_params() users, count = User.list(limit, offset) return jsonify(limit=limit, offset=offset, count=count, users=[p.to_dict() for p in users])
def test_user_creation_and_removal(self): user_1 = User(display_name=u'Tester #1', email=u'*****@*****.**') user_2 = User(display_name=u'Tester #2') db.session.add(user_1) db.session.add(user_2) db.session.commit() users, count = User.list() self.assertEqual(count, 2) db.session.delete(user_1) db.session.commit() users, count = User.list() self.assertEqual(count, 1) stored_user = users[0] self.assertEqual(stored_user.id, user_2.id) self.assertEqual(stored_user.display_name, user_2.display_name) self.assertIsNone(stored_user.email)
def test_user_list(self): users, count = User.list() self.assertEqual(len(users), 0) self.assertEqual(count, 0) users, count = User.list(0, 0) self.assertEqual(len(users), 0) self.assertEqual(count, 0) users, count = User.list(0, 10) self.assertEqual(len(users), 0) self.assertEqual(count, 0) user_1 = User(display_name=u'Tester #1') user_2 = User(display_name=u'Tester #2') db.session.add(user_1) db.session.add(user_2) db.session.commit() users, count = User.list() self.assertEqual(len(users), 2) self.assertEqual(count, 2) users, count = User.list(0, 0) self.assertEqual(len(users), 0) self.assertEqual(count, 2) users, count = User.list(1, 1) self.assertEqual(len(users), 1) self.assertEqual(count, 2)
def review_list_handler(): """Get list of users. :query limit: results limit, min is 0, max is 50, default is 50 **(optional)** :query offset: result offset, default is 0 **(optional)** :resheader Content-Type: *application/json* """ def fetch_params(): limit = Parser.int('uri', 'limit', min=1, max=50, optional=True) or 50 offset = Parser.int('uri', 'offset', optional=True) or 0 return limit, offset limit, offset = fetch_params() users, count = User.list(limit, offset) return jsonify(limit=limit, offset=offset, count=count, users=[p.to_dict() for p in users])