Run rubocop formatting except line length (#23632)

This commit is contained in:
Nick Schonning 2023-02-17 16:56:20 -05:00 committed by GitHub
parent 593bb8ce99
commit 669f6d2c0a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
71 changed files with 269 additions and 566 deletions

View file

@ -1,6 +1,6 @@
# This configuration was generated by # This configuration was generated by
# `rubocop --auto-gen-config --auto-gen-only-exclude --no-exclude-limit` # `rubocop --auto-gen-config --auto-gen-only-exclude --no-exclude-limit`
# on 2023-02-16 04:55:24 UTC using RuboCop version 1.45.1. # on 2023-02-16 05:53:07 UTC using RuboCop version 1.45.1.
# The point is for the user to remove these configuration records # The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base. # one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new # Note that changes in the inspected code, or installation of new
@ -14,53 +14,6 @@ Bundler/OrderedGems:
Exclude: Exclude:
- 'Gemfile' - 'Gemfile'
# Offense count: 5
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, IndentationWidth.
# SupportedStyles: with_first_argument, with_fixed_indentation
Layout/ArgumentAlignment:
Exclude:
- 'spec/models/account_statuses_cleanup_policy_spec.rb'
- 'spec/services/activitypub/process_collection_service_spec.rb'
- 'spec/services/activitypub/process_status_update_service_spec.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyleAlignWith.
# SupportedStylesAlignWith: either, start_of_block, start_of_line
Layout/BlockAlignment:
Exclude:
- 'spec/controllers/api/v1/accounts/credentials_controller_spec.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
Layout/ClosingParenthesisIndentation:
Exclude:
- 'spec/controllers/auth/sessions_controller_spec.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowForAlignment.
Layout/CommentIndentation:
Exclude:
- 'db/migrate/20180514130000_improve_index_on_statuses_for_api_v1_accounts_account_id_statuses.rb'
# Offense count: 22
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: leading, trailing
Layout/DotPosition:
Exclude:
- 'lib/paperclip/attachment_extensions.rb'
- 'spec/routing/api_routing_spec.rb'
- 'spec/routing/well_known_routes_spec.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
Layout/ElseAlignment:
Exclude:
- 'db/migrate/20161006213403_rails_settings_migration.rb'
# Offense count: 81 # Offense count: 81
# This cop supports safe autocorrection (--autocorrect). # This cop supports safe autocorrection (--autocorrect).
Layout/EmptyLineAfterGuardClause: Layout/EmptyLineAfterGuardClause:
@ -183,73 +136,6 @@ Layout/EmptyLineAfterMagicComment:
- 'spec/controllers/api/v1/accounts/statuses_controller_spec.rb' - 'spec/controllers/api/v1/accounts/statuses_controller_spec.rb'
- 'spec/models/tag_spec.rb' - 'spec/models/tag_spec.rb'
# Offense count: 3
# This cop supports safe autocorrection (--autocorrect).
Layout/EmptyLines:
Exclude:
- 'spec/controllers/authorize_interactions_controller_spec.rb'
- 'spec/controllers/settings/two_factor_authentication/confirmations_controller_spec.rb'
- 'spec/lib/activitypub/activity/create_spec.rb'
# Offense count: 9
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: empty_lines, no_empty_lines
Layout/EmptyLinesAroundBlockBody:
Exclude:
- 'spec/fabricators/system_key_fabricator.rb'
- 'spec/models/account_alias_spec.rb'
- 'spec/models/device_spec.rb'
- 'spec/models/encrypted_message_spec.rb'
- 'spec/models/login_activity_spec.rb'
- 'spec/models/one_time_key_spec.rb'
- 'spec/models/system_key_spec.rb'
- 'spec/services/bootstrap_timeline_service_spec.rb'
- 'spec/services/fetch_oembed_service_spec.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyleAlignWith, Severity.
# SupportedStylesAlignWith: keyword, variable, start_of_line
Layout/EndAlignment:
Exclude:
- 'db/migrate/20161006213403_rails_settings_migration.rb'
# Offense count: 19
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowForAlignment, AllowBeforeTrailingComments, ForceEqualSignAlignment.
Layout/ExtraSpacing:
Exclude:
- 'spec/config/initializers/rack_attack_spec.rb'
- 'spec/controllers/api/v2/filters/statuses_controller_spec.rb'
- 'spec/fabricators/custom_filter_keyword_fabricator.rb'
- 'spec/fabricators/poll_vote_fabricator.rb'
- 'spec/models/account_statuses_cleanup_policy_spec.rb'
- 'spec/services/activitypub/process_status_update_service_spec.rb'
- 'spec/services/import_service_spec.rb'
- 'spec/services/resolve_account_service_spec.rb'
- 'spec/services/resolve_url_service_spec.rb'
- 'spec/validators/note_length_validator_spec.rb'
- 'spec/validators/unreserved_username_validator_spec.rb'
- 'spec/workers/activitypub/move_distribution_worker_spec.rb'
# Offense count: 4
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, IndentationWidth.
# SupportedStyles: consistent, consistent_relative_to_receiver, special_for_inner_method_call, special_for_inner_method_call_in_parentheses
Layout/FirstArgumentIndentation:
Exclude:
- 'spec/services/remove_status_service_spec.rb'
# Offense count: 4
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, IndentationWidth.
# SupportedStyles: special_inside_parentheses, consistent, align_brackets
Layout/FirstArrayElementIndentation:
Exclude:
- 'spec/controllers/admin/dashboard_controller_spec.rb'
- 'spec/workers/activitypub/move_distribution_worker_spec.rb'
# Offense count: 113 # Offense count: 113
# This cop supports safe autocorrection (--autocorrect). # This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle. # Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
@ -276,49 +162,6 @@ Layout/HashAlignment:
- 'spec/models/admin/account_action_spec.rb' - 'spec/models/admin/account_action_spec.rb'
- 'spec/models/concerns/account_interactions_spec.rb' - 'spec/models/concerns/account_interactions_spec.rb'
# Offense count: 3
# This cop supports safe autocorrection (--autocorrect).
Layout/HeredocIndentation:
Exclude:
- 'spec/controllers/well_known/host_meta_controller_spec.rb'
- 'spec/lib/link_details_extractor_spec.rb'
# Offense count: 5
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: normal, indented_internal_methods
Layout/IndentationConsistency:
Exclude:
- 'spec/controllers/api/v1/statuses/favourited_by_accounts_controller_spec.rb'
- 'spec/controllers/api/v1/statuses/reblogged_by_accounts_controller_spec.rb'
- 'spec/models/trends/statuses_spec.rb'
- 'spec/services/import_service_spec.rb'
# Offense count: 4
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: Width, AllowedPatterns.
Layout/IndentationWidth:
Exclude:
- 'db/migrate/20161006213403_rails_settings_migration.rb'
- 'spec/controllers/api/v1/accounts/credentials_controller_spec.rb'
- 'spec/services/account_statuses_cleanup_service_spec.rb'
- 'spec/services/import_service_spec.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowDoxygenCommentStyle, AllowGemfileRubyComment.
Layout/LeadingCommentSpace:
Exclude:
- 'lib/paperclip/attachment_extensions.rb'
# Offense count: 2
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AutoCorrect, EnforcedStyle.
# SupportedStyles: space, no_space
Layout/LineContinuationSpacing:
Exclude:
- 'spec/support/stories/profile_stories.rb'
# Offense count: 577 # Offense count: 577
# This cop supports safe autocorrection (--autocorrect). # This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns. # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
@ -326,124 +169,6 @@ Layout/LineContinuationSpacing:
Layout/LineLength: Layout/LineLength:
Enabled: false Enabled: false
# Offense count: 4
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: symmetrical, new_line, same_line
Layout/MultilineMethodCallBraceLayout:
Exclude:
- 'spec/models/account_statuses_cleanup_policy_spec.rb'
- 'spec/services/activitypub/process_status_update_service_spec.rb'
# Offense count: 3
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowForAlignment, EnforcedStyleForExponentOperator.
# SupportedStylesForExponentOperator: space, no_space
Layout/SpaceAroundOperators:
Exclude:
- 'spec/services/activitypub/fetch_remote_status_service_spec.rb'
- 'spec/validators/note_length_validator_spec.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces.
# SupportedStyles: space, no_space
# SupportedStylesForEmptyBraces: space, no_space
Layout/SpaceBeforeBlockBraces:
Exclude:
- 'spec/controllers/api/v1/reports_controller_spec.rb'
# Offense count: 3
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowForAlignment.
Layout/SpaceBeforeFirstArg:
Exclude:
- 'spec/fabricators/custom_filter_keyword_fabricator.rb'
- 'spec/fabricators/poll_vote_fabricator.rb'
- 'spec/models/concerns/account_interactions_spec.rb'
# Offense count: 24
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBrackets.
# SupportedStyles: space, no_space, compact
# SupportedStylesForEmptyBrackets: space, no_space
Layout/SpaceInsideArrayLiteralBrackets:
Exclude:
- 'db/migrate/20161006213403_rails_settings_migration.rb'
- 'spec/controllers/settings/applications_controller_spec.rb'
- 'spec/lib/extractor_spec.rb'
- 'spec/models/export_spec.rb'
- 'spec/services/activitypub/process_account_service_spec.rb'
- 'spec/workers/scheduler/accounts_statuses_cleanup_scheduler_spec.rb'
# Offense count: 4
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
# SupportedStyles: space, no_space
# SupportedStylesForEmptyBraces: space, no_space
Layout/SpaceInsideBlockBraces:
Exclude:
- 'spec/lib/fast_ip_map_spec.rb'
- 'spec/models/user_role_spec.rb'
- 'spec/serializers/rest/account_serializer_spec.rb'
- 'spec/workers/activitypub/distribution_worker_spec.rb'
# Offense count: 6
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces.
# SupportedStyles: space, no_space, compact
# SupportedStylesForEmptyBraces: space, no_space
Layout/SpaceInsideHashLiteralBraces:
Exclude:
- 'app/lib/activitypub/activity/create.rb'
- 'app/services/activitypub/fetch_replies_service.rb'
- 'spec/services/activitypub/process_collection_service_spec.rb'
- 'spec/services/update_status_service_spec.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: space, compact, no_space
Layout/SpaceInsideParens:
Exclude:
- 'spec/validators/unreserved_username_validator_spec.rb'
# Offense count: 4
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: space, no_space
Layout/SpaceInsideStringInterpolation:
Exclude:
- 'spec/controllers/auth/sessions_controller_spec.rb'
- 'spec/controllers/settings/two_factor_authentication/webauthn_credentials_controller_spec.rb'
- 'spec/services/activitypub/process_account_service_spec.rb'
# Offense count: 8
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: final_newline, final_blank_line
Layout/TrailingEmptyLines:
Exclude:
- 'db/migrate/20190306145741_add_lock_version_to_polls.rb'
- 'db/migrate/20190807135426_add_comments_to_domain_blocks.rb'
- 'db/migrate/20200312162302_add_status_ids_to_announcements.rb'
- 'db/migrate/20200510181721_remove_duplicated_indexes_pghero.rb'
- 'db/migrate/20200628133322_create_account_notes.rb'
- 'db/migrate/20210722120340_create_account_statuses_cleanup_policies.rb'
- 'spec/fabricators/ip_block_fabricator.rb'
- 'spec/fabricators/status_edit_fabricator.rb'
# Offense count: 7
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowInHeredoc.
Layout/TrailingWhitespace:
Exclude:
- 'app/models/concerns/expireable.rb'
- 'db/post_migrate/20220729171123_fix_custom_filter_keywords_id_seq.rb'
- 'lib/tasks/mastodon.rake'
- 'spec/models/account/field_spec.rb'
- 'spec/services/remove_from_follwers_service_spec.rb'
# Offense count: 14 # Offense count: 14
# Configuration parameters: AllowedMethods, AllowedPatterns. # Configuration parameters: AllowedMethods, AllowedPatterns.
Lint/AmbiguousBlockAssociation: Lint/AmbiguousBlockAssociation:

View file

@ -327,7 +327,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
def resolve_thread(status) def resolve_thread(status)
return unless status.reply? && status.thread.nil? && Request.valid_url?(in_reply_to_uri) return unless status.reply? && status.thread.nil? && Request.valid_url?(in_reply_to_uri)
ThreadResolveWorker.perform_async(status.id, in_reply_to_uri, { 'request_id' => @options[:request_id]}) ThreadResolveWorker.perform_async(status.id, in_reply_to_uri, { 'request_id' => @options[:request_id] })
end end
def fetch_replies(status) def fetch_replies(status)
@ -338,7 +338,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
return unless replies.nil? return unless replies.nil?
uri = value_or_id(collection) uri = value_or_id(collection)
ActivityPub::FetchRepliesWorker.perform_async(status.id, uri, { 'request_id' => @options[:request_id]}) unless uri.nil? ActivityPub::FetchRepliesWorker.perform_async(status.id, uri, { 'request_id' => @options[:request_id] }) unless uri.nil?
end end
def conversation_from_uri(uri) def conversation_from_uri(uri)

View file

@ -10,7 +10,7 @@ class ActivityPub::FetchRepliesService < BaseService
@items = collection_items(collection_or_uri) @items = collection_items(collection_or_uri)
return if @items.nil? return if @items.nil?
FetchReplyWorker.push_bulk(filtered_replies) { |reply_uri| [reply_uri, { 'request_id' => request_id}] } FetchReplyWorker.push_bulk(filtered_replies) { |reply_uri| [reply_uri, { 'request_id' => request_id }] }
@items @items
end end

View file

@ -1,8 +1,8 @@
MIGRATION_BASE_CLASS = if ActiveRecord::VERSION::MAJOR >= 5 MIGRATION_BASE_CLASS = if ActiveRecord::VERSION::MAJOR >= 5
ActiveRecord::Migration[5.0] ActiveRecord::Migration[5.0]
else else
ActiveRecord::Migration[4.2] ActiveRecord::Migration[4.2]
end end
class RailsSettingsMigration < MIGRATION_BASE_CLASS class RailsSettingsMigration < MIGRATION_BASE_CLASS
def self.up def self.up
@ -12,7 +12,7 @@ class RailsSettingsMigration < MIGRATION_BASE_CLASS
t.references :target, null: false, polymorphic: true, index: { name: 'index_settings_on_target_type_and_target_id' } t.references :target, null: false, polymorphic: true, index: { name: 'index_settings_on_target_type_and_target_id' }
t.timestamps null: true t.timestamps null: true
end end
add_index :settings, [ :target_type, :target_id, :var ], unique: true add_index :settings, [:target_type, :target_id, :var], unique: true
end end
def self.down def self.down

View file

@ -21,4 +21,3 @@ class AddLockVersionToPolls < ActiveRecord::Migration[5.2]
remove_column :polls, :lock_version remove_column :polls, :lock_version
end end
end end

View file

@ -4,4 +4,3 @@ class AddCommentsToDomainBlocks < ActiveRecord::Migration[5.2]
add_column :domain_blocks, :public_comment, :text add_column :domain_blocks, :public_comment, :text
end end
end end

View file

@ -3,4 +3,3 @@ class AddStatusIdsToAnnouncements < ActiveRecord::Migration[5.2]
add_column :announcements, :status_ids, :bigint, array: true add_column :announcements, :status_ids, :bigint, array: true
end end
end end

View file

@ -19,4 +19,3 @@ class RemoveDuplicatedIndexesPghero < ActiveRecord::Migration[5.2]
add_index :markers, :user_id, name: :index_markers_on_user_id unless index_exists?(:markers, :user_id, name: :index_markers_on_user_id) add_index :markers, :user_id, name: :index_markers_on_user_id unless index_exists?(:markers, :user_id, name: :index_markers_on_user_id)
end end
end end

View file

@ -10,4 +10,3 @@ class CreateAccountNotes < ActiveRecord::Migration[5.2]
end end
end end
end end

View file

@ -17,4 +17,3 @@ class CreateAccountStatusesCleanupPolicies < ActiveRecord::Migration[6.1]
end end
end end
end end

View file

@ -8,7 +8,7 @@ module Paperclip
# monkey-patch to avoid unlinking too avoid unlinking source file too early # monkey-patch to avoid unlinking too avoid unlinking source file too early
# see https://github.com/kreeti/kt-paperclip/issues/64 # see https://github.com/kreeti/kt-paperclip/issues/64
def post_process_style(name, style) #:nodoc: def post_process_style(name, style) # :nodoc:
raise "Style #{name} has no processors defined." if style.processors.blank? raise "Style #{name} has no processors defined." if style.processors.blank?
intermediate_files = [] intermediate_files = []
@ -16,16 +16,16 @@ module Paperclip
# if we're processing the original, close + unlink the source tempfile # if we're processing the original, close + unlink the source tempfile
intermediate_files << original if name == :original intermediate_files << original if name == :original
@queued_for_write[name] = style.processors. @queued_for_write[name] = style.processors
inject(original) do |file, processor| .inject(original) do |file, processor|
file = Paperclip.processor(processor).make(file, style.processor_options, self) file = Paperclip.processor(processor).make(file, style.processor_options, self)
intermediate_files << file unless file == original intermediate_files << file unless file == original
file file
end end
unadapted_file = @queued_for_write[name] unadapted_file = @queued_for_write[name]
@queued_for_write[name] = Paperclip.io_adapters. @queued_for_write[name] = Paperclip.io_adapters
for(@queued_for_write[name], @options[:adapter_options]) .for(@queued_for_write[name], @options[:adapter_options])
unadapted_file.close if unadapted_file.respond_to?(:close) unadapted_file.close if unadapted_file.respond_to?(:close)
@queued_for_write[name] @queued_for_write[name]
rescue Paperclip::Errors::NotIdentifiedByImageMagickError => e rescue Paperclip::Errors::NotIdentifiedByImageMagickError => e

View file

@ -20,7 +20,7 @@ RSpec.describe Api::V1::ReportsController, type: :controller do
let(:target_account) { status.account } let(:target_account) { status.account }
let(:category) { nil } let(:category) { nil }
let(:forward) { nil } let(:forward) { nil }
let(:rule_ids){ nil } let(:rule_ids) { nil }
before do before do
allow(AdminMailer).to receive(:new_report).and_return(double('email', deliver_later: nil)) allow(AdminMailer).to receive(:new_report).and_return(double('email', deliver_later: nil))

View file

@ -343,7 +343,7 @@ RSpec.describe Auth::SessionsController, type: :controller do
user.webauthn_credentials.take user.webauthn_credentials.take
end end
let(:domain) { "#{Rails.configuration.x.use_https ? 'https' : 'http' }://#{Rails.configuration.x.web_domain}" } let(:domain) { "#{Rails.configuration.x.use_https ? 'https' : 'http'}://#{Rails.configuration.x.web_domain}" }
let(:fake_client) { WebAuthn::FakeClient.new(domain) } let(:fake_client) { WebAuthn::FakeClient.new(domain) }
@ -400,7 +400,7 @@ RSpec.describe Auth::SessionsController, type: :controller do
describe 'GET #webauthn_options' do describe 'GET #webauthn_options' do
context 'with WebAuthn and OTP enabled as second factor' do context 'with WebAuthn and OTP enabled as second factor' do
let(:domain) { "#{Rails.configuration.x.use_https ? 'https' : 'http' }://#{Rails.configuration.x.web_domain}" } let(:domain) { "#{Rails.configuration.x.use_https ? 'https' : 'http'}://#{Rails.configuration.x.web_domain}" }
let(:fake_client) { WebAuthn::FakeClient.new(domain) } let(:fake_client) { WebAuthn::FakeClient.new(domain) }

View file

@ -99,7 +99,6 @@ describe AuthorizeInteractionsController do
allow(ResolveAccountService).to receive(:new).and_return(service) allow(ResolveAccountService).to receive(:new).and_return(service)
allow(service).to receive(:call).with('user@hostname').and_return(target_account) allow(service).to receive(:call).with('user@hostname').and_return(target_account)
post :create, params: { acct: 'acct:user@hostname' } post :create, params: { acct: 'acct:user@hostname' }
expect(account.following?(target_account)).to be true expect(account.following?(target_account)).to be true

View file

@ -73,7 +73,7 @@ describe Settings::ApplicationsController do
name: 'My New App', name: 'My New App',
redirect_uri: 'urn:ietf:wg:oauth:2.0:oob', redirect_uri: 'urn:ietf:wg:oauth:2.0:oob',
website: 'http://google.com', website: 'http://google.com',
scopes: [ 'read', 'write', 'follow' ] scopes: ['read', 'write', 'follow']
} }
} }
response response

View file

@ -5,7 +5,6 @@ require 'rails_helper'
describe Settings::TwoFactorAuthentication::ConfirmationsController do describe Settings::TwoFactorAuthentication::ConfirmationsController do
render_views render_views
shared_examples 'renders :new' do shared_examples 'renders :new' do
it 'renders the new view' do it 'renders the new view' do
subject subject

View file

@ -7,7 +7,7 @@ describe Settings::TwoFactorAuthentication::WebauthnCredentialsController do
render_views render_views
let(:user) { Fabricate(:user) } let(:user) { Fabricate(:user) }
let(:domain) { "#{Rails.configuration.x.use_https ? 'https' : 'http' }://#{Rails.configuration.x.web_domain}" } let(:domain) { "#{Rails.configuration.x.use_https ? 'https' : 'http'}://#{Rails.configuration.x.web_domain}" }
let(:fake_client) { WebAuthn::FakeClient.new(domain) } let(:fake_client) { WebAuthn::FakeClient.new(domain) }
def add_webauthn_credential(user) def add_webauthn_credential(user)

View file

@ -9,12 +9,12 @@ describe WellKnown::HostMetaController, type: :controller do
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
expect(response.media_type).to eq 'application/xrd+xml' expect(response.media_type).to eq 'application/xrd+xml'
expect(response.body).to eq <<XML expect(response.body).to eq <<~XML
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0"> <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0">
<Link rel="lrdd" template="https://cb6e6126.ngrok.io/.well-known/webfinger?resource={uri}"/> <Link rel="lrdd" template="https://cb6e6126.ngrok.io/.well-known/webfinger?resource={uri}"/>
</XRD> </XRD>
XML XML
end end
end end
end end

View file

@ -1,3 +1,2 @@
Fabricator(:system_key) do Fabricator(:system_key) do
end end

View file

@ -408,7 +408,6 @@ RSpec.describe ActivityPub::Activity::Create do
end end
end end
context 'with media attachments with long description' do context 'with media attachments with long description' do
let(:object_json) do let(:object_json) do
{ {

View file

@ -20,7 +20,7 @@ describe Extractor do
text = '@screen_name' text = '@screen_name'
extracted = Extractor.extract_mentions_or_lists_with_indices(text) extracted = Extractor.extract_mentions_or_lists_with_indices(text)
expect(extracted).to eq [ expect(extracted).to eq [
{ screen_name: 'screen_name', indices: [ 0, 12 ] } { screen_name: 'screen_name', indices: [0, 12] }
] ]
end end
@ -44,19 +44,19 @@ describe Extractor do
it 'does not exclude normal hash text before ://' do it 'does not exclude normal hash text before ://' do
text = '#hashtag://' text = '#hashtag://'
extracted = Extractor.extract_hashtags_with_indices(text) extracted = Extractor.extract_hashtags_with_indices(text)
expect(extracted).to eq [ { hashtag: 'hashtag', indices: [ 0, 8 ] } ] expect(extracted).to eq [{ hashtag: 'hashtag', indices: [0, 8] }]
end end
it 'excludes http://' do it 'excludes http://' do
text = '#hashtaghttp://' text = '#hashtaghttp://'
extracted = Extractor.extract_hashtags_with_indices(text) extracted = Extractor.extract_hashtags_with_indices(text)
expect(extracted).to eq [ { hashtag: 'hashtag', indices: [ 0, 8 ] } ] expect(extracted).to eq [{ hashtag: 'hashtag', indices: [0, 8] }]
end end
it 'excludes https://' do it 'excludes https://' do
text = '#hashtaghttps://' text = '#hashtaghttps://'
extracted = Extractor.extract_hashtags_with_indices(text) extracted = Extractor.extract_hashtags_with_indices(text)
expect(extracted).to eq [ { hashtag: 'hashtag', indices: [ 0, 8 ] } ] expect(extracted).to eq [{ hashtag: 'hashtag', indices: [0, 8] }]
end end
it 'yields hashtags if a block is given' do it 'yields hashtags if a block is given' do

View file

@ -4,7 +4,7 @@ require 'rails_helper'
describe FastIpMap do describe FastIpMap do
describe '#include?' do describe '#include?' do
subject { described_class.new([IPAddr.new('20.4.0.0/16'), IPAddr.new('145.22.30.0/24'), IPAddr.new('189.45.86.3')])} subject { described_class.new([IPAddr.new('20.4.0.0/16'), IPAddr.new('145.22.30.0/24'), IPAddr.new('189.45.86.3')]) }
it 'returns true for an exact match' do it 'returns true for an exact match' do
expect(subject.include?(IPAddr.new('189.45.86.3'))).to be true expect(subject.include?(IPAddr.new('189.45.86.3'))).to be true

View file

@ -39,17 +39,17 @@ RSpec.describe LinkDetailsExtractor do
let(:original_url) { 'https://example.com/page.html' } let(:original_url) { 'https://example.com/page.html' }
context 'and is wrapped in CDATA tags' do context 'and is wrapped in CDATA tags' do
let(:html) { <<-HTML } let(:html) { <<~HTML }
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<script type="application/ld+json"> <script type="application/ld+json">
//<![CDATA[ //<![CDATA[
{"@context":"http://schema.org","@type":"NewsArticle","mainEntityOfPage":"https://example.com/page.html","headline":"Foo","datePublished":"2022-01-31T19:53:00+00:00","url":"https://example.com/page.html","description":"Bar","author":{"@type":"Person","name":"Hoge"},"publisher":{"@type":"Organization","name":"Baz"}} {"@context":"http://schema.org","@type":"NewsArticle","mainEntityOfPage":"https://example.com/page.html","headline":"Foo","datePublished":"2022-01-31T19:53:00+00:00","url":"https://example.com/page.html","description":"Bar","author":{"@type":"Person","name":"Hoge"},"publisher":{"@type":"Organization","name":"Baz"}}
//]]> //]]>
</script> </script>
</head> </head>
</html> </html>
HTML HTML
describe '#title' do describe '#title' do
@ -78,10 +78,10 @@ RSpec.describe LinkDetailsExtractor do
end end
context 'but the first tag is invalid JSON' do context 'but the first tag is invalid JSON' do
let(:html) { <<-HTML } let(:html) { <<~HTML }
<!doctype html> <!doctype html>
<html> <html>
<body> <body>
<script type="application/ld+json"> <script type="application/ld+json">
{ {
"@context":"https://schema.org", "@context":"https://schema.org",
@ -127,8 +127,8 @@ RSpec.describe LinkDetailsExtractor do
} }
} }
</script> </script>
</body> </body>
</html> </html>
HTML HTML
describe '#title' do describe '#title' do

View file

@ -1,5 +1,4 @@
require 'rails_helper' require 'rails_helper'
RSpec.describe AccountAlias, type: :model do RSpec.describe AccountAlias, type: :model do
end end

View file

@ -24,8 +24,7 @@ RSpec.describe AccountStatusesCleanupPolicy, type: :model do
keep_self_fav: true, keep_self_fav: true,
keep_self_bookmark: true, keep_self_bookmark: true,
min_favs: 1, min_favs: 1,
min_reblogs: 1 min_reblogs: 1)
)
end end
before do before do
@ -104,8 +103,7 @@ RSpec.describe AccountStatusesCleanupPolicy, type: :model do
keep_self_fav: false, keep_self_fav: false,
keep_self_bookmark: false, keep_self_bookmark: false,
min_favs: nil, min_favs: nil,
min_reblogs: nil min_reblogs: nil)
)
end end
it 'does not unnecessarily invalidate last_inspected' do it 'does not unnecessarily invalidate last_inspected' do

View file

@ -400,7 +400,7 @@ describe AccountInteractions do
subject { account.domain_blocking?(domain) } subject { account.domain_blocking?(domain) }
context 'blocking the domain' do context 'blocking the domain' do
it' returns true' do it ' returns true' do
account_domain_block = Fabricate(:account_domain_block, domain: domain) account_domain_block = Fabricate(:account_domain_block, domain: domain)
account.domain_blocks << account_domain_block account.domain_blocks << account_domain_block
is_expected.to be true is_expected.to be true

View file

@ -1,5 +1,4 @@
require 'rails_helper' require 'rails_helper'
RSpec.describe Device, type: :model do RSpec.describe Device, type: :model do
end end

View file

@ -1,5 +1,4 @@
require 'rails_helper' require 'rails_helper'
RSpec.describe EncryptedMessage, type: :model do RSpec.describe EncryptedMessage, type: :model do
end end

View file

@ -3,7 +3,7 @@ require 'rails_helper'
describe Export do describe Export do
let(:account) { Fabricate(:account) } let(:account) { Fabricate(:account) }
let(:target_accounts) do let(:target_accounts) do
[ {}, { username: 'one', domain: 'local.host' } ].map(&method(:Fabricate).curry(2).call(:account)) [{}, { username: 'one', domain: 'local.host' }].map(&method(:Fabricate).curry(2).call(:account))
end end
describe 'to_csv' do describe 'to_csv' do

View file

@ -1,5 +1,4 @@
require 'rails_helper' require 'rails_helper'
RSpec.describe LoginActivity, type: :model do RSpec.describe LoginActivity, type: :model do
end end

View file

@ -1,5 +1,4 @@
require 'rails_helper' require 'rails_helper'
RSpec.describe OneTimeKey, type: :model do RSpec.describe OneTimeKey, type: :model do
end end

View file

@ -1,5 +1,4 @@
require 'rails_helper' require 'rails_helper'
RSpec.describe SystemKey, type: :model do RSpec.describe SystemKey, type: :model do
end end

View file

@ -58,7 +58,7 @@ RSpec.describe UserRole, type: :model do
end end
describe '#permissions_as_keys=' do describe '#permissions_as_keys=' do
let(:input) { } let(:input) {}
before do before do
subject.permissions_as_keys = input subject.permissions_as_keys = input

View file

@ -5,99 +5,99 @@ require 'rails_helper'
describe 'API routes' do describe 'API routes' do
describe 'Credentials routes' do describe 'Credentials routes' do
it 'routes to verify credentials' do it 'routes to verify credentials' do
expect(get('/api/v1/accounts/verify_credentials')). expect(get('/api/v1/accounts/verify_credentials'))
to route_to('api/v1/accounts/credentials#show') .to route_to('api/v1/accounts/credentials#show')
end end
it 'routes to update credentials' do it 'routes to update credentials' do
expect(patch('/api/v1/accounts/update_credentials')). expect(patch('/api/v1/accounts/update_credentials'))
to route_to('api/v1/accounts/credentials#update') .to route_to('api/v1/accounts/credentials#update')
end end
end end
describe 'Account routes' do describe 'Account routes' do
it 'routes to statuses' do it 'routes to statuses' do
expect(get('/api/v1/accounts/user/statuses')). expect(get('/api/v1/accounts/user/statuses'))
to route_to('api/v1/accounts/statuses#index', account_id: 'user') .to route_to('api/v1/accounts/statuses#index', account_id: 'user')
end end
it 'routes to followers' do it 'routes to followers' do
expect(get('/api/v1/accounts/user/followers')). expect(get('/api/v1/accounts/user/followers'))
to route_to('api/v1/accounts/follower_accounts#index', account_id: 'user') .to route_to('api/v1/accounts/follower_accounts#index', account_id: 'user')
end end
it 'routes to following' do it 'routes to following' do
expect(get('/api/v1/accounts/user/following')). expect(get('/api/v1/accounts/user/following'))
to route_to('api/v1/accounts/following_accounts#index', account_id: 'user') .to route_to('api/v1/accounts/following_accounts#index', account_id: 'user')
end end
it 'routes to search' do it 'routes to search' do
expect(get('/api/v1/accounts/search')). expect(get('/api/v1/accounts/search'))
to route_to('api/v1/accounts/search#show') .to route_to('api/v1/accounts/search#show')
end end
it 'routes to relationships' do it 'routes to relationships' do
expect(get('/api/v1/accounts/relationships')). expect(get('/api/v1/accounts/relationships'))
to route_to('api/v1/accounts/relationships#index') .to route_to('api/v1/accounts/relationships#index')
end end
end end
describe 'Statuses routes' do describe 'Statuses routes' do
it 'routes reblogged_by' do it 'routes reblogged_by' do
expect(get('/api/v1/statuses/123/reblogged_by')). expect(get('/api/v1/statuses/123/reblogged_by'))
to route_to('api/v1/statuses/reblogged_by_accounts#index', status_id: '123') .to route_to('api/v1/statuses/reblogged_by_accounts#index', status_id: '123')
end end
it 'routes favourited_by' do it 'routes favourited_by' do
expect(get('/api/v1/statuses/123/favourited_by')). expect(get('/api/v1/statuses/123/favourited_by'))
to route_to('api/v1/statuses/favourited_by_accounts#index', status_id: '123') .to route_to('api/v1/statuses/favourited_by_accounts#index', status_id: '123')
end end
it 'routes reblog' do it 'routes reblog' do
expect(post('/api/v1/statuses/123/reblog')). expect(post('/api/v1/statuses/123/reblog'))
to route_to('api/v1/statuses/reblogs#create', status_id: '123') .to route_to('api/v1/statuses/reblogs#create', status_id: '123')
end end
it 'routes unreblog' do it 'routes unreblog' do
expect(post('/api/v1/statuses/123/unreblog')). expect(post('/api/v1/statuses/123/unreblog'))
to route_to('api/v1/statuses/reblogs#destroy', status_id: '123') .to route_to('api/v1/statuses/reblogs#destroy', status_id: '123')
end end
it 'routes favourite' do it 'routes favourite' do
expect(post('/api/v1/statuses/123/favourite')). expect(post('/api/v1/statuses/123/favourite'))
to route_to('api/v1/statuses/favourites#create', status_id: '123') .to route_to('api/v1/statuses/favourites#create', status_id: '123')
end end
it 'routes unfavourite' do it 'routes unfavourite' do
expect(post('/api/v1/statuses/123/unfavourite')). expect(post('/api/v1/statuses/123/unfavourite'))
to route_to('api/v1/statuses/favourites#destroy', status_id: '123') .to route_to('api/v1/statuses/favourites#destroy', status_id: '123')
end end
it 'routes mute' do it 'routes mute' do
expect(post('/api/v1/statuses/123/mute')). expect(post('/api/v1/statuses/123/mute'))
to route_to('api/v1/statuses/mutes#create', status_id: '123') .to route_to('api/v1/statuses/mutes#create', status_id: '123')
end end
it 'routes unmute' do it 'routes unmute' do
expect(post('/api/v1/statuses/123/unmute')). expect(post('/api/v1/statuses/123/unmute'))
to route_to('api/v1/statuses/mutes#destroy', status_id: '123') .to route_to('api/v1/statuses/mutes#destroy', status_id: '123')
end end
end end
describe 'Timeline routes' do describe 'Timeline routes' do
it 'routes to home timeline' do it 'routes to home timeline' do
expect(get('/api/v1/timelines/home')). expect(get('/api/v1/timelines/home'))
to route_to('api/v1/timelines/home#show') .to route_to('api/v1/timelines/home#show')
end end
it 'routes to public timeline' do it 'routes to public timeline' do
expect(get('/api/v1/timelines/public')). expect(get('/api/v1/timelines/public'))
to route_to('api/v1/timelines/public#show') .to route_to('api/v1/timelines/public#show')
end end
it 'routes to tag timeline' do it 'routes to tag timeline' do
expect(get('/api/v1/timelines/tag/test')). expect(get('/api/v1/timelines/tag/test'))
to route_to('api/v1/timelines/tag#show', id: 'test') .to route_to('api/v1/timelines/tag#show', id: 'test')
end end
end end
end end

View file

@ -2,14 +2,14 @@ require 'rails_helper'
describe 'the host-meta route' do describe 'the host-meta route' do
it 'routes to correct place with xml format' do it 'routes to correct place with xml format' do
expect(get('/.well-known/host-meta')). expect(get('/.well-known/host-meta'))
to route_to('well_known/host_meta#show', format: 'xml') .to route_to('well_known/host_meta#show', format: 'xml')
end end
end end
describe 'the webfinger route' do describe 'the webfinger route' do
it 'routes to correct place with json format' do it 'routes to correct place with json format' do
expect(get('/.well-known/webfinger')). expect(get('/.well-known/webfinger'))
to route_to('well_known/webfinger#show') .to route_to('well_known/webfinger#show')
end end
end end

View file

@ -5,7 +5,7 @@ require 'rails_helper'
describe REST::AccountSerializer do describe REST::AccountSerializer do
let(:role) { Fabricate(:user_role, name: 'Role', highlighted: true) } let(:role) { Fabricate(:user_role, name: 'Role', highlighted: true) }
let(:user) { Fabricate(:user, role: role) } let(:user) { Fabricate(:user, role: role) }
let(:account) { user.account} let(:account) { user.account }
subject { JSON.parse(ActiveModelSerializers::SerializableResource.new(account, serializer: REST::AccountSerializer).to_json) } subject { JSON.parse(ActiveModelSerializers::SerializableResource.new(account, serializer: REST::AccountSerializer).to_json) }

View file

@ -298,7 +298,7 @@ RSpec.describe ActivityPub::FetchRemoteStatusService, type: :service do
first: { first: {
type: 'CollectionPage', type: 'CollectionPage',
partOf: "https://foo.bar/@foo/#{i}/replies", partOf: "https://foo.bar/@foo/#{i}/replies",
items: ["https://foo.bar/@foo/#{i+1}"], items: ["https://foo.bar/@foo/#{i + 1}"],
}, },
}, },
attributedTo: ActivityPub::TagManager.instance.uri_for(sender), attributedTo: ActivityPub::TagManager.instance.uri_for(sender),

View file

@ -172,10 +172,10 @@ RSpec.describe ActivityPub::ProcessAccountService, type: :service do
{ {
type: 'Mention', type: 'Mention',
href: "https://foo.test/users/#{i + 1}", href: "https://foo.test/users/#{i + 1}",
name: "@user#{i + 1 }", name: "@user#{i + 1}",
} }
], ],
to: [ 'as:Public', "https://foo.test/users/#{i + 1}" ] to: ['as:Public', "https://foo.test/users/#{i + 1}"]
}.with_indifferent_access }.with_indifferent_access
featured_json = { featured_json = {
'@context': ['https://www.w3.org/ns/activitystreams'], '@context': ['https://www.w3.org/ns/activitystreams'],

View file

@ -107,7 +107,7 @@ RSpec.describe ActivityPub::ProcessCollectionService, type: :service do
'@context': [ '@context': [
'https://www.w3.org/ns/activitystreams', 'https://www.w3.org/ns/activitystreams',
nil, nil,
{'object': 'https://www.w3.org/ns/activitystreams#object'} { 'object': 'https://www.w3.org/ns/activitystreams#object' }
], ],
'id': 'https://example.com/users/bob/fake-status/activity', 'id': 'https://example.com/users/bob/fake-status/activity',
'type': 'Create', 'type': 'Create',

View file

@ -116,8 +116,7 @@ RSpec.describe ActivityPub::ProcessStatusUpdateService, type: :service do
multiple: false, multiple: false,
hide_totals: false, hide_totals: false,
expires_at: expiration expires_at: expiration
} })
)
end end
let(:payload) do let(:payload) do
@ -168,8 +167,7 @@ RSpec.describe ActivityPub::ProcessStatusUpdateService, type: :service do
multiple: false, multiple: false,
hide_totals: false, hide_totals: false,
expires_at: expiration expires_at: expiration
} })
)
end end
let(:payload) do let(:payload) do

View file

@ -32,6 +32,5 @@ RSpec.describe BootstrapTimelineService, type: :service do
expect(service).to_not have_received(:call) expect(service).to_not have_received(:call)
end end
end end
end end
end end

View file

@ -151,7 +151,6 @@ describe FetchOEmbedService, type: :service do
expect(subject.format).to eq :json expect(subject.format).to eq :json
end end
end end
end end
context 'when endpoint is cached' do context 'when endpoint is cached' do

View file

@ -111,7 +111,7 @@ RSpec.describe UpdateStatusService, type: :service do
context 'when poll changes' do context 'when poll changes' do
let(:account) { Fabricate(:account) } let(:account) { Fabricate(:account) }
let!(:status) { Fabricate(:status, text: 'Foo', account: account, poll_attributes: {options: %w(Foo Bar), account: account, multiple: false, hide_totals: false, expires_at: 7.days.from_now }) } let!(:status) { Fabricate(:status, text: 'Foo', account: account, poll_attributes: { options: %w(Foo Bar), account: account, multiple: false, hide_totals: false, expires_at: 7.days.from_now }) }
let!(:poll) { status.poll } let!(:poll) { status.poll }
let!(:voter) { Fabricate(:account) } let!(:voter) { Fabricate(:account) }

View file

@ -20,8 +20,8 @@ module ProfileStories
end end
def with_alice_as_local_user def with_alice_as_local_user
@alice_bio = '@alice and @bob are fictional characters commonly used as'\ @alice_bio = '@alice and @bob are fictional characters commonly used as' \
'placeholder names in #cryptology, as well as #science and'\ 'placeholder names in #cryptology, as well as #science and' \
'engineering 📖 literature. Not affiliated with @pepe.' 'engineering 📖 literature. Not affiliated with @pepe.'
@alice = Fabricate( @alice = Fabricate(

View file

@ -11,7 +11,7 @@ RSpec.describe UnreservedUsernameValidator, type: :validator do
let(:validator) { described_class.new } let(:validator) { described_class.new }
let(:account) { double(username: username, errors: errors) } let(:account) { double(username: username, errors: errors) }
let(:errors ) { double(add: nil) } let(:errors) { double(add: nil) }
context '@username.blank?' do context '@username.blank?' do
let(:username) { nil } let(:username) { nil }

View file

@ -34,7 +34,7 @@ describe ActivityPub::DistributionWorker do
end end
context 'with direct status' do context 'with direct status' do
let(:mentioned_account) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://foo.bar/inbox')} let(:mentioned_account) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://foo.bar/inbox') }
before do before do
status.update(visibility: :direct) status.update(visibility: :direct)

View file

@ -82,7 +82,7 @@ describe Scheduler::AccountsStatusesCleanupScheduler do
describe '#get_budget' do describe '#get_budget' do
context 'on a single thread' do context 'on a single thread' do
let(:process_set_stub) { [ { 'concurrency' => 1, 'queues' => ['push', 'default'] } ] } let(:process_set_stub) { [{ 'concurrency' => 1, 'queues' => ['push', 'default'] }] }
it 'returns a low value' do it 'returns a low value' do
expect(subject.compute_budget).to be < 10 expect(subject.compute_budget).to be < 10