Ejemplo n.º 1
0
    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)
Ejemplo n.º 2
0
    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)
Ejemplo n.º 3
0
    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)
Ejemplo n.º 4
0
    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)
Ejemplo n.º 5
0
    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)
Ejemplo n.º 6
0
    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)
Ejemplo n.º 7
0
    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)
Ejemplo n.º 8
0
    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)
Ejemplo n.º 9
0
    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)
Ejemplo n.º 10
0
    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')
Ejemplo n.º 11
0
    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)
Ejemplo n.º 12
0
    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)
Ejemplo n.º 13
0
    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)
Ejemplo n.º 14
0
    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')
Ejemplo n.º 15
0
 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)
Ejemplo n.º 16
0
    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)
Ejemplo n.º 17
0
    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)
Ejemplo n.º 18
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()
Ejemplo n.º 19
0
    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')
Ejemplo n.º 20
0
    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)
Ejemplo n.º 21
0
    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)
Ejemplo n.º 22
0
    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)
Ejemplo n.º 23
0
    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)
Ejemplo n.º 24
0
    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)
Ejemplo n.º 25
0
    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)])
Ejemplo n.º 26
0
    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')
Ejemplo n.º 27
0
    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)
Ejemplo n.º 28
0
    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")
Ejemplo n.º 29
0
 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)
Ejemplo n.º 30
0
    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)
Ejemplo n.º 31
0
    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')
Ejemplo n.º 32
0
    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])
Ejemplo n.º 33
0
    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)
Ejemplo n.º 34
0
    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)
Ejemplo n.º 35
0
    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])
Ejemplo n.º 36
0
    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)])
Ejemplo n.º 37
0
    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])
Ejemplo n.º 38
0
    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])
Ejemplo n.º 39
0
 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/')
Ejemplo n.º 40
0
 def setUp(self):
     self.profile = ProfileFactory()
     self.user = self.profile.user
     self.list = ListFactory()
     self.link = LinkFactory()
Ejemplo n.º 41
0
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)
Ejemplo n.º 42
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)
Ejemplo n.º 43
0
    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)
Ejemplo n.º 44
0
    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)
Ejemplo n.º 45
0
 def test_model(self):
     """test list model exists"""
     alist = ListFactory()
     alist.save()
     self.assertTrue(alist.pk)
Ejemplo n.º 46
0
    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'}))
Ejemplo n.º 47
0
    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'}))
Ejemplo n.º 48
0
    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)