|
@@ -0,0 +1,36 @@
|
|
|
+from django.contrib.auth import get_user_model
|
|
|
+
|
|
|
+from misago.acl.testutils import override_acl
|
|
|
+from misago.users.testutils import AuthenticatedUserTestCase
|
|
|
+from misago.users.online.utils import get_user_status
|
|
|
+
|
|
|
+
|
|
|
+UserModel = get_user_model()
|
|
|
+
|
|
|
+
|
|
|
+class GetUserStatusTests(AuthenticatedUserTestCase):
|
|
|
+ def setUp(self):
|
|
|
+ super(GetUserStatusTests, self).setUp()
|
|
|
+ self.other_user = UserModel.objects.create_user('Tyrael', 't123@test.com', 'pass123')
|
|
|
+
|
|
|
+ def test_user_hiding_presence(self):
|
|
|
+ """get_user_status has no showstopper for hidden user"""
|
|
|
+ self.other_user.is_hiding_presence = True
|
|
|
+ self.other_user.save()
|
|
|
+
|
|
|
+ get_user_status(self.user, self.other_user)
|
|
|
+
|
|
|
+ def test_user_visible_hidden_presence(self):
|
|
|
+ """get_user_status has no showstopper forvisible hidden user"""
|
|
|
+ self.other_user.is_hiding_presence = True
|
|
|
+ self.other_user.save()
|
|
|
+
|
|
|
+ override_acl(self.user, {
|
|
|
+ 'can_see_hidden_users': True
|
|
|
+ })
|
|
|
+
|
|
|
+ get_user_status(self.user, self.other_user)
|
|
|
+
|
|
|
+ def test_user_not_hiding_presence(self):
|
|
|
+ """get_user_status has no showstoppers for non-hidden user"""
|
|
|
+ get_user_status(self.user, self.other_user)
|