def create_thread(self): if not can_create_thread(self.account, self.subcategory): return self.json_error( 'forum.create_thread.no_permissions', u'Вы не можете создавать темы в данном разделе') new_thread_delay = ThreadPrototype.get_new_thread_delay(self.account) if new_thread_delay > 0: error_message = ( u'Создавать новые обсуждения можно не чаще раза в %d минут.<br/> Вы сможете создать новое обсуждение через %d сек.' % (int(forum_settings.THREAD_DELAY / 60), int(new_thread_delay))) return self.json_error('forum.create_thread.delay', error_message) new_thread_form = forms.NewThreadForm(self.request.POST) if not new_thread_form.is_valid(): return self.json_error('forum.create_thread.form_errors', new_thread_form.errors) thread = ThreadPrototype.create(self.subcategory, caption=new_thread_form.c.caption, author=self.account, text=new_thread_form.c.text) return self.json_ok( data={ 'thread_url': reverse('forum:threads:show', args=[thread.id]), 'thread_id': thread.id })
def create_thread(self): if not can_create_thread(self.account, self.subcategory): return self.json_error('forum.create_thread.no_permissions', 'Вы не можете создавать темы в данном разделе') new_thread_delay = ThreadPrototype.get_new_thread_delay(self.account) if new_thread_delay > 0: error_message = ('Создавать новые обсуждения можно не чаще раза в %d минут.<br/> Вы сможете создать новое обсуждение через %d сек.' % ( int(forum_settings.THREAD_DELAY / 60), int(new_thread_delay))) return self.json_error('forum.create_thread.delay', error_message) new_thread_form = forms.NewThreadForm(self.request.POST) if not new_thread_form.is_valid(): return self.json_error('forum.create_thread.form_errors', new_thread_form.errors) thread = ThreadPrototype.create(self.subcategory, caption=new_thread_form.c.caption, author=self.account, text=new_thread_form.c.text) return self.json_ok(data={'thread_url': reverse('forum:threads:show', args=[thread.id]), 'thread_id': thread.id})
def test_get_new_thread_delay__has_new_thread(self): self.assertTrue(ThreadPrototype.get_new_thread_delay(self.account) > 0)
def test_get_new_thread_delay__has_old_thread(self): ThreadPrototype._db_all().update(created_at=datetime.datetime.now() - datetime.timedelta(days=30)) self.assertEqual(ThreadPrototype.get_new_thread_delay(self.account), 0)
def test_get_new_thread_delay__no_threads__old_account(self): new_account = self.accounts_factory.create_account() new_account._model.created_at = datetime.datetime.now() - datetime.timedelta(days=30) self.assertFalse(ThreadPrototype.get_new_thread_delay(new_account), 0)
def test_get_new_thread_delay__no_threads__new_account(self): new_account = self.accounts_factory.create_account() self.assertTrue(ThreadPrototype.get_new_thread_delay(new_account) > 0)
def test_get_new_thread_delay__no_threads__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(ThreadPrototype.get_new_thread_delay(new_account), 0)
def test_get_new_thread_delay__no_threads__new_account(self): register_user('new_test_user', '*****@*****.**', '111111') new_account = AccountPrototype.get_by_nick('new_test_user') self.assertTrue(ThreadPrototype.get_new_thread_delay(new_account) > 0)
def test_get_new_thread_delay__has_new_thread(self): self.assertTrue(ThreadPrototype.get_new_thread_delay(self.account) > 0)
def test_get_new_thread_delay__has_old_thread(self): ThreadPrototype._db_all().update(created_at=datetime.datetime.now() - datetime.timedelta(days=30)) self.assertEqual(ThreadPrototype.get_new_thread_delay(self.account), 0)
def test_get_new_thread_delay__no_threads__old_account(self): new_account = self.accounts_factory.create_account() new_account._model.created_at = datetime.datetime.now() - datetime.timedelta(days=30) self.assertFalse(ThreadPrototype.get_new_thread_delay(new_account), 0)
def test_get_new_thread_delay__no_threads__new_account(self): new_account = self.accounts_factory.create_account() self.assertTrue(ThreadPrototype.get_new_thread_delay(new_account) > 0)
def test_get_new_thread_delay__no_threads__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(ThreadPrototype.get_new_thread_delay(new_account), 0)
def test_get_new_thread_delay__no_threads__new_account(self): register_user('new_test_user', '*****@*****.**', '111111') new_account = AccountPrototype.get_by_nick('new_test_user') self.assertTrue(ThreadPrototype.get_new_thread_delay(new_account) > 0)