mirror of
https://github.com/discourse/discourse.git
synced 2025-03-09 14:34:35 +00:00
Prefabricated post by user
This commit is contained in:
parent
0578809460
commit
73f25311fa
@ -3,7 +3,7 @@
|
|||||||
require 'rails_helper'
|
require 'rails_helper'
|
||||||
|
|
||||||
shared_examples 'finding and showing post' do
|
shared_examples 'finding and showing post' do
|
||||||
fab!(:post) { Fabricate(:post, user: user) }
|
let!(:post) { post_by_user }
|
||||||
|
|
||||||
it "ensures the user can't see the post" do
|
it "ensures the user can't see the post" do
|
||||||
topic = post.topic
|
topic = post.topic
|
||||||
@ -61,6 +61,7 @@ describe PostsController do
|
|||||||
fab!(:user) { Fabricate(:user) }
|
fab!(:user) { Fabricate(:user) }
|
||||||
fab!(:category) { Fabricate(:category) }
|
fab!(:category) { Fabricate(:category) }
|
||||||
fab!(:topic) { Fabricate(:topic) }
|
fab!(:topic) { Fabricate(:topic) }
|
||||||
|
fab!(:post_by_user) { Fabricate(:post, user: user) }
|
||||||
let(:public_post) { Fabricate(:post, user: user, topic: topic) }
|
let(:public_post) { Fabricate(:post, user: user, topic: topic) }
|
||||||
let(:topicless_post) { Fabricate(:post, user: user, raw: '<p>Car 54, where are you?</p>') }
|
let(:topicless_post) { Fabricate(:post, user: user, raw: '<p>Car 54, where are you?</p>') }
|
||||||
|
|
||||||
@ -299,7 +300,7 @@ describe PostsController do
|
|||||||
describe '#update' do
|
describe '#update' do
|
||||||
include_examples 'action requires login', :put, "/posts/2.json"
|
include_examples 'action requires login', :put, "/posts/2.json"
|
||||||
|
|
||||||
fab!(:post) { Fabricate(:post, user: user) }
|
let!(:post) { post_by_user }
|
||||||
let(:update_params) do
|
let(:update_params) do
|
||||||
{
|
{
|
||||||
post: { raw: 'edited body', edit_reason: 'typo' },
|
post: { raw: 'edited body', edit_reason: 'typo' },
|
||||||
@ -438,7 +439,7 @@ describe PostsController do
|
|||||||
|
|
||||||
describe '#bookmark' do
|
describe '#bookmark' do
|
||||||
include_examples 'action requires login', :put, "/posts/2/bookmark.json"
|
include_examples 'action requires login', :put, "/posts/2/bookmark.json"
|
||||||
fab!(:post) { Fabricate(:post, user: user) }
|
let!(:post) { post_by_user }
|
||||||
|
|
||||||
describe 'when logged in' do
|
describe 'when logged in' do
|
||||||
before do
|
before do
|
||||||
@ -464,7 +465,7 @@ describe PostsController do
|
|||||||
let(:post_action) { PostActionCreator.create(user, post, :bookmark).post_action }
|
let(:post_action) { PostActionCreator.create(user, post, :bookmark).post_action }
|
||||||
|
|
||||||
it "returns the right response when post is not bookmarked" do
|
it "returns the right response when post is not bookmarked" do
|
||||||
put "/posts/#{Fabricate(:post, user: user).id}/bookmark.json"
|
put "/posts/#{post_by_user.id}/bookmark.json"
|
||||||
expect(response.status).to eq(404)
|
expect(response.status).to eq(404)
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -578,7 +579,7 @@ describe PostsController do
|
|||||||
sign_in(user)
|
sign_in(user)
|
||||||
end
|
end
|
||||||
|
|
||||||
fab!(:post) { Fabricate(:post, user: user) }
|
let!(:post) { post_by_user }
|
||||||
|
|
||||||
it "raises an error if the user doesn't have permission to wiki the post" do
|
it "raises an error if the user doesn't have permission to wiki the post" do
|
||||||
put "/posts/#{post.id}/wiki.json", params: { wiki: 'true' }
|
put "/posts/#{post.id}/wiki.json", params: { wiki: 'true' }
|
||||||
@ -633,7 +634,7 @@ describe PostsController do
|
|||||||
sign_in(user)
|
sign_in(user)
|
||||||
end
|
end
|
||||||
|
|
||||||
fab!(:post) { Fabricate(:post, user: user) }
|
let!(:post) { post_by_user }
|
||||||
|
|
||||||
it "raises an error if the user doesn't have permission to change the post type" do
|
it "raises an error if the user doesn't have permission to change the post type" do
|
||||||
put "/posts/#{post.id}/post_type.json", params: { post_type: 2 }
|
put "/posts/#{post.id}/post_type.json", params: { post_type: 2 }
|
||||||
@ -654,7 +655,7 @@ describe PostsController do
|
|||||||
include_examples "action requires login", :put, "/posts/2/rebake.json"
|
include_examples "action requires login", :put, "/posts/2/rebake.json"
|
||||||
|
|
||||||
describe "when logged in" do
|
describe "when logged in" do
|
||||||
fab!(:post) { Fabricate(:post, user: user) }
|
let!(:post) { post_by_user }
|
||||||
|
|
||||||
it "raises an error if the user doesn't have permission to rebake the post" do
|
it "raises an error if the user doesn't have permission to rebake the post" do
|
||||||
sign_in(user)
|
sign_in(user)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user