예제 #1
0
    def test_unlike_art_get(self):
        """
            test a get request to the unlike view authenticated
        """
        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user'
        )
        self.client.login(username=user.username, password='******')
        s = self.client.session
        s['user_id'] = user.id
        s.save()
        category = fixtures.create_category(name='Test Category')

        #HACK: create the art directory for the user that matches what we insert into the db
        os.system('mkdir test_photos/art/%s' % user.id)
        os.system('cp art/tests/resources/test_photo.jpg test_photos/art/%s/' % user.id)

        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo=('test_photos/art/%s/test_photo.jpg' % user.id), title='Test Art', description='Some art'
        )

        like = fixtures.create_art_like(user_id=user.id, art_id=art.id)

        url = reverse("art.views.unlike_art", args=(art.id, ))
        resp = self.client.get(url)

        self.assertEqual(resp.status_code, 405)
예제 #2
0
    def test_view_profile(self):
        user = fixtures.create_user(
            username='******', email="*****@*****.**", password='******', first_name='Test', last_name='User'
        )
        #HACK: create the art directory for the user that matches what we insert into the db
        os.system('mkdir test_photos/user/%s' % user.id)
        os.system('cp user_profile/tests/resources/test_user.jpg test_photos/user/%s/' % user.id)
        os.system('mkdir test_photos/art/%s' % user.id)
        os.system('cp art/tests/resources/test_photo.jpg test_photos/art/%s/' % user.id)

        user_profile = fixtures.create_user_profile(
            user_id=user.id, twitter='test_handle', bio='test_bio', photo=('test_photos/user/%s/test_user.jpg' % user.id)
        )

        category = fixtures.create_category(name='Test Category')

        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo=('test_photos/art/%s/test_photo.jpg' % user.id), title='Test Art', description='Some art'
        )

        url = reverse("user_profile.views.view_profile", args=(user.id, ))

        resp = self.client.get(url)

        self.assertEqual(resp.status_code, 200)
예제 #3
0
    def test_my_art_admin_non_artist_authenticated(self):
        """
            test a get request to the my artist admin view as an authenticated non artist
        """
        art_user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='art', last_name='user'
        )

        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user', is_artist=False
        )
        category = fixtures.create_category(name='Test Category')
        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo=('test_photos/art/%s/test_photo.jpg' % art_user.id), title='Test Art', description='Some art'
        )
        like = fixtures.create_art_like(user_id=user.id, art_id=art.id)

        self.client.login(username=user.username, password='******')
        s = self.client.session
        s['user_id'] = user.id
        s.save()

        url = reverse("art.views.my_art_admin")
        resp = self.client.get(url)

        self.assertEqual(resp.status_code, 302)
예제 #4
0
    def test_category_creation(self):
        """
            Test creation of a category record
        """

        category = fixtures.create_category(name='Test Category')

        self.assertTrue(isinstance(category, Category))
예제 #5
0
 def test_valid_art_form(self):
     category = fixtures.create_category(name='Test Category')
     tag = fixtures.create_tag(name='Test Tag')
     upload_file = open('art/tests/resources/test_photo.jpg', 'rb')
     post_dict = {'title': 'Test Title', 'description': 'Test Description'}
     file_dict = {'photo': SimpleUploadedFile(upload_file.name, upload_file.read())}
     form = ArtForm(post_dict, file_dict)
     self.assertTrue(form.is_valid())
예제 #6
0
    def test_view_art_unauthenticated(self):
        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user'
        )
        category = fixtures.create_category(name='Test Category')
        os.system('mkdir test_photos/art/%s' % user.id)
        os.system('cp art/tests/resources/test_photo.jpg test_photos/art/%s/' % user.id)
        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo=('test_photos/art/%s/test_photo.jpg' % user.id), title='Test Art', description='Some art'
        )
        url = reverse("art.views.view_art_single", args=(art.id, ))

        resp = self.client.get(url)

        self.assertEqual(resp.status_code, 200)
예제 #7
0
    def test_art_creation(self):
        """
            Test creation of an art record
        """

        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user'
        )

        category = fixtures.create_category(name='Test Category')
        art_photo = File('art/tests/resources/test_photo.jpg')
        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo=art_photo, title='Test Art', description='Some art'
        )

        self.assertTrue(isinstance(art, Art))
예제 #8
0
    def test_handle_art_activation_unauthenticated_post_(self):
        """
            test a post request to the handle_art_activation unauthenticated
        """
        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user'
        )
        category = fixtures.create_category(name='Test Category')
        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo=('test_photos/art/%s/test_photo.jpg' % user.id), title='Test Art', description='Some art'
        )
        like = fixtures.create_art_like(user_id=user.id, art_id=art.id)

        url = reverse("art.views.handle_art_activation", args=(art.id, ))
        resp = self.client.post(url)
        self.assertEqual(resp.status_code, 302)
예제 #9
0
    def test_art_index_authenticated(self):
        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user'
        )
        category = fixtures.create_category(name='Test Category')
        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo=('test_photos/art/%s/test_photo.jpg' % user.id), title='Test Art', description='Some art'
        )
        like = fixtures.create_art_like(user_id=user.id, art_id=art.id)
        self.client.login(username=user.username, password='******')
        s = self.client.session
        s['user_id'] = user.id
        s.save()
        url = reverse("art.views.index")
        resp = self.client.get(url)

        self.assertEqual(resp.status_code, 200)
예제 #10
0
    def test_like_creation(self):
        """
            test creation of an art like record
        """

        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user'
        )

        category = fixtures.create_category(name='Test Category')

        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo='test/photo', title='Test Art', description='Some art'
        )

        art_like = fixtures.create_art_like(user_id=user.id, art_id=art.id)

        self.assertTrue(isinstance(art_like, Like))
예제 #11
0
    def test_handle_art_action_get(self):
        """
            test a get request to the handle_art_activation
        """
        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user'
        )
        category = fixtures.create_category(name='Test Category')
        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo=('test_photos/art/%s/test_photo.jpg' % user.id), title='Test Art', description='Some art'
        )
        like = fixtures.create_art_like(user_id=user.id, art_id=art.id)
        self.client.login(username=user.username, password='******')
        s = self.client.session
        s['user_id'] = user.id
        s.save()

        url = reverse("art.views.handle_art_activation", args=(art.id, ))
        resp = self.client.get(url)
        self.assertEqual(resp.status_code, 405)
예제 #12
0
    def test_handle_art_deactivation_authenticated_post_artist(self):
        """
            test a post request to the handle_art_activation deactivation authenticated with an artist user
        """
        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user'
        )
        category = fixtures.create_category(name='Test Category')
        art = fixtures.create_art(
            user_id=user.id, category=category.id,
            photo=('test_photos/art/%s/test_photo.jpg' % user.id), active=False,
            title='Test Art', description='Some art'
        )
        like = fixtures.create_art_like(user_id=user.id, art_id=art.id)
        self.client.login(username=user.username, password='******')
        s = self.client.session
        s['user_id'] = user.id
        s.save()

        url = reverse("art.views.handle_art_activation", args=(art.id, ))
        resp = self.client.post(url)
        self.assertEqual(resp.status_code, 200)
        self.assertEqual(resp.__dict__.get('_container')[0], 'Deactivate')
예제 #13
0
    def test_art_tag_creation(self):
        """
            test creation of an art record with tags, and retrieving the tags with the art get_tags
            function
        """

        user = fixtures.create_user(
            username='******', password='******', email='*****@*****.**', first_name='test', last_name='user'
        )

        category = fixtures.create_category(name='Test Category')

        art = fixtures.create_art(
            user_id=user.id, category=category.id, photo='test/photo', title='Test Art', description='Some art'
        )

        tag = fixtures.create_tag(name='Test Tag')

        art_tag = fixtures.create_art_tag(art_id=art.id, tag_id=tag.id)

        self.assertTrue(isinstance(art_tag, ArtTag))

        tags = art.get_tags()
        self.assertEqual(tags, 'Test Tag')