def setUp(self): User = get_user_model() self.user_ct = ContentType.objects.get_for_model(User) self.group_ct = ContentType.objects.get_for_model(Group) self.group, _ = Group.objects.get_or_create(name='CoolGroup') self.user1, _ = User.objects.get_or_create(username='******') self.user2, _ = User.objects.get_or_create(username='******') self.user3, _ = User.objects.get_or_create(username='******') self.user4, _ = User.objects.get_or_create(username='******') Action.objects.get_or_create(actor_content_type=self.user_ct, actor_object_id=self.user1.id, verb='followed', target_content_type=self.user_ct, target_object_id=self.user2.id) Action.objects.get_or_create(actor_content_type=self.user_ct, actor_object_id=self.user1.id, verb='followed', target_content_type=self.user_ct, target_object_id=self.user3.id) Action.objects.get_or_create(actor_content_type=self.user_ct, actor_object_id=self.user1.id, verb='followed', target_content_type=self.user_ct, target_object_id=self.user4.id) Action.objects.get_or_create(actor_content_type=self.user_ct, actor_object_id=self.user1.id, verb='joined', target_content_type=self.group_ct, target_object_id=self.group.id)
def setUp(self): self.User = get_user_model() super(ZombieTest, self).setUp() settings.DEBUG = True player_generator = lambda n, count: [self.User.objects.create( username='******' % (n, i)) for i in range(count)] self.humans = player_generator('human', self.human) self.zombies = player_generator('zombie', self.zombie) self.zombie_apocalypse()
def setUp(self): self.User = get_user_model() super(ZombieTest, self).setUp() settings.DEBUG = True player_generator = lambda n, count: [ self.User.objects.create(username='******' % (n, i)) for i in range(count) ] self.humans = player_generator('human', self.human) self.zombies = player_generator('zombie', self.zombie) self.zombie_apocalypse()
def test_doesnt_generate_duplicate_follow_records(self): User = get_user_model() g = Group.objects.get_or_create(name='DupGroup')[0] s = User.objects.get_or_create(username='******')[0] f1 = follow(s, g) self.assertTrue(f1 is not None, "Should have received a new follow " "record") self.assertTrue(isinstance(f1, Follow), "Returns a Follow object") self.assertEqual(1, Follow.objects.filter(user=s, object_id=g.pk, content_type=ContentType.objects.get_for_model(g)).count(), "Should only have 1 follow record here") f2 = follow(s, g) self.assertEqual(1, Follow.objects.filter(user=s, object_id=g.pk, content_type=ContentType.objects.get_for_model(g)).count(), "Should still only have 1 follow record here") self.assertTrue(f2 is not None, "Should have received a Follow object") self.assertTrue(isinstance(f2, Follow), "Returns a Follow object") self.assertEqual(f1, f2, "Should have received the same Follow " "object that I first submitted")
def setUp(self): User = get_user_model() self.user_ct = ContentType.objects.get_for_model(User) self.group_ct = ContentType.objects.get_for_model(Group) self.group, _ = Group.objects.get_or_create(name='CoolGroup') self.user1, _ = User.objects.get_or_create(username='******') self.user2, _ = User.objects.get_or_create(username='******') self.user3, _ = User.objects.get_or_create(username='******') self.user4, _ = User.objects.get_or_create(username='******') Action.objects.get_or_create( actor_content_type=self.user_ct, actor_object_id=self.user1.id, verb='followed', target_content_type=self.user_ct, target_object_id=self.user2.id ) Action.objects.get_or_create( actor_content_type=self.user_ct, actor_object_id=self.user1.id, verb='followed', target_content_type=self.user_ct, target_object_id=self.user3.id ) Action.objects.get_or_create( actor_content_type=self.user_ct, actor_object_id=self.user1.id, verb='followed', target_content_type=self.user_ct, target_object_id=self.user4.id ) Action.objects.get_or_create( actor_content_type=self.user_ct, actor_object_id=self.user1.id, verb='joined', target_content_type=self.group_ct, target_object_id=self.group.id )
def setUp(self): User = get_user_model() super(ActivityTestCase, self).setUp() self.group = Group.objects.create(name='CoolGroup') self.user1 = User.objects.get_or_create(username='******')[0] self.user1.set_password('admin') self.user1.is_superuser = self.user1.is_staff = True self.user1.save() self.user2 = User.objects.get_or_create(username='******')[0] self.user3 = User.objects.get_or_create(username='******')[0] # User1 joins group self.user1.groups.add(self.group) self.join_action = action.send(self.user1, verb='joined', target=self.group)[0][1] # User1 follows User2 follow(self.user1, self.user2) # User2 joins group self.user2.groups.add(self.group) action.send(self.user2, verb='joined', target=self.group) # User2 follows group follow(self.user2, self.group) # User1 comments on group # Use a site object here and predict the "__unicode__ method output" action.send(self.user1, verb='commented on', target=self.group) self.comment = Site.objects.create( domain="admin: Sweet Group!...") # Group responds to comment action.send(self.group, verb='responded to', target=self.comment) # User 3 did something but doesn't following someone action.send(self.user3, verb='liked actstream')
def setUp(self): self.User = get_user_model() self.user_ct = ContentType.objects.get_for_model(self.User) register(self.User) for model in self.actstream_models: register(model)
from django.contrib.auth.models import Group from django.contrib.contenttypes.models import ContentType from django.contrib.sites.models import Site from django.template.loader import Template, Context from django.utils.translation import ugettext_lazy as _ from django.utils.translation import activate, get_language from actstream.models import Action, Follow, model_stream, user_stream,\ setup_generic_relations, following, followers from actstream.actions import follow, unfollow from actstream.exceptions import ModelNotActionable from actstream.signals import action from actstream.settings import get_models, SETTINGS from actstream.compat import get_user_model User = get_user_model() class LTE(int): def __new__(cls, n): obj = super(LTE, cls).__new__(cls, n) obj.n = n return obj def __eq__(self, other): return other <= self.n def __repr__(self): return "<= %s" % self.n
from django.shortcuts import render_to_response, get_object_or_404 from django.template import RequestContext from django.http import HttpResponseRedirect, HttpResponse from django.contrib.auth.decorators import login_required from django.contrib.contenttypes.models import ContentType from django.views.decorators.csrf import csrf_exempt from actstream import actions, models, compat User = compat.get_user_model() def respond(request, code): """ Responds to the request with the given response code. If ``next`` is in the form, it will redirect instead. """ redirect = request.GET.get('next', request.POST.get('next')) if redirect: return HttpResponseRedirect(redirect) return type('Response%d' % code, (HttpResponse, ), {'status_code': code})() @login_required @csrf_exempt def follow_unfollow(request, content_type_id, object_id, do_follow=True, actor_only=True): """ Creates or deletes the follow relationship between ``request.user`` and the actor defined by ``content_type_id``, ``object_id``. """
#copyright @ Eko India Financial Service Pvt. Ltd. from django.shortcuts import render_to_response, get_object_or_404 from django.template import RequestContext from django.http import HttpResponseRedirect, HttpResponse from django.contrib.auth.decorators import login_required from django.contrib.contenttypes.models import ContentType from django.views.decorators.csrf import csrf_exempt from actstream import actions, models, compat User = compat.get_user_model() def respond(request, code): """ Responds to the request with the given response code. If ``next`` is in the form, it will redirect instead. """ if 'next' in request.REQUEST: return HttpResponseRedirect(request.REQUEST['next']) return type('Response%d' % code, (HttpResponse, ), {'status_code': code})() @login_required @csrf_exempt def follow_unfollow(request, content_type_id, object_id, do_follow=True, actor_only=True): """ Creates or deletes the follow relationship between ``request.user`` and the actor defined by ``content_type_id``, ``object_id``. """
def test_query_count_sliced(self): User = get_user_model() queryset = model_stream(User)[:5] result = self.check_query_count(queryset) self.assertEqual(len(result), 5)
def test_following(self): User = get_user_model() self.assertEqual(list(following(self.user1)), [self.user2]) self.assertEqual(len(following(self.user2, User)), 0)