Пример #1
0
 def test_11avatar_set_to_default(self):
     """Test Avatar.set_to_default()
     Requires users fixture"""
     
     self.set_test_avatar_paths_settings()
     
     from website.cardstories.avatar import Avatar
     from django.contrib.auth.models import User
     
     player_id = 1
     user = User.objects.get(id=player_id)
     avatar = Avatar(user)
     
     avatar.generate_all_sizes = Mock()
     avatar.set_to_default()
     avatar.generate_all_sizes.assert_called_once_with(os.path.join(settings.MEDIA_ROOT,
                                                                    settings.AVATARS_DEFAULT_SUBPATH,
                                                                    '%d.jpg' % player_id))
     self.assertTrue(os.path.isfile('/tmp/cardstories-test/avatars/cache/000/000/%d_orig.jpg' % player_id))
     
     self.unset_test_avatar_paths_settings()
Пример #2
0
    def test_11avatar_set_to_default(self):
        """Test Avatar.set_to_default()
        Requires users fixture"""

        self.set_test_avatar_paths_settings()

        from website.cardstories.avatar import Avatar
        from django.contrib.auth.models import User

        player_id = 1
        user = User.objects.get(id=player_id)
        avatar = Avatar(user)

        avatar.generate_all_sizes = Mock()
        avatar.set_to_default()
        avatar.generate_all_sizes.assert_called_once_with(
            os.path.join(settings.MEDIA_ROOT, settings.AVATARS_DEFAULT_SUBPATH,
                         '%d.jpg' % player_id))
        self.assertTrue(
            os.path.isfile(
                '/tmp/cardstories-test/avatars/cache/000/000/%d_orig.jpg' %
                player_id))

        self.unset_test_avatar_paths_settings()
Пример #3
0
 def test_13avatar_update_from_response(self):
     """Test Avatar.update_from_response()
     Requires users fixture"""
     
     self.set_test_avatar_paths_settings()
     
     from website.cardstories.avatar import Avatar
     from django.contrib.auth.models import User
     
     player_id = 1
     user = User.objects.get(id=player_id)
     avatar = Avatar(user)
     avatar.generate_all_sizes = Mock()
     avatar.set_to_default = Mock()
     orig_image_path = avatar.get_path(size='orig')
     
     # 404
     response = Mock()
     response.status_code = 404
     avatar.update_from_response(response)
     avatar.set_to_default.assert_called_once_with()
     self.assertFalse(avatar.generate_all_sizes.called)
     avatar.set_to_default.reset_mock()
     
     # Not an image
     response.status_code = 200
     response.headers = {'Content-Type': 'text/html'}
     avatar.update_from_response(response)
     avatar.set_to_default.assert_called_once_with()
     self.assertFalse(avatar.generate_all_sizes.called)
     avatar.set_to_default.reset_mock()
     
     # Got an image
     response.status_code = 200
     response.headers = {'Content-Type': 'image/png'}
     response.content = "image content"
     avatar.update_from_response(response)
     avatar.generate_all_sizes.assert_called_once_with(orig_image_path)
     self.assertFalse(avatar.set_to_default.called)
     self.assertTrue(os.path.isfile(orig_image_path))
     self.assertEqual(open(orig_image_path).read(), "image content")
     
     self.unset_test_avatar_paths_settings()
Пример #4
0
    def test_13avatar_update_from_response(self):
        """Test Avatar.update_from_response()
        Requires users fixture"""

        self.set_test_avatar_paths_settings()

        from website.cardstories.avatar import Avatar
        from django.contrib.auth.models import User

        player_id = 1
        user = User.objects.get(id=player_id)
        avatar = Avatar(user)
        avatar.generate_all_sizes = Mock()
        avatar.set_to_default = Mock()
        orig_image_path = avatar.get_path(size='orig')

        # 404
        response = Mock()
        response.status_code = 404
        avatar.update_from_response(response)
        avatar.set_to_default.assert_called_once_with()
        self.assertFalse(avatar.generate_all_sizes.called)
        avatar.set_to_default.reset_mock()

        # Not an image
        response.status_code = 200
        response.headers = {'Content-Type': 'text/html'}
        avatar.update_from_response(response)
        avatar.set_to_default.assert_called_once_with()
        self.assertFalse(avatar.generate_all_sizes.called)
        avatar.set_to_default.reset_mock()

        # Got an image
        response.status_code = 200
        response.headers = {'Content-Type': 'image/png'}
        response.content = "image content"
        avatar.update_from_response(response)
        avatar.generate_all_sizes.assert_called_once_with(orig_image_path)
        self.assertFalse(avatar.set_to_default.called)
        self.assertTrue(os.path.isfile(orig_image_path))
        self.assertEqual(open(orig_image_path).read(), "image content")

        self.unset_test_avatar_paths_settings()