diaspora/spec/models/services/wordpress_spec.rb
2017-09-17 19:29:15 +02:00

37 lines
1.2 KiB
Ruby

# frozen_string_literal: true
describe Services::Wordpress, type: :model do
before do
@user = alice
@post = @user.post(:status_message,
text: "Hello there. This is a **Wordpress** post that we hope to turn into something else.",
to: @user.aspects.first.id)
@service = Services::Wordpress.new(nickname: "andrew",
access_token: "abc123",
uid: "123")
@user.services << @service
end
describe "#post" do
it "posts a status message to wordpress" do
stub_request(:post, "https://public-api.wordpress.com/rest/v1/sites/123/posts/new").to_return(
status: 200,
body: {ID: 68}.to_json,
headers: {}
)
@service.post(@post)
end
end
describe "#post_body" do
it "truncates content for use in title" do
expect(@service.post_body(@post)[:title]).to eq(
"Hello there. This is a Wordpress post that we hope to turn into som..."
)
end
it "converts markdown tags" do
expect(@service.post_body(@post)[:content]).to match("<strong>Wordpress</strong>")
end
end
end