docbrown/spec/labor/bufferizer_spec.rb
Michael Kohl 7f75f99560
[deploy] Rename classified listings (#7910)
* Change models and related files

* Update controllers and specs

* More renaming

* Seek and destroy, I mean search and replace

* Round up the stragglers

* Ground control to Major Travis...

* More fixes

* PR feedback

* Various fixes

* Rename view

* Fix list query builder

* Unify request specs

* Fix some API spec errors

* Fix remaining API specs

* Make spec conform to API

* Fix leftover problems

* Fix JS tests

* Fix column name in select

* Fix API specs

* Fix search specs

* Paging Mr. Travis
2020-05-27 13:35:09 +00:00

47 lines
1.7 KiB
Ruby

require "rails_helper"
RSpec.describe Bufferizer, type: :labor do
let(:user) { create(:user) }
let(:listing) { create(:listing, user_id: user.id) }
let(:tag) { create(:tag, buffer_profile_id_code: "test") }
let(:article) { create(:article, user_id: user.id, tags: tag.name) }
it "sends to buffer twitter" do
tweet = "test tweet"
described_class.new("article", article, tweet).main_tweet!
expect(article.last_buffered.utc.to_i).to be > 2.minutes.ago.to_i
end
it "includes admin approver" do
tweet = "test tweet"
described_class.new("article", article, tweet, user.id).main_tweet!
expect(BufferUpdate.last.approver_user_id).to be user.id
end
it "sends to buffer sattelite twitter" do
SiteConfig.twitter_hashtag = "#DEVCommunity"
tweet = "test tweet #{SiteConfig.twitter_hashtag}"
described_class.new("article", article, tweet).satellite_tweet!
expect(article.last_buffered.utc.to_i).to be > 2.minutes.ago.to_i
expect(BufferUpdate.last.body_text).to include(" #{SiteConfig.twitter_hashtag} ##{tag.name} http")
end
it "sends to buffer facebook" do
post = "test facebook post"
described_class.new("article", article, post, user.id).facebook_post!
expect(article.facebook_last_buffered.utc.to_i).to be > 2.minutes.ago.to_i
end
it "sends to buffer listings" do
text = "test listing"
described_class.new("listing", listing, text).listings_tweet!
expect(listing.last_buffered).not_to be(nil)
end
it "adds linkedin social tags" do
post = "test facebook post"
described_class.new("article", article, post).facebook_post!
expect(BufferUpdate.last.body_text).to include(" #programming")
expect(BufferUpdate.last.body_text).to include(" #" + article.tag_list.first)
end
end