tests: fix test failures when running without API keys.

Fix the test suite failing when trying to run it in the default state
with no config file or API keys configured. Most source sites require
API keys or login credentials to be set in order to work. Skip these
tests when credentials aren't configured.
This commit is contained in:
evazion
2021-09-22 03:49:05 -05:00
parent 3a05b7e832
commit ac12efb636
12 changed files with 54 additions and 3 deletions

View File

@@ -32,6 +32,8 @@ class UploadServiceTest < ActiveSupport::TestCase
context "for a pixiv" do
setup do
skip "Pixiv credentials not configured" unless Sources::Strategies::Pixiv.enabled?
@source = "http://www.pixiv.net/member_illust.php?mode=medium&illust_id=62247350"
@upload = Upload.new
@upload.source = @source
@@ -48,6 +50,8 @@ class UploadServiceTest < ActiveSupport::TestCase
context "for a pixiv ugoira" do
setup do
skip "Pixiv credentials not configured" unless Sources::Strategies::Pixiv.enabled?
@source = "https://i.pximg.net/img-zip-ugoira/img/2017/04/04/08/57/38/62247364_ugoira1920x1080.zip"
@referer = "http://www.pixiv.net/member_illust.php?mode=medium&illust_id=62247364"
@upload = Upload.new
@@ -122,6 +126,7 @@ class UploadServiceTest < ActiveSupport::TestCase
context "for twitter" do
setup do
skip "Twitter credentials not configured" unless Sources::Strategies::Twitter.enabled?
@source = "https://pbs.twimg.com/media/B4HSEP5CUAA4xyu.png:large"
@ref = "https://twitter.com/nounproject/status/540944400767922176"
end
@@ -140,6 +145,7 @@ class UploadServiceTest < ActiveSupport::TestCase
context "for pixiv" do
setup do
skip "Pixiv credentials not configured" unless Sources::Strategies::Pixiv.enabled?
@source = "https://i.pximg.net/img-original/img/2014/10/29/09/27/19/46785915_p0.jpg"
@ref = "https://www.pixiv.net/member_illust.php?mode=medium&illust_id=46785915"
end
@@ -159,6 +165,7 @@ class UploadServiceTest < ActiveSupport::TestCase
context "for pixiv ugoira" do
setup do
skip "Pixiv credentials not configured" unless Sources::Strategies::Pixiv.enabled?
@source = "http://www.pixiv.net/member_illust.php?mode=medium&illust_id=62247364"
end
@@ -237,6 +244,7 @@ class UploadServiceTest < ActiveSupport::TestCase
context "#finish!" do
setup do
skip "Twitter credentials not configured" unless Sources::Strategies::Twitter.enabled?
CurrentUser.user = travel_to(1.month.ago) do
FactoryBot.create(:user)
end
@@ -350,6 +358,8 @@ class UploadServiceTest < ActiveSupport::TestCase
context "for a twitter source replacement" do
setup do
skip "Twitter credentials not configured" unless Sources::Strategies::Twitter.enabled?
@new_url = "https://pbs.twimg.com/media/B4HSEP5CUAA4xyu.png:orig"
travel_to(1.month.ago) do
@@ -516,6 +526,10 @@ class UploadServiceTest < ActiveSupport::TestCase
end
context "a post with a pixiv html source" do
setup do
skip "Pixiv credentials not configured" unless Sources::Strategies::Pixiv.enabled?
end
should "replace with the full size image" do
as(@user) do
@post.replace!(replacement_url: "https://www.pixiv.net/member_illust.php?mode=medium&illust_id=62247350")
@@ -546,6 +560,8 @@ class UploadServiceTest < ActiveSupport::TestCase
context "a post that is replaced by a ugoira" do
should "save the frame data" do
skip unless MediaFile::Ugoira.videos_enabled?
skip "Pixiv credentials not configured" unless Sources::Strategies::Pixiv.enabled?
begin
as(@user) { @post.replace!(replacement_url: "http://www.pixiv.net/member_illust.php?mode=medium&illust_id=62247364") }
@post.reload
@@ -566,6 +582,8 @@ class UploadServiceTest < ActiveSupport::TestCase
context "a post that is replaced to another file then replaced back to the original file" do
should "not delete the original files" do
skip unless MediaFile::Ugoira.videos_enabled?
skip "Pixiv credentials not configured" unless Sources::Strategies::Pixiv.enabled?
@post.unstub(:queue_delete_files)
# this is called thrice to delete the file for 62247364
@@ -594,6 +612,8 @@ class UploadServiceTest < ActiveSupport::TestCase
context "two posts that have had their files swapped" do
setup do
skip "Pixiv credentials not configured" unless Sources::Strategies::Pixiv.enabled?
as(@user) do
@post1 = FactoryBot.create(:post)
@post2 = FactoryBot.create(:post)
@@ -636,6 +656,8 @@ class UploadServiceTest < ActiveSupport::TestCase
context "a post with notes" do
setup do
skip "Pixiv credentials not configured" unless Sources::Strategies::Pixiv.enabled?
Note.any_instance.stubs(:merge_version?).returns(false)
as(@user) do