예제 #1
0
    def test_category_content(self):
        category_details = {
            'title': 'Nice things',
            'description': 'Chit chat blah blah'
        }

        category = CategoryFactory.create(**category_details)

        category_content = {
            'title': 'category content title',
            'description': 'category content description',
            'video_url': 'http://vimeo.com',
            'link_text': 'Find out more...',
            'link_url': 'http://link.com',
            'category': category
        }

        CategoryContentFactory.create(**category_content)

        url = reverse('category-detail', kwargs={'slug': category.slug})

        response = self.client.get(url)
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        data = json.loads(response.content)
        self.assertEquals(data['contents'][0]['title'],
                          'category content title')
        self.assertEquals(data['contents'][0]['description'],
                          'category content description')
        self.assertEquals(data['contents'][0]['video_url'], 'http://vimeo.com')
        self.assertEquals(data['contents'][0]['link_text'], 'Find out more...')
        self.assertEquals(data['contents'][0]['link_url'], 'http://link.com')
        self.assertTrue(
            all(field in ('title', 'description', 'image', 'video_url',
                          'link_text', 'link_url', 'sequence')
                for field in list(data['contents'][0].keys())))
예제 #2
0
    def test_partner_project(self):
        category_details = {
            'title': 'Nice things',
            'description': 'Chit chat blah blah'
        }

        cat = CategoryFactory.create(**category_details)
        cat.set_current_language('nl')
        cat.title = 'Leuke dingen'
        cat.save()

        url = reverse('category-list')

        response = self.client.get(url, HTTP_X_APPLICATION_LANGUAGE='en')
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        data = json.loads(response.content)
        self.assertEquals(len(data), 1)
        self.assertEquals(data[0]['title'], 'Nice things')

        # Confirm that we can retrieve dutch titles too.
        response = self.client.get(url, HTTP_X_APPLICATION_LANGUAGE='nl')
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        data = json.loads(response.content)
        self.assertEquals(len(data), 1)
        self.assertEquals(data[0]['title'], 'Leuke dingen')
예제 #3
0
파일: test_api.py 프로젝트: raux/bluebottle
    def test_partner_project(self):
        cat = {
            'title': 'Nice things',
            'description': 'Chit chat blah blah'
        }

        CategoryFactory.create(**cat)

        url = reverse('category-list')

        response = self.client.get(url)
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        data = json.loads(response.content)
        self.assertEquals(len(data), 1)
        self.assertEquals(data[0]['title'], cat['title'])

        # Confirm that we can restrieve dutch titles too.
        response = self.client.get(url, {'language': 'nl'})
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        data = json.loads(response.content)
        self.assertEquals(len(data), 1)
        self.assertEquals(data[0]['title'], cat['title'])
예제 #4
0
    def test_partner_project(self):
        cat = {
            'title': 'Nice things',
            'description': 'Chit chat blah blah'
        }

        CategoryFactory.create(**cat)

        url = reverse('category-list')

        response = self.client.get(url)
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        data = json.loads(response.content)
        self.assertEquals(len(data), 1)
        self.assertEquals(data[0]['title'], cat['title'])

        # Confirm that we can restrieve dutch titles too.
        response = self.client.get(url, {'language': 'nl'})
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        data = json.loads(response.content)
        self.assertEquals(len(data), 1)
        self.assertEquals(data[0]['title'], cat['title'])
예제 #5
0
    def test_vote_on_second_project_in_same_cateogry(self):
        category = CategoryFactory.create()

        self.project1.categories = [category]
        self.project1.save()

        self.project2.categories = [category]
        self.project2.save()

        self.client.post(self.vote_url, {'project': self.project1.slug},
                         token=self.user_token)
        response = self.client.post(self.vote_url,
                                    {'project': self.project2.slug},
                                    token=self.user_token)
        self.assertEqual(response.status_code, 400)
        self.assertEqual(
            unicode(response.data['non_field_errors'][0]), u'You already voted.'
        )
예제 #6
0
    def test_vote_already_votes_twice(self):
        category = CategoryFactory.create()

        self.project1.categories = [category]
        self.project1.save()

        self.project2.categories = [category]
        self.project2.save()

        self.project3.categories = [category]
        self.project3.save()

        VoteFactory.create(voter=self.user, project=self.project1)
        VoteFactory.create(voter=self.user, project=self.project2)

        response = self.client.post(self.vote_url,
                                    {'project': self.project3.slug},
                                    token=self.user_token)
        self.assertEqual(response.status_code, 400)
        self.assertEqual(
            unicode(response.data['non_field_errors'][0]), u'You already voted.'
        )
예제 #7
0
    def test_save_slug(self):
        category = CategoryFactory(title='test-title')
        category.save()

        self.assertEqual(category.slug, 'test-title')
예제 #8
0
    def test_save_slug(self):
        category = CategoryFactory(title='test-title')
        category.save()

        self.assertEqual(category.slug, 'test-title')