From 1846855bdd2d8cd3abe017aecb987baef46007aa Mon Sep 17 00:00:00 2001 From: Shawn Milochik Date: Thu, 27 Aug 2015 11:04:59 -0400 Subject: [PATCH] Added stub for "get_all_users" user service. This is for SGA issue 115: [issue 115](https://github.com/mitodl/edx-sga/issues/115) --- xblock/reference/user_service.py | 10 ++++++++++ xblock/test/test_user_service.py | 14 ++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/xblock/reference/user_service.py b/xblock/reference/user_service.py index 42cb15bb0..96537882c 100644 --- a/xblock/reference/user_service.py +++ b/xblock/reference/user_service.py @@ -20,6 +20,16 @@ def get_current_user(self): """ raise NotImplementedError() + def get_all_users(self, **kwargs): + """ + This is default, example implementation. Anything real needs to override + + This is expected to return a list instance of XBlockUser instances. + + **kwargs is intended to be used for filtering options, such as by course. + """ + raise NotImplementedError() + class XBlockUser(object): """ diff --git a/xblock/test/test_user_service.py b/xblock/test/test_user_service.py index e5ee415af..a791bc490 100644 --- a/xblock/test/test_user_service.py +++ b/xblock/test/test_user_service.py @@ -17,6 +17,9 @@ def __init__(self, user): def get_current_user(self): return self.user + def get_all_users(self): + return [self.user] + def test_dummy_user_service_current_user(): """ @@ -34,6 +37,17 @@ def test_dummy_user_service_current_user(): assert_is_instance(current_user.opt_attrs, collections.Mapping) +def test_dummy_user_service_all_users(): + """ + Tests that get_all_users() works on a dummy user service. + """ + user = XBlockUser(full_name="tester") + user_service = SingleUserService(user) + all_users = user_service.get_all_users() + assert_is_instance(all_users, list) + assert_equals(user, all_users[0]) + + def test_dummy_user_service_exception(): """ Tests NotImplemented error raised by UserService when not instantiated with kwarg get_current_user