def test_saving_and_retrieving_post(self): first_post = Post() first_post.board = self.default_board first_post.title = 'first post of title' first_post.content = 'first post of content' first_post.ip = '127.0.0.1' first_post.save() second_post = Post() second_post.board = self.default_board second_post.title = 'second post of title' second_post.content = 'second post of content' second_post.ip = '127.0.0.1' second_post.save() saved_posts = Post.objects.all() self.assertEqual(saved_posts.count(), 2) first_saved_post = saved_posts[0] second_saved_post = saved_posts[1] self.assertEqual(first_saved_post.title, 'first post of title') self.assertEqual(first_saved_post.content, 'first post of content') self.assertEqual(first_saved_post.ip, '127.0.0.1') self.assertEqual(second_saved_post.title, 'second post of title') self.assertEqual(second_saved_post.content, 'second post of content')
def test_cannot_save_empty_content_post(self): post = Post() post.board = self.default_board post.title = 'This is a title' post.content = '' with self.assertRaises(ValidationError): post.save() post.full_clean()
def test_post_save(self): post = Post() post.user = User.objects.get(pk=1) post.title = '제목' post.content = '내용' post.tags = 'abc' post.status = 'd' post.save() saved_post = Post.objects.first() self.assertEqual(saved_post, post)
def test_is_delete_change_to_True_after_delete_post(self): delete_post = Post() delete_post.board = self.default_board delete_post.title = 'post of title' delete_post.content = 'post of content' delete_post.ip = '192.168.0.1' delete_post.save() self.assertEqual(delete_post.is_deleted, False) self.client.post(reverse('board:delete_post', args=[delete_post.id])) delete_post.refresh_from_db() self.assertEqual(delete_post.is_deleted, True)
def new_post(request): if request.method == 'POST': form = PostForm(request.POST) if form.is_valid(): post = Post() post.title = request.POST.get('title') post.description = request.POST.get('description') post.detailed_description = request.POST.get( 'detailed_description') post.tags = request.POST.getlist('tags')[0].split(' ') post.author = request.user.get_full_name().split(" ")[0] post.publication_date = datetime.date.today() post.email = request.POST.get('email') post.save() return HttpResponseRedirect('/board/') else: form = PostForm() form.fields['author'].initial = request.user.username return render(request, 'form.html', {'form': form})