Ejemplo n.º 1
0
    def test_remove_friendship__his_request_exists(self):
        with self.check_new_message(self.account_2.id, [accounts_logic.get_system_user_id()]):
            with self.check_new_message(self.account_1.id, [self.account_2.id]):
                FriendshipPrototype.request_friendship(self.account_2, self.account_1, 'text 1')
                FriendshipPrototype.remove_friendship(self.account_1, self.account_2)

        self.assertEqual(Friendship.objects.all().count(), 0)
Ejemplo n.º 2
0
 def test_remove_friendship(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2,
                                            'text 1')._confirm()
     self.check_ajax_ok(
         self.client.post(
             url('accounts:friends:remove', friend=self.account_2.id)))
     self.assertEqual(Friendship.objects.all().count(), 0)
Ejemplo n.º 3
0
 def test_get_friends_for__only_candidates(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2,
                                            'text 1')
     FriendshipPrototype.request_friendship(self.account_3, self.account_1,
                                            'text 2')
     self.assertEqual(FriendshipPrototype.get_friends_for(self.account_1),
                      [])
Ejemplo n.º 4
0
 def test_remove_friendship__his_request_exists(self):
     FriendshipPrototype.request_friendship(self.account_2, self.account_1,
                                            'text 1')
     FriendshipPrototype.remove_friendship(self.account_1, self.account_2)
     self.assertEqual(Friendship.objects.all().count(), 0)
     self.assertEqual(Message.objects.all().count(), 2)
     self.assertEqual(Message.objects.all().order_by('id')[1].recipient_id,
                      self.account_2.id)
Ejemplo n.º 5
0
 def test_get_friends_for__friends_exists(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2,
                                            'text 1')._confirm()
     FriendshipPrototype.request_friendship(self.account_3, self.account_1,
                                            'text 2')._confirm()
     self.assertEqual(
         set(account.id for account in FriendshipPrototype.get_friends_for(
             self.account_1)), set([self.account_2.id, self.account_3.id]))
Ejemplo n.º 6
0
 def test_friends__candidates_only(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')
     FriendshipPrototype.request_friendship(self.account_1, self.account_3, 'text 2')
     self.check_html_ok(self.request_html(url('accounts:friends:')), texts=[('pgf-no-friends-message', 1),
                                                                          (self.account_2.nick, 0),
                                                                          (self.account_3.nick, 0),
                                                                          (self.clan_2.abbr, 0),
                                                                          (self.clan_3.abbr, 0)])
Ejemplo n.º 7
0
 def test_index(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')._confirm()
     FriendshipPrototype.request_friendship(self.account_1, self.account_3, 'text 2')._confirm()
     self.check_html_ok(self.request_html(url('accounts:friends:')), texts=[('pgf-no-friends-message', 0),
                                                                          (self.account_2.nick, 1),
                                                                          (self.account_3.nick, 1),
                                                                          (self.clan_2.abbr, 1),
                                                                          (self.clan_3.abbr, 1)])
Ejemplo n.º 8
0
 def test_friends__candidates_only(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')
     FriendshipPrototype.request_friendship(self.account_1, self.account_3, 'text 2')
     self.check_html_ok(self.request_html(url('accounts:friends:')), texts=[('pgf-no-friends-message', 1),
                                                                          (self.account_2.nick, 0),
                                                                          (self.account_3.nick, 0),
                                                                          (self.clan_2.abbr, 0),
                                                                          (self.clan_3.abbr, 0)])
Ejemplo n.º 9
0
 def test_index(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')._confirm()
     FriendshipPrototype.request_friendship(self.account_1, self.account_3, 'text 2')._confirm()
     self.check_html_ok(self.request_html(url('accounts:friends:')), texts=[('pgf-no-friends-message', 0),
                                                                          (self.account_2.nick, 1),
                                                                          (self.account_3.nick, 1),
                                                                          (self.clan_2.abbr, 1),
                                                                          (self.clan_3.abbr, 1)])
Ejemplo n.º 10
0
 def test_show_friends_in_list_button(self):
     self.request_login(self.account_2.email)
     texts = [('pgf-friends-request-friendship', 0),
              ('pgf-friends-in-list', 1),
              ('pgf-friends-request-from', 0),
              ('pgf-friends-request-to', 0)]
     FriendshipPrototype.request_friendship(self.account_2, self.account_1, text='text')._confirm()
     self.check_html_ok(self.request_html(reverse('accounts:show', args=[self.account_1.id])), texts=texts)
Ejemplo n.º 11
0
 def test_show_friends_in_list_button(self):
     self.request_login('*****@*****.**')
     texts = [('pgf-friends-request-friendship', 0),
              ('pgf-friends-in-list', 1),
              ('pgf-friends-request-from', 0),
              ('pgf-friends-request-to', 0)]
     FriendshipPrototype.request_friendship(self.account_2, self.account_1, text=u'text')._confirm()
     self.check_html_ok(self.request_html(reverse('accounts:show', args=[self.account_1.id])), texts=texts)
Ejemplo n.º 12
0
 def test_show_friends_request_to_button(self):
     self.request_login('*****@*****.**')
     texts = [('pgf-friends-request-friendship', 0),
              ('pgf-friends-in-list', 0),
              ('pgf-friends-request-from', 0),
              ('pgf-friends-request-to', 1)]
     FriendshipPrototype.request_friendship(self.account_2, self.account_1, text=u'text')
     self.check_html_ok(self.request_html(reverse('accounts:show', args=[self.account_1.id])), texts=texts)
Ejemplo n.º 13
0
 def test_show_friends_request_to_button(self):
     self.request_login(self.account_2.email)
     texts = [('pgf-friends-request-friendship', 0),
              ('pgf-friends-in-list', 0),
              ('pgf-friends-request-from', 0),
              ('pgf-friends-request-to', 1)]
     FriendshipPrototype.request_friendship(self.account_2, self.account_1, text='text')
     self.check_html_ok(self.request_html(reverse('accounts:show', args=[self.account_1.id])), texts=texts)
Ejemplo n.º 14
0
 def test_request_friendship__own_request_exists(self):
     own_request_1 = FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')
     own_request_2 = FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 2')
     self.assertEqual(own_request_1.id, own_request_2.id)
     self.assertFalse(own_request_2.is_confirmed)
     self.assertEqual(own_request_2.text_html, 'text 2')
     self.assertEqual(Friendship.objects.all().count(), 1)
     self.assertEqual(Message.objects.all().count(), 1)
     self.assertEqual(Message.objects.all()[0].recipient_id, self.account_2.id)
Ejemplo n.º 15
0
 def test_request_friendship__own_request_exists(self):
     own_request_1 = FriendshipPrototype.request_friendship(self.account_1, self.account_2, u'text 1')
     own_request_2 = FriendshipPrototype.request_friendship(self.account_1, self.account_2, u'text 2')
     self.assertEqual(own_request_1.id, own_request_2.id)
     self.assertFalse(own_request_2.is_confirmed)
     self.assertEqual(own_request_2.text_html, u'text 2')
     self.assertEqual(Friendship.objects.all().count(), 1)
     self.assertEqual(Message.objects.all().count(), 1)
     self.assertEqual(Message.objects.all()[0].recipient_id, self.account_2.id)
Ejemplo n.º 16
0
 def test_remove_friendship__own_request_exists(self):
     with self.check_new_message(
             self.account_2.id,
         [accounts_logic.get_system_user_id(), self.account_1.id],
             number=2):
         FriendshipPrototype.request_friendship(self.account_1,
                                                self.account_2, 'text 1')
         FriendshipPrototype.remove_friendship(self.account_1,
                                               self.account_2)
Ejemplo n.º 17
0
 def test_get_candidates_for__candidates_exists(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2,
                                            'text 1')
     FriendshipPrototype.request_friendship(self.account_3, self.account_1,
                                            'text 2')
     self.assertEqual([
         account.id for account in FriendshipPrototype.get_candidates_for(
             self.account_1)
     ], [self.account_3.id])
Ejemplo n.º 18
0
    def test_request_friendship__own_request_exists(self):

        with self.check_new_message(self.account_2.id, [self.account_1.id]):
            own_request_1 = FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')
            own_request_2 = FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 2')

        self.assertEqual(own_request_1.id, own_request_2.id)
        self.assertFalse(own_request_2.is_confirmed)
        self.assertEqual(own_request_2.text_html, 'text 2')
        self.assertEqual(Friendship.objects.all().count(), 1)
Ejemplo n.º 19
0
 def test_request_friendship__his_request_exists(self):
     his_request = FriendshipPrototype.request_friendship(self.account_2, self.account_1, u'text 1')
     own_request = FriendshipPrototype.request_friendship(self.account_1, self.account_2, u'text 2')
     self.assertEqual(his_request.id, own_request.id)
     self.assertTrue(own_request.is_confirmed)
     self.assertEqual(own_request.text_html, u'text 1')
     self.assertEqual(Friendship.objects.all().count(), 1)
     self.assertEqual(Message.objects.all().count(), 2)
     self.assertEqual(Message.objects.all()[0].recipient_id, self.account_1.id)
     self.assertEqual(Message.objects.all()[1].recipient_id, self.account_2.id)
Ejemplo n.º 20
0
    def test_request_friendship__his_request_exists(self):

        with self.check_new_message(self.account_2.id, [accounts_logic.get_system_user_id()]):
            with self.check_new_message(self.account_1.id, [self.account_2.id]):
                his_request = FriendshipPrototype.request_friendship(self.account_2, self.account_1, 'text 1')
                own_request = FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 2')

        self.assertEqual(his_request.id, own_request.id)
        self.assertTrue(own_request.is_confirmed)
        self.assertEqual(own_request.text_html, 'text 1')
        self.assertEqual(Friendship.objects.all().count(), 1)
Ejemplo n.º 21
0
 def test_request_friendship__his_request_exists(self):
     his_request = FriendshipPrototype.request_friendship(
         self.account_2, self.account_1, 'text 1')
     own_request = FriendshipPrototype.request_friendship(
         self.account_1, self.account_2, 'text 2')
     self.assertEqual(his_request.id, own_request.id)
     self.assertTrue(own_request.is_confirmed)
     self.assertEqual(own_request.text_html, 'text 1')
     self.assertEqual(Friendship.objects.all().count(), 1)
     self.assertEqual(Message.objects.all().count(), 2)
     self.assertEqual(Message.objects.all()[0].recipient_id,
                      self.account_1.id)
     self.assertEqual(Message.objects.all()[1].recipient_id,
                      self.account_2.id)
Ejemplo n.º 22
0
    def request_friendship(self, friend):

        if friend.is_fast:
            return self.json_error('friends.request_friendship.fast_friend', u'Вы не можете пригласить в друзья игрока не завершившего регистрацию')

        if friend.id == get_system_user().id:
            return self.json_error('friends.request_friendship.system_user', u'Вы не можете пригласить в друзья системного пользователя')

        form = RequestForm(self.request.POST)

        if not form.is_valid():
            return self.json_error('friends.request_friendship.form_errors', form.errors)

        FriendshipPrototype.request_friendship(self.account, friend, text=form.c.text)
        return self.json_ok()
Ejemplo n.º 23
0
 def test_request_friendship__new_request(self):
     own_request = FriendshipPrototype.request_friendship(self.account_1, self.account_2, u'text 1')
     self.assertFalse(own_request.is_confirmed)
     self.assertEqual(own_request.text_html, u'text 1')
     self.assertEqual(Friendship.objects.all().count(), 1)
     self.assertEqual(Message.objects.all().count(), 1)
     self.assertEqual(Message.objects.all()[0].recipient_id, self.account_2.id)
Ejemplo n.º 24
0
 def test_request_friendship__new_request(self):
     own_request = FriendshipPrototype.request_friendship(
         self.account_1, self.account_2, 'text 1')
     self.assertFalse(own_request.is_confirmed)
     self.assertEqual(own_request.text_html, 'text 1')
     self.assertEqual(Friendship.objects.all().count(), 1)
     self.assertEqual(Message.objects.all().count(), 1)
     self.assertEqual(Message.objects.all()[0].recipient_id,
                      self.account_2.id)
Ejemplo n.º 25
0
    def request_friendship(self, friend):

        if friend.is_fast:
            return self.json_error(
                'friends.request_friendship.fast_friend',
                u'Вы не можете пригласить в друзья игрока не завершившего регистрацию'
            )

        if friend.id == get_system_user().id:
            return self.json_error(
                'friends.request_friendship.system_user',
                u'Вы не можете пригласить в друзья системного пользователя')

        form = RequestForm(self.request.POST)

        if not form.is_valid():
            return self.json_error('friends.request_friendship.form_errors',
                                   form.errors)

        FriendshipPrototype.request_friendship(self.account,
                                               friend,
                                               text=form.c.text)
        return self.json_ok()
Ejemplo n.º 26
0
 def accept_friendship(self, friend):
     FriendshipPrototype.request_friendship(self.account, friend)
     return self.json_ok()
Ejemplo n.º 27
0
 def test_remove_friendship(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')._confirm()
     self.check_ajax_ok(self.client.post(url('accounts:friends:remove', friend=self.account_2.id)))
     self.assertEqual(Friendship.objects.all().count(), 0)
Ejemplo n.º 28
0
 def test_get_candidates_for__candidates_exists(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')
     FriendshipPrototype.request_friendship(self.account_3, self.account_1, 'text 2')
     self.assertEqual([account.id for account in FriendshipPrototype.get_candidates_for(self.account_1)], [self.account_3.id])
Ejemplo n.º 29
0
 def test_get_candidates_for__only_friends(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')._confirm()
     FriendshipPrototype.request_friendship(self.account_3, self.account_1, 'text 2')._confirm()
     self.assertEqual(FriendshipPrototype.get_candidates_for(self.account_1), [])
Ejemplo n.º 30
0
 def accept_friendship(self, friend):
     FriendshipPrototype.request_friendship(self.account, friend)
     return self.json_ok()
Ejemplo n.º 31
0
 def test_get_friends_for__friends_exists(self):
     FriendshipPrototype.request_friendship(self.account_1, self.account_2, 'text 1')._confirm()
     FriendshipPrototype.request_friendship(self.account_3, self.account_1, 'text 2')._confirm()
     self.assertEqual(set(account.id for account in FriendshipPrototype.get_friends_for(self.account_1)), set([self.account_2.id, self.account_3.id]))
Ejemplo n.º 32
0
 def test_remove_friendship__his_request_exists(self):
     FriendshipPrototype.request_friendship(self.account_2, self.account_1, 'text 1')
     FriendshipPrototype.remove_friendship(self.account_1, self.account_2)
     self.assertEqual(Friendship.objects.all().count(), 0)
     self.assertEqual(Message.objects.all().count(), 2)
     self.assertEqual(Message.objects.all().order_by('id')[1].recipient_id, self.account_2.id)