comparison bio/tests/test_views.py @ 1219:f354554afb6e modernize tip

Add more bio unit tests.
author Brian Neal <bgneal@gmail.com>
date Sat, 22 Feb 2025 17:17:09 -0600
parents 02181fa5ac9d
children
comparison
equal deleted inserted replaced
1218:54a26351c74b 1219:f354554afb6e
11 from django.core import mail 11 from django.core import mail
12 12
13 from PIL import Image 13 from PIL import Image
14 14
15 from bio.models import UserProfile, UserProfileFlag 15 from bio.models import UserProfile, UserProfileFlag
16
17 from elsewhere.models import (SocialNetworkProfile, InstantMessengerProfile,
18 WebsiteProfile)
16 19
17 20
18 class MemberSearchTest(TestCase): 21 class MemberSearchTest(TestCase):
19 22
20 USERNAME = u'John' 23 USERNAME = u'John'
256 self.assertEqual(flag.user, paul) 259 self.assertEqual(flag.user, paul)
257 self.assertEqual(flag.profile, eddie.profile) 260 self.assertEqual(flag.profile, eddie.profile)
258 261
259 self.assertEqual(len(mail.outbox), 1) 262 self.assertEqual(len(mail.outbox), 1)
260 self.assertTrue('A Profile Has Been Flagged' in mail.outbox[0].subject) 263 self.assertTrue('A Profile Has Been Flagged' in mail.outbox[0].subject)
264
265
266 class EditElsewhereTestCase(TestCase):
267 def setUp(self):
268 self.user = User.objects.create_user('paul', '', 'pw')
269 self.user.save()
270 self.client.login(username='paul', password='pw')
271 self.url = reverse('bio-edit_elsewhere')
272
273 def test_get_view(self):
274 response = self.client.get(reverse('bio-edit_elsewhere'))
275 self.assertEqual(response.status_code, 200)
276
277 def test_add_social_network(self):
278 response = self.client.post(self.url, {
279 'network_id': 'catster',
280 'username': 'pjmoto',
281 'sn-form': 'Add Social Network',
282 })
283 self.assertRedirects(response, self.url)
284 user_networks = self.user.social_network_profiles.all()
285 self.assertEquals(user_networks.count(), 1)
286 self.assertEquals(user_networks[0].network_id, 'catster')
287
288 def test_add_instant_messenger(self):
289 response = self.client.post(self.url, {
290 'network_id': 'aim',
291 'username': 'pjmoto',
292 'im-form': 'Add Instant Messenger',
293 })
294 self.assertRedirects(response, self.url)
295 user_networks = self.user.instant_messenger_profiles.all()
296 self.assertEquals(user_networks.count(), 1)
297 self.assertEquals(user_networks[0].network_id, 'aim')
298
299 def test_add_website(self):
300 response = self.client.post(self.url, {
301 'name': 'pjmoto.com',
302 'url': 'https://example.com/pjmoto',
303 'w-form': 'Add Website',
304 })
305 self.assertRedirects(response, self.url)
306 websites = self.user.website_profiles.all()
307 self.assertEquals(websites.count(), 1)
308 self.assertEquals(websites[0].name, 'pjmoto.com')
309 self.assertEquals(websites[0].url, 'https://example.com/pjmoto')
310
311 def test_delete_social_network(self):
312 profile = SocialNetworkProfile(user=self.user, network_id='catster',
313 username='pjmoto')
314 profile.save()
315 self.assertEquals(self.user.social_network_profiles.count(), 1)
316 response = self.client.post(self.url, {
317 'delete_id': profile.id,
318 'delete-sn-form': 'Delete',
319 })
320 self.assertRedirects(response, self.url)
321 self.assertEquals(self.user.social_network_profiles.count(), 0)
322
323 def test_delete_instant_messenger(self):
324 profile = InstantMessengerProfile(user=self.user, network_id='aim',
325 username='pjmoto')
326 profile.save()
327 self.assertEquals(self.user.instant_messenger_profiles.count(), 1)
328 response = self.client.post(self.url, {
329 'delete_id': profile.id,
330 'delete-im-form': 'Delete',
331 })
332 self.assertRedirects(response, self.url)
333 self.assertEquals(self.user.instant_messenger_profiles.count(), 0)
334
335 def test_delete_website(self):
336 profile = WebsiteProfile(user=self.user, name='pjmoto.com',
337 url='https://example.com/pjmoto')
338 profile.save()
339 self.assertEquals(self.user.website_profiles.count(), 1)
340 response = self.client.post(self.url, {
341 'delete_id': profile.id,
342 'delete-w-form': 'Delete',
343 })
344 self.assertRedirects(response, self.url)
345 self.assertEquals(self.user.website_profiles.count(), 0)