def test_new_link_ajax_view(self): user = UserFactory() user.save() self.client.login(username=user.username, password='******') resp = self.client.post( reverse('new-link'), { 'title': 'Building static websites with Middleman, deploying to Heroku', 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', 'ajax': '1', 'id': 91329123, }) self.assertEqual(resp.status_code, 404) alist = ListFactory() alist.owner = user alist.save() alist = List.objects.get(owner=user) link = Link.objects.get(url="http://12devs.co.uk/articles/204/") resp = self.client.post( reverse('new-link'), { 'title': 'Building static websites with Middleman, deploying to Heroku', 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', }) self.assertEqual(resp.status_code, 302)
def test_ajax_add_to_list_or_create(self): resp = self.client.get(reverse("ajax-add-to-list-or-create")) self.assertEqual(resp.content, json.dumps({"result": "fail"})) self.client.login(username=self.user.username, password="******") resp = self.client.get(reverse("ajax-add-to-list-or-create")) self.assertEqual(resp.content, json.dumps({"result": "fail"})) link = LinkFactory() link.author = self.user link.save() cache.delete("link_%s" % link.pk) alist = ListFactory() alist.owner = self.user alist.save() resp = self.client.post(reverse("ajax-add-to-list-or-create"), {"lk": link.pk, "ls": alist.pk}) self.assertEqual(resp.content, json.dumps({"result": "added"})) resp = self.client.post(reverse("ajax-add-to-list-or-create"), {"lk": link.pk, "ls": alist.pk}) self.assertEqual(resp.content, json.dumps({"result": "removed"})) resp = self.client.post(reverse("ajax-add-to-list-or-create"), {"lk": link.pk, "t": "toread"}) self.assertEqual(resp.content, json.dumps({"result": "added"})) resp = self.client.post(reverse("ajax-add-to-list-or-create"), {"lk": link.pk, "t": "bookmark"}) self.assertEqual(resp.content, json.dumps({"result": "added"})) resp = self.client.post(reverse("ajax-add-to-list-or-create"), {"lk": link.pk, "t": "something"}) self.assertEqual(resp.status_code, 404)
def test_single_slug_view(self): alist = ListFactory() alist.save() resp = self.client.get( reverse('list-single-slug', kwargs={ 'list_pk': alist.pk, 'list_slug': alist.slug })) self.assertEqual(resp.status_code, 200) user = UserFactory() user.save() self.client.login(username=user.username, password='******') resp = self.client.get( reverse('list-single-slug', kwargs={ 'list_pk': alist.pk, 'list_slug': alist.slug })) self.assertEqual(resp.status_code, 200) resp = self.client.get( reverse('list-single-slug', kwargs={ 'list_pk': alist.pk, 'list_slug': alist.slug + "x" })) self.assertEqual(resp.status_code, 404)
def test_new_link_ajax_view(self): user = UserFactory() user.save() self.client.login(username=user.username, password='******') resp = self.client.post(reverse('new-link'), { 'title': 'Building static websites with Middleman, deploying to Heroku', 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', 'ajax': '1', 'id': 91329123, }) self.assertEqual(resp.status_code, 404) alist = ListFactory() alist.owner = user alist.save() alist = List.objects.get(owner=user) link = Link.objects.get(url="http://12devs.co.uk/articles/204/") resp = self.client.post(reverse('new-link'), { 'title': 'Building static websites with Middleman, deploying to Heroku', 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', }) self.assertEqual(resp.status_code, 302)
def test_new_link_ajax_exists(self): self.client.login(username=self.user.username, password="******") alist = ListFactory() alist.owner = self.user alist.md_content = "#titre" alist.save() resp = self.client.post( reverse("new-link"), { "title": "Building static websites with Middleman, deploying to Heroku", "url": "http://12devs.co.uk/articles/204/", "tags": 'Ruby, "Static Site Generator", "Ruby on Rails"', "language": "en", "level": "beginner", "ajax": "1", "id": alist.pk, }, ) resp = self.client.post( reverse("new-link"), { "title": "Building static websites with Middleman, deploying to Heroku", "url": "http://12devs.co.uk/articles/204/", "tags": 'Ruby, "Static Site Generator", "Ruby on Rails"', "language": "en", "level": "beginner", }, ) self.assertEqual(resp.status_code, 302)
def test_new_link_invalid(self): user = UserFactory() user.save() self.client.login(username=user.username, password='******') alist = ListFactory() alist.owner = user alist.save() resp = self.client.post( reverse('new-link'), { 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', }) self.assertEqual(resp.status_code, 200) resp = self.client.post( reverse('new-link'), { 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', 'ajax': '1' }) self.assertEqual(resp.status_code, 200)
def test_single_view(self): alist = ListFactory() alist.save() resp = self.client.get(reverse('list-single', kwargs={'list_pk': alist.pk})) self.assertEqual(resp.status_code, 302) resp = self.client.get(reverse('list-single', kwargs={'list_pk': 77})) self.assertEqual(resp.status_code, 404)
def test_single_view(self): alist = ListFactory() alist.save() resp = self.client.get( reverse('list-single', kwargs={'list_pk': alist.pk})) self.assertEqual(resp.status_code, 302) resp = self.client.get(reverse('list-single', kwargs={'list_pk': 77})) self.assertEqual(resp.status_code, 404)
def test_single_list(self): alist = ListFactory() alist.owner = self.user alist.save() cache.delete('tags_csv') resp = self.client.get(reverse('list-single', kwargs={'list_pk': alist.pk})) self.assertEqual(resp.status_code, 302) resp = self.client.get(reverse('list-single', kwargs={'list_pk': 1337})) self.assertEqual(resp.status_code, 404) resp = self.client.get(reverse('list-single-slug', kwargs={'list_pk': alist.pk, 'list_slug': alist.slug})) self.assertEqual(resp.status_code, 200) self.client.login(username=self.user.username, password='******') resp = self.client.get(reverse('list-single-slug', kwargs={'list_pk': alist.pk, 'list_slug': alist.slug})) self.assertEqual(resp.status_code, 200) resp = self.client.get(reverse('list-single-slug', kwargs={'list_pk': alist.pk, 'list_slug': 'something'})) self.assertEqual(resp.status_code, 404) alist.owner = self.user2 alist.is_public = False alist.save() resp = self.client.get(reverse('list-single-slug', kwargs={'list_pk': alist.pk, 'list_slug': alist.slug})) self.assertEqual(resp.status_code, 403)
def test_slug(self): alist = ListFactory() alist.owner = self.user alist.save() alist2 = ListFactory() alist2.owner = self.user alist2.save() self.assertEqual(alist.slug, 'my-own-public-list') self.assertEqual(alist2.slug, 'my-own-public-list-1')
def test_single_list(self): alist = ListFactory() alist.owner = self.user alist.save() cache.delete("tags_csv") resp = self.client.get(reverse("list-single", kwargs={"list_pk": alist.pk})) self.assertEqual(resp.status_code, 302) resp = self.client.get(reverse("list-single", kwargs={"list_pk": 1337})) self.assertEqual(resp.status_code, 404) resp = self.client.get(reverse("list-single-slug", kwargs={"list_pk": alist.pk, "list_slug": alist.slug})) self.assertEqual(resp.status_code, 200) self.client.login(username=self.user.username, password="******") resp = self.client.get(reverse("list-single-slug", kwargs={"list_pk": alist.pk, "list_slug": alist.slug})) self.assertEqual(resp.status_code, 200) resp = self.client.get(reverse("list-single-slug", kwargs={"list_pk": alist.pk, "list_slug": "something"})) self.assertEqual(resp.status_code, 404) alist.owner = self.user2 alist.is_public = False alist.save() resp = self.client.get(reverse("list-single-slug", kwargs={"list_pk": alist.pk, "list_slug": alist.slug})) self.assertEqual(resp.status_code, 403)
def test_single_slug_view(self): alist = ListFactory() alist.save() resp = self.client.get(reverse('list-single-slug', kwargs={'list_pk': alist.pk, 'list_slug': alist.slug})) self.assertEqual(resp.status_code, 200) user = UserFactory() user.save() self.client.login(username=user.username, password='******') resp = self.client.get(reverse('list-single-slug', kwargs={'list_pk': alist.pk, 'list_slug': alist.slug})) self.assertEqual(resp.status_code, 200) resp = self.client.get(reverse('list-single-slug', kwargs={'list_pk': alist.pk, 'list_slug': alist.slug + "x"})) self.assertEqual(resp.status_code, 404)
def test_slug(self): """test list slug""" alist = ListFactory() alist.save() self.assertEqual(alist.do_unique_slug(), False) self.assertEqual(alist.slug, 'my-own-public-list') alist = ListFactory() alist.save() self.assertEqual(alist.slug, 'my-own-public-list-1')
def test_vote(self): """test link comment count""" list = ListFactory() list.vote() list.save() self.assertEqual(list.upvotes, 1) from datetime import datetime hour = datetime.now().hour hours = { 0: 'votes_h00', 1: 'votes_h00', 2: 'votes_h02', 3: 'votes_h02', 4: 'votes_h04', 5: 'votes_h04', 6: 'votes_h06', 7: 'votes_h06', 8: 'votes_h08', 9: 'votes_h08', 10: 'votes_h10', 11: 'votes_h10', 12: 'votes_h12', 13: 'votes_h12', 14: 'votes_h14', 15: 'votes_h14', 16: 'votes_h16', 17: 'votes_h16', 18: 'votes_h18', 19: 'votes_h18', 20: 'votes_h20', 21: 'votes_h20', 22: 'votes_h22', 23: 'votes_h22'} self.assertEqual(getattr(list, hours[hour]), 1)
def test_delete_link_from_list(self): alist = ListFactory() alist.save() link = LinkFactory() link.save() listlink = ListLinks.objects.create(alist=alist, links=link) listlink.save() self.assertTrue( listlink == ListLinks.objects.get(alist=alist, links=link)) listlink.delete() with self.assertRaises(ListLinks.DoesNotExist): ListLinks.objects.get(alist=alist, links=link)
def test_vote(self): link = LinkFactory() link.author = self.user link.save() alist = ListFactory() alist.save() link.vote(self.user, alist.pk) link = LinkFactory() link.author = self.user2 link.save() link.vote(self.user) link.unvote(self.user) self.assertEqual(self.profile.karma, 0) self.assertEqual(self.profile2.karma, 0)
def test_get_tags(self): alist = ListFactory() alist.owner = self.user alist.save() link = LinkFactory() link.author = self.user link.save() self.assertEqual(link.get_categories(), "") link.tags.add('book') link.tags.add('article') link.tags.add('something') listlink = ListLinks.objects.create( alist=alist, links=link ) listlink.add() self.assertEqual(alist.get_tags()[0], (u'article', u'article', 1)) self.assertEqual(alist.get_tags()[1], (u'book', u'book', 1)) self.assertEqual(alist.get_tags()[2], (u'something', u'something', 1)) listlink.remove()
def test_edit_list(self): alist = ListFactory() alist.title = 'My list 2' alist.owner = self.user alist.language = Language.objects.create(language='en', name='English') alist.save() resp = self.client.get(reverse('list-edit', kwargs={'list_pk': alist.pk})) self.assertEqual(resp.status_code, 302) self.client.login(username=self.user2.username, password='******') resp = self.client.get(reverse('list-edit', kwargs={'list_pk': alist.pk})) self.assertEqual(resp.status_code, 403) self.client.login(username=self.user.username, password='******') resp = self.client.get(reverse('list-edit', kwargs={'list_pk': alist.pk})) self.assertEqual(resp.status_code, 200) resp = self.client.post(reverse('list-edit', kwargs={'list_pk': alist.pk}), { 'title': 'My list 2', 'description': 'something', 'private': False, 'language': 'en', 'url': '', 'mdcontent': '#lala' }) self.assertEqual(List.objects.get(title='My list 2').description, 'something')
def test_delete_link_from_list(self): alist = ListFactory() alist.save() link = LinkFactory() link.save() listlink = ListLinks.objects.create( alist=alist, links=link ) listlink.save() self.assertTrue( listlink == ListLinks.objects.get(alist=alist, links=link)) listlink.delete() with self.assertRaises(ListLinks.DoesNotExist): ListLinks.objects.get(alist=alist, links=link)
def test_delete_list(self): alist = ListFactory() alist.owner = self.user alist.save() resp = self.client.post(reverse('list-delete', kwargs={'list_pk': alist.pk}), {}) self.assertEqual(resp.status_code, 302) self.client.login(username=self.user2.username, password='******') resp = self.client.get(reverse('list-delete', kwargs={'list_pk': alist.pk})) self.assertEqual(resp.status_code, 403) resp = self.client.post(reverse('list-delete', kwargs={'list_pk': alist.pk}), {}) self.assertEqual(resp.status_code, 404) self.client.login(username=self.user.username, password='******') resp = self.client.post(reverse('list-delete', kwargs={'list_pk': alist.pk}), {}) self.assertEqual(resp.status_code, 302)
def test_ajax_add_to_list_or_create(self): resp = self.client.get(reverse('ajax-add-to-list-or-create')) self.assertEqual(resp.content, simplejson.dumps({'result': 'fail'})) self.client.login(username=self.user.username, password='******') resp = self.client.get(reverse('ajax-add-to-list-or-create')) self.assertEqual(resp.content, simplejson.dumps({'result': 'fail'})) link = LinkFactory() link.author = self.user link.save() cache.delete('link_%s' % link.pk) alist = ListFactory() alist.owner = self.user alist.save() resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 'ls': alist.pk }) self.assertEqual(resp.content, simplejson.dumps({'result': 'added'})) resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 'ls': alist.pk }) self.assertEqual(resp.content, simplejson.dumps({'result': 'removed'})) resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 't': 'toread' }) self.assertEqual(resp.content, simplejson.dumps({'result': 'added'})) resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 't': 'bookmark' }) self.assertEqual(resp.content, simplejson.dumps({'result': 'added'})) resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 't': 'something' }) self.assertEqual(resp.status_code, 404)
def test_ajax_add_to_list_or_create(self): resp = self.client.get(reverse('ajax-add-to-list-or-create')) self.assertEqual(resp.content, json.dumps({'result': 'fail'})) self.client.login(username=self.user.username, password='******') resp = self.client.get(reverse('ajax-add-to-list-or-create')) self.assertEqual(resp.content, json.dumps({'result': 'fail'})) link = LinkFactory() link.author = self.user link.save() cache.delete('link_%s' % link.pk) alist = ListFactory() alist.owner = self.user alist.save() resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 'ls': alist.pk }) self.assertEqual(resp.content, json.dumps({'result': 'added'})) resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 'ls': alist.pk }) self.assertEqual(resp.content, json.dumps({'result': 'removed'})) resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 't': 'toread' }) self.assertEqual(resp.content, json.dumps({'result': 'added'})) resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 't': 'bookmark' }) self.assertEqual(resp.content, json.dumps({'result': 'added'})) resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 't': 'something' }) self.assertEqual(resp.status_code, 404)
def test_get_tags(self): """test list tags""" alist = ListFactory() alist.save() self.assertEqual(list(alist.get_tags()), []) link = LinkFactory() link.save() tag = TagFactory() tag.save() link.tags.add(tag) link.save() listlink = ListLinks.objects.create( alist=alist, links=link ) self.assertEqual(list(alist.get_tags()), [(u'Django', u'django', 1)])
def test_new_link_ajax_exists(self): user = UserFactory() user.save() self.client.login(username=user.username, password='******') alist = ListFactory() alist.owner = user alist.md_content = '#titre' alist.save() resp = self.client.post( reverse('new-link'), { 'title': 'Building static websites with Middleman, deploying to Heroku', 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', 'ajax': '1', 'id': alist.pk, }) resp = self.client.post( reverse('new-link'), { 'title': 'Building static websites with Middleman, deploying to Heroku', 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', }) self.assertEqual(resp.status_code, 302)
def test_edit_list(self): alist = ListFactory() alist.title = "My list 2" alist.owner = self.user alist.language = Language.objects.create(language="en", name="English") alist.save() resp = self.client.get(reverse("list-edit", kwargs={"list_pk": alist.pk})) self.assertEqual(resp.status_code, 302) self.client.login(username=self.user2.username, password="******") resp = self.client.get(reverse("list-edit", kwargs={"list_pk": alist.pk})) self.assertEqual(resp.status_code, 403) self.client.login(username=self.user.username, password="******") resp = self.client.get(reverse("list-edit", kwargs={"list_pk": alist.pk})) self.assertEqual(resp.status_code, 200) resp = self.client.post( reverse("list-edit", kwargs={"list_pk": alist.pk}), { "title": "My list 2", "description": "something", "private": False, "language": "en", "url": "", "mdcontent": "#lala", }, ) self.assertEqual(List.objects.get(title="My list 2").description, "something")
def test_vote(self): """test link comment count""" list = ListFactory() list.vote() list.save() self.assertEqual(list.upvotes, 1) from datetime import datetime hour = datetime.now().hour hours = { 0: 'votes_h00', 1: 'votes_h00', 2: 'votes_h02', 3: 'votes_h02', 4: 'votes_h04', 5: 'votes_h04', 6: 'votes_h06', 7: 'votes_h06', 8: 'votes_h08', 9: 'votes_h08', 10: 'votes_h10', 11: 'votes_h10', 12: 'votes_h12', 13: 'votes_h12', 14: 'votes_h14', 15: 'votes_h14', 16: 'votes_h16', 17: 'votes_h16', 18: 'votes_h18', 19: 'votes_h18', 20: 'votes_h20', 21: 'votes_h20', 22: 'votes_h22', 23: 'votes_h22' } self.assertEqual(getattr(list, hours[hour]), 1)
def test_new_link_ajax_notmylist(self): user = UserFactory() user.username = '******' user.save() user2 = UserFactory() user2.username = '******' user2.save() self.client.login(username=user.username, password='******') alist = ListFactory() alist.owner = user2 alist.save() resp = self.client.post(reverse('new-link'), { 'title': 'Building static websites with Middleman, deploying to Heroku', 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', 'ajax': '1', 'id': alist.pk, }) self.assertEqual(resp.status_code, 404)
def test_personal_lists(self): a_personal_list = ListFactory() a_personal_list.save() a_default_list = ListFactory() a_default_list.title = "Bookmarks" a_default_list.save() link = LinkFactory() link.save() listlink = ListLinks.objects.create(alist=a_personal_list, links=link) listlink.save() listlink = ListLinks.objects.create(alist=a_default_list, links=link) listlink.save() self.assertEqual( list(List.objects.personal_lists(a_personal_list.owner)), [a_personal_list])
def test_new_link_invalid(self): user = UserFactory() user.save() self.client.login(username=user.username, password='******') alist = ListFactory() alist.owner = user alist.save() resp = self.client.post(reverse('new-link'), { 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', }) self.assertEqual(resp.status_code, 200) resp = self.client.post(reverse('new-link'), { 'url': 'http://12devs.co.uk/articles/204/', 'tags': 'Ruby, "Static Site Generator", "Ruby on Rails"', 'ajax': '1' }) self.assertEqual(resp.status_code, 200)
def test_new_link_invalid(self): self.client.login(username=self.user.username, password="******") alist = ListFactory() alist.owner = self.user alist.save() resp = self.client.post( reverse("new-link"), {"url": "http://12devs.co.uk/articles/204/", "tags": 'Ruby, "Static Site Generator", "Ruby on Rails"'}, ) self.assertEqual(resp.status_code, 200) resp = self.client.post( reverse("new-link"), { "url": "http://12devs.co.uk/articles/204/", "tags": 'Ruby, "Static Site Generator", "Ruby on Rails"', "ajax": "1", }, ) self.assertEqual(resp.status_code, 200)
def test_my_list_titles(self): a_personal_list = ListFactory() a_personal_list.save() a_default_list = ListFactory() a_default_list.title = "Bookmarks" a_default_list.save() link = LinkFactory() link.save() listlink = ListLinks.objects.create(alist=a_personal_list, links=link) listlink.save() listlink = ListLinks.objects.create(alist=a_default_list, links=link) listlink.save() self.assertEqual( list( List.objects.my_list_titles(a_personal_list.owner, link.pk).values_list('title', flat=True)), [a_personal_list.title])
def test_get_tags(self): """test list tags""" alist = ListFactory() alist.save() self.assertEqual(list(alist.get_tags()), []) link = LinkFactory() link.save() tag = TagFactory() tag.save() link.tags.add(tag) link.save() listlink = ListLinks.objects.create(alist=alist, links=link) self.assertEqual(list(alist.get_tags()), [(u'Django', u'django', 1)])
def test_user_lists(self): a_personal_list = ListFactory() a_personal_list.save() a_default_list = ListFactory() a_default_list.title = "Bookmarks" a_default_list.save() link = LinkFactory() link.save() listlink = ListLinks.objects.create( alist=a_personal_list, links=link ) listlink.save() listlink = ListLinks.objects.create( alist=a_default_list, links=link ) listlink.save() self.assertEqual( list(List.objects.user_lists(a_personal_list.owner, False)), [a_personal_list])
def test_my_list_titles(self): a_personal_list = ListFactory() a_personal_list.save() a_default_list = ListFactory() a_default_list.title = "Bookmarks" a_default_list.save() link = LinkFactory() link.save() listlink = ListLinks.objects.create( alist=a_personal_list, links=link ) listlink.save() listlink = ListLinks.objects.create( alist=a_default_list, links=link ) listlink.save() self.assertEqual( list(List.objects.my_list_titles(a_personal_list.owner, link.pk).values_list('title', flat=True)), [a_personal_list.title])
def test_get_absolute_url(self): """test list absolute url""" alist = ListFactory() alist.save() self.assertEqual(alist.get_absolute_url(), '/ls/1/my-own-public-list/')
def setUp(self): self.profile = ProfileFactory() self.user = self.profile.user self.list = ListFactory() self.link = LinkFactory()
class UserprofileTestCase(TestCase): def setUp(self): self.profile = ProfileFactory() self.user = self.profile.user self.list = ListFactory() self.link = LinkFactory() def model_test(self): self.list.save() self.assertTrue(self.list.pk) self.list.delete() self.assertEqual(self.list.pk, None) def test_lists(self): readinglist = ListFactory() readinglist.title = "Reading list" readinglist.owner = self.user readinglist.save() alist = ListFactory() alist.owner = self.user alist.save() link = LinkFactory() link.author = self.user link.save() listlink = ListLinks.objects.create( alist=alist, links=link ) listlink.add() self.assertEqual(List.objects.personal_lists(self.user)[0], alist) self.assertEqual(List.objects.my_list_titles(self.user, link.pk)[0], alist) def test_latest(self): import datetime alist2 = ListFactory() alist2.title = "Latest" alist2.owner = self.user alist2.pubdate = datetime.date.today() alist2.save() alist = ListFactory() alist.title = "Not the latest" alist.owner = self.user alist.pubdate = datetime.date.today()-datetime.timedelta(10) alist.save() self.assertEqual(List.objects.latest(limit=1)[0], alist2) def test_most_viewed(self): alist = ListFactory() alist.title = "Most viewed" alist.owner = self.user alist.views = 100 alist.save() alist2 = ListFactory() alist2.title = "Not the most viewed" alist2.owner = self.user alist2.views = 10 alist2.save() self.assertEqual(List.objects.most_viewed(limit=1)[0], alist) def test_slug(self): alist = ListFactory() alist.owner = self.user alist.save() alist2 = ListFactory() alist2.owner = self.user alist2.save() self.assertEqual(alist.slug, 'my-own-public-list') self.assertEqual(alist2.slug, 'my-own-public-list-1') def test_get_tags(self): alist = ListFactory() alist.owner = self.user alist.save() link = LinkFactory() link.author = self.user link.save() self.assertEqual(link.get_categories(), "") link.tags.add('book') link.tags.add('article') link.tags.add('something') listlink = ListLinks.objects.create( alist=alist, links=link ) listlink.add() self.assertEqual(alist.get_tags()[0], (u'article', u'article', 1)) self.assertEqual(alist.get_tags()[1], (u'book', u'book', 1)) self.assertEqual(alist.get_tags()[2], (u'something', u'something', 1)) listlink.remove() def test_votes(self): profile2 = ProfileFactory() user2 = profile2.user alist = ListFactory() alist.owner = user2 alist.save() self.assertEqual(alist.get_votes(), 0) alist.vote(self.user) self.assertEqual(alist.get_votes(), 1) alist.unvote(self.user) self.assertEqual(alist.get_votes(), 0)
def test_latest(self): import datetime alist2 = ListFactory() alist2.title = "Latest" alist2.owner = self.user alist2.pubdate = datetime.date.today() alist2.save() alist = ListFactory() alist.title = "Not the latest" alist.owner = self.user alist.pubdate = datetime.date.today()-datetime.timedelta(10) alist.save() self.assertEqual(List.objects.latest(limit=1)[0], alist2)
def test_lists(self): readinglist = ListFactory() readinglist.title = "Reading list" readinglist.owner = self.user readinglist.save() alist = ListFactory() alist.owner = self.user alist.save() link = LinkFactory() link.author = self.user link.save() listlink = ListLinks.objects.create( alist=alist, links=link ) listlink.add() self.assertEqual(List.objects.personal_lists(self.user)[0], alist) self.assertEqual(List.objects.my_list_titles(self.user, link.pk)[0], alist)
def test_votes(self): profile2 = ProfileFactory() user2 = profile2.user alist = ListFactory() alist.owner = user2 alist.save() self.assertEqual(alist.get_votes(), 0) alist.vote(self.user) self.assertEqual(alist.get_votes(), 1) alist.unvote(self.user) self.assertEqual(alist.get_votes(), 0)
def test_model(self): """test list model exists""" alist = ListFactory() alist.save() self.assertTrue(alist.pk)
def test_ajax_add_to_list_or_create(self): import simplejson resp = self.client.get(reverse('ajax-add-to-list-or-create')) # not authenticated self.assertEqual(resp.content, simplejson.dumps({'result': 'fail'})) user = UserFactory() user.save() self.client.login(username=user.username, password='******') # authenticated but no post data resp = self.client.get(reverse('ajax-add-to-list-or-create')) self.assertEqual(resp.content, simplejson.dumps({'result': 'fail'})) link = LinkFactory() link.save() link2 = LinkFactory() link2.title = 'new link' link2.save() # authenticated and posting fake content resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 't': 'haxx0r', }) self.assertEqual(resp.status_code, 404) # authenticated and adding link to default nonexistant bookmark list resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 't': 'bookmark', }) self.assertEqual(resp.content, simplejson.dumps({'result': 'added'})) # authenticated and adding link to default existing bookmark list resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link2.pk, 't': 'bookmark', }) self.assertEqual(resp.content, simplejson.dumps({'result': 'added'})) # authenticated and adding link to default nonexistant reading list resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 't': 'toread', }) self.assertEqual(resp.content, simplejson.dumps({'result': 'added'})) # authenticated and adding link to default existing reading list resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link2.pk, 't': 'toread', }) self.assertEqual(resp.content, simplejson.dumps({'result': 'added'})) # authenticated and removing link from default existing reading list resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link2.pk, 't': 'toread', }) self.assertEqual(resp.content, simplejson.dumps({'result': 'removed'})) # authenticated and adding/remove link to un/existing own list list resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 'ls': 43212234 }) self.assertEqual(resp.status_code, 404) alist = ListFactory() alist.save() resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 'ls': alist.pk }) self.assertEqual(resp.content, simplejson.dumps({'result': 'added'})) resp = self.client.post(reverse('ajax-add-to-list-or-create'), { 'lk': link.pk, 'ls': alist.pk }) self.assertEqual(resp.content, simplejson.dumps({'result': 'removed'}))
def test_most_viewed(self): alist = ListFactory() alist.title = "Most viewed" alist.owner = self.user alist.views = 100 alist.save() alist2 = ListFactory() alist2.title = "Not the most viewed" alist2.owner = self.user alist2.views = 10 alist2.save() self.assertEqual(List.objects.most_viewed(limit=1)[0], alist)