def test_get_new_post_delay__more_then_one_post(self): PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') delay_1 = PostPrototype.get_new_post_delay(self.account) PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') delay_2 = PostPrototype.get_new_post_delay(self.account) self.assertTrue(delay_1 - delay_2 > 1)
def test_get_new_post_delay__more_then_one_post(self): PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') delay_1 = PostPrototype.get_new_post_delay(self.account) PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') delay_2 = PostPrototype.get_new_post_delay(self.account) self.assertTrue(delay_1 - delay_2 > 1)
def test_get_new_post_delay__has_old_post(self): PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') PostPrototype._db_all().update(created_at=datetime.datetime.now() - datetime.timedelta(days=30)) self.assertEqual(PostPrototype.get_new_post_delay(self.account), 0)
def create_post(self): new_post_delay = PostPrototype.get_new_post_delay(self.account) if new_post_delay > 0: error_message = ( u'Создавать новые сообщения можно не чаще раза в %d секунд. <br/>Задержка увеличивается для игроков, только начинающих общаться на форуме.<br/> Вы сможете создать новое сообщение через %d сек.' % (forum_settings.POST_DELAY, int(new_post_delay))) return self.json_error('forum.create_post.delay', error_message) new_post_form = forms.NewPostForm(self.request.POST) if not new_post_form.is_valid(): return self.json_error('forum.create_post.form_errors', new_post_form.errors) post = PostPrototype.create(self.thread, self.account, new_post_form.c.text) if self.account.is_authenticated(): ThreadReadInfoPrototype.read_thread(self.thread, self.account) return self.json_ok( data={ 'next_url': url('forum:threads:show', self.thread.id, page=self.thread.paginator.pages_count) + ('#m%d' % post.id) })
def test_get_new_post_delay__a_lot_of_posts(self): for i in xrange(100): PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') self.assertTrue( PostPrototype.get_new_post_delay(self.account) < forum_settings.POST_DELAY)
def create_post(self): new_post_delay = PostPrototype.get_new_post_delay(self.account) if new_post_delay > 0: error_message = ('Создавать новые сообщения можно не чаще раза в %d секунд. <br/>Задержка увеличивается для игроков, только начинающих общаться на форуме.<br/> Вы сможете создать новое сообщение через %d сек.' % ( forum_settings.POST_DELAY, int(new_post_delay))) return self.json_error('forum.create_post.delay', error_message) new_post_form = forms.NewPostForm(self.request.POST) if not new_post_form.is_valid(): return self.json_error('forum.create_post.form_errors', new_post_form.errors) post = PostPrototype.create(self.thread, self.account, new_post_form.c.text) if self.account.is_authenticated: ThreadReadInfoPrototype.read_thread(self.thread, self.account) return self.json_ok(data={'next_url': url('forum:threads:show', self.thread.id, page=self.thread.paginator.pages_count) + ('#m%d' % post.id)})
def test_get_new_post_delay__has_new_post(self): PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') self.assertTrue(PostPrototype.get_new_post_delay(self.account) > 0)
def test_get_new_post_delay__has_old_post(self): PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') PostPrototype._db_all().update(created_at=datetime.datetime.now() - datetime.timedelta(days=30)) self.assertEqual(PostPrototype.get_new_post_delay(self.account), 0)
def test_get_new_post_delay__no_posts__old_account(self): new_account = self.accounts_factory.create_account() new_account._model.created_at = datetime.datetime.now() - datetime.timedelta(days=30) self.assertFalse(PostPrototype.get_new_post_delay(new_account), 0)
def test_get_new_post_delay__no_posts__new_account(self): new_account = self.accounts_factory.create_account() self.assertTrue(PostPrototype.get_new_post_delay(new_account) > 0)
def test_get_new_post_delay__no_posts__old_account(self): register_user('new_test_user', '*****@*****.**', '111111') new_account = AccountPrototype.get_by_nick('new_test_user') new_account._model.created_at = datetime.datetime.now() - datetime.timedelta(days=30) self.assertFalse(PostPrototype.get_new_post_delay(new_account), 0)
def test_get_new_post_delay__no_posts__new_account(self): register_user('new_test_user', '*****@*****.**', '111111') new_account = AccountPrototype.get_by_nick('new_test_user') self.assertTrue(PostPrototype.get_new_post_delay(new_account) > 0)
def test_get_new_post_delay__no_posts__old_account(self): register_user('new_test_user', '*****@*****.**', '111111') new_account = AccountPrototype.get_by_nick('new_test_user') new_account._model.created_at = datetime.datetime.now( ) - datetime.timedelta(days=30) self.assertFalse(PostPrototype.get_new_post_delay(new_account), 0)
def test_get_new_post_delay__has_new_post(self): PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') self.assertTrue(PostPrototype.get_new_post_delay(self.account) > 0)
def test_get_new_post_delay__no_posts__old_account(self): new_account = self.accounts_factory.create_account() new_account._model.created_at = datetime.datetime.now() - datetime.timedelta(days=30) self.assertFalse(PostPrototype.get_new_post_delay(new_account), 0)
def test_get_new_post_delay__no_posts__new_account(self): new_account = self.accounts_factory.create_account() self.assertTrue(PostPrototype.get_new_post_delay(new_account) > 0)
def test_get_new_post_delay__a_lot_of_posts(self): for i in range(100): PostPrototype.create(thread=self.thread, author=self.account, text='post-1-text') self.assertTrue(PostPrototype.get_new_post_delay(self.account) < forum_settings.POST_DELAY)
def test_get_new_post_delay__no_posts__new_account(self): register_user('new_test_user', '*****@*****.**', '111111') new_account = AccountPrototype.get_by_nick('new_test_user') self.assertTrue(PostPrototype.get_new_post_delay(new_account) > 0)