2012-06-23 12:07:44 +08:00
|
|
|
require 'spec_helper'
|
|
|
|
|
|
|
|
describe Admin::PostsController do
|
2014-04-01 09:34:31 +08:00
|
|
|
|
|
|
|
before do
|
|
|
|
session[:login] = true
|
|
|
|
end
|
2012-06-24 05:13:09 +08:00
|
|
|
it "preview should return ok" do
|
|
|
|
post :preview
|
2014-11-25 01:05:00 +08:00
|
|
|
expect(response.body).to eq("")
|
2014-03-31 17:24:46 +08:00
|
|
|
post :preview, content: '123'
|
2014-11-25 01:05:00 +08:00
|
|
|
expect(response.body).to eq("<p>123</p>\n")
|
2012-06-23 12:07:44 +08:00
|
|
|
end
|
2014-03-31 22:13:58 +08:00
|
|
|
|
|
|
|
it "update" do
|
|
|
|
post = create(:post)
|
|
|
|
|
|
|
|
patch 'update', id: post.id, labels: 'think, go '
|
|
|
|
expect(post.reload.labels.size).to eq(2)
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
it "destroy" do
|
|
|
|
post = create(:post)
|
|
|
|
label = create(:label)
|
|
|
|
post.labels << label
|
|
|
|
post.save!
|
|
|
|
expect(label.posts.size).to eq(1)
|
|
|
|
|
|
|
|
delete 'destroy', id: post.id
|
|
|
|
expect( Post.all.size ).to eq(0)
|
|
|
|
expect( label.reload.posts.size ).to eq(0)
|
|
|
|
end
|
|
|
|
|
|
|
|
it "create" do
|
|
|
|
post_params = attributes_for(:post)
|
|
|
|
post 'create', post_params.merge( labels: 'think, go ' )
|
|
|
|
|
|
|
|
post = Post.first
|
|
|
|
expect( post.labels.size ).to eq(2)
|
|
|
|
end
|
|
|
|
|
|
|
|
it "create fail and see labels_content" do
|
|
|
|
post 'create', labels: 'think, go '
|
|
|
|
expect( assigns(:post).labels_content ).to eq('think, go')
|
|
|
|
end
|
2012-06-23 12:07:44 +08:00
|
|
|
end
|