|
|
@ -2,6 +2,8 @@ from django.test import TestCase, Client |
|
|
|
from django.urls import reverse |
|
|
|
from django.contrib.auth import get_user_model |
|
|
|
from .models import UserProfile, Follow |
|
|
|
from django.core.files.uploadedfile import SimpleUploadedFile |
|
|
|
import json |
|
|
|
|
|
|
|
User = get_user_model() |
|
|
|
|
|
|
@ -31,3 +33,84 @@ class MyPageViewTest(TestCase): |
|
|
|
def test_my_page_view(self): |
|
|
|
response = self.client.get(reverse('my_page')) |
|
|
|
self.assertEqual(response.status_code, 200) |
|
|
|
|
|
|
|
class MyPageViewsTest(TestCase): |
|
|
|
def setUp(self): |
|
|
|
self.client = Client() |
|
|
|
self.user = User.objects.create_user(username='testuser3', password='testpass') |
|
|
|
self.client.login(username='testuser3', password='testpass') |
|
|
|
|
|
|
|
def test_my_page_view_logged_in(self): |
|
|
|
response = self.client.get(reverse('my_page')) |
|
|
|
self.assertEqual(response.status_code, 200) |
|
|
|
|
|
|
|
def test_my_page_view_not_logged_in(self): |
|
|
|
self.client.logout() |
|
|
|
response = self.client.get(reverse('my_page')) |
|
|
|
self.assertEqual(response.status_code, 302) |
|
|
|
|
|
|
|
def test_upload_avatar_success(self): |
|
|
|
image = SimpleUploadedFile('avatar.png', b'file_content', content_type='image/png') |
|
|
|
response = self.client.post(reverse('upload_avatar'), {'avatar': image}) |
|
|
|
data = json.loads(response.content) |
|
|
|
self.assertTrue(data['success']) |
|
|
|
self.assertIn('avatar_url', data) |
|
|
|
|
|
|
|
def test_upload_avatar_no_file(self): |
|
|
|
response = self.client.post(reverse('upload_avatar')) |
|
|
|
data = json.loads(response.content) |
|
|
|
self.assertFalse(data['success']) |
|
|
|
self.assertEqual(data['message'], '没有接收到avatar文件') |
|
|
|
|
|
|
|
def test_upload_avatar_not_logged_in(self): |
|
|
|
self.client.logout() |
|
|
|
response = self.client.post(reverse('upload_avatar')) |
|
|
|
data = json.loads(response.content) |
|
|
|
self.assertFalse(data['success']) |
|
|
|
|
|
|
|
def test_upload_banner_success(self): |
|
|
|
image = SimpleUploadedFile('banner.png', b'file_content', content_type='image/png') |
|
|
|
response = self.client.post(reverse('upload_banner'), {'personal_background': image}) |
|
|
|
data = json.loads(response.content) |
|
|
|
self.assertTrue(data['success']) |
|
|
|
self.assertIn('bg_url', data) |
|
|
|
|
|
|
|
def test_upload_banner_no_file(self): |
|
|
|
response = self.client.post(reverse('upload_banner')) |
|
|
|
data = json.loads(response.content) |
|
|
|
self.assertFalse(data['success']) |
|
|
|
self.assertEqual(data['message'], '未收到文件') |
|
|
|
|
|
|
|
def test_upload_banner_not_logged_in(self): |
|
|
|
self.client.logout() |
|
|
|
response = self.client.post(reverse('upload_banner')) |
|
|
|
data = json.loads(response.content) |
|
|
|
self.assertFalse(data['success']) |
|
|
|
|
|
|
|
def test_upload_pagebg_success(self): |
|
|
|
image = SimpleUploadedFile('pagebg.png', b'file_content', content_type='image/png') |
|
|
|
response = self.client.post(reverse('upload_pagebg'), {'page_background': image}) |
|
|
|
data = json.loads(response.content) |
|
|
|
self.assertTrue(data['success']) |
|
|
|
self.assertIn('bg_url', data) |
|
|
|
|
|
|
|
def test_upload_pagebg_no_file(self): |
|
|
|
response = self.client.post(reverse('upload_pagebg')) |
|
|
|
data = json.loads(response.content) |
|
|
|
self.assertFalse(data['success']) |
|
|
|
self.assertEqual(data['message'], '未收到文件') |
|
|
|
|
|
|
|
def test_upload_pagebg_not_logged_in(self): |
|
|
|
self.client.logout() |
|
|
|
response = self.client.post(reverse('upload_pagebg')) |
|
|
|
data = json.loads(response.content) |
|
|
|
self.assertFalse(data['success']) |
|
|
|
|
|
|
|
def test_delete_post_not_logged_in(self): |
|
|
|
self.client.logout() |
|
|
|
response = self.client.post(reverse('delete_post', args=[1])) |
|
|
|
self.assertEqual(response.status_code, 302) |
|
|
|
|
|
|
|
def test_delete_post_invalid(self): |
|
|
|
response = self.client.post(reverse('delete_post', args=[9999])) |
|
|
|
self.assertEqual(response.status_code, 404) |