1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
from datetime import datetime
from askbot import models
from askbot.tests.utils import AskbotTestCase
from django.test.client import Client
from django.core.urlresolvers import reverse
class WidgetViewsTests(AskbotTestCase):
def setUp(self):
self.client = Client()
self.user = self.create_user('user1')
self.user.set_password('sample')
self.user.save()
self.good_data = {'title': 'This is a title question',
'ask_anonymously': False}
def test_post_with_auth(self):
self.client.login(username='user1', password='sample')
response = self.client.post(reverse('ask_by_widget'), self.good_data)
self.assertEquals(response.status_code, 302)
self.client.logout()
def test_post_without_auth(self):
response = self.client.post(reverse('ask_by_widget'), self.good_data)
self.assertEquals(response.status_code, 302)
self.assertTrue('widget_question' in self.client.session)
self.assertEquals(self.client.session['widget_question']['title'],
self.good_data['title'])
def test_post_after_login(self):
widget_question_data = { 'title': 'testing post after login, does it?',
'author': self.user,
'added_at': datetime.now(),
'wiki': False,
'text': ' ',
'tagnames': '',
'is_anonymous': False
}
self.client.login(username='user1', password='sample')
session = self.client.session
session['widget_question'] = widget_question_data
session.save()
response = self.client.get(reverse('ask_by_widget'),
{'action': 'post-after-login'})
self.assertFalse('widget_question' in self.client.session)
self.assertEquals(response.status_code, 302)
#verify posting question
class WidgetLoginViewTest(AskbotTestCase):
def test_correct_template_loading(self):
client = Client()
response = client.get(reverse('widget_signin'))
template_name = 'authopenid/widget_signin.html'
templates = [template.name for template in response.templates]
self.assertTrue(template_name in templates)
|