Skip to content

Commit

Permalink
style: apply a wide variety of manual fixes for rubocop rules
Browse files Browse the repository at this point in the history
  • Loading branch information
tamsin johnson committed Jun 10, 2020
1 parent 07e4727 commit 94556b3
Show file tree
Hide file tree
Showing 20 changed files with 167 additions and 210 deletions.
7 changes: 4 additions & 3 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
inherit_from:
- .rubocop_todo.yml
- .rubocop_fixme.yml

inherit_gem:
bixby: bixby_default.yml



AllCops:
TargetRubyVersion: 2.4
DisplayCopNames: true
Expand All @@ -21,6 +18,10 @@ Lint/ImplicitStringConcatenation:
Exclude:
- 'lib/generators/hyrax/**/*'

Rails/Output:
Exclude:
- 'lib/generators/**/*'

Metrics/BlockLength:
ExcludedMethods: ['included']
Exclude:
Expand Down
67 changes: 35 additions & 32 deletions .rubocop_fixme.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,6 @@ Metrics/ParameterLists:
Exclude:
- 'app/jobs/batch_create_job.rb'

Metrics/AbcSize:
Exclude:
- 'app/indexers/hyrax/file_set_indexer.rb'
- 'app/services/hyrax/workflow/permission_query.rb'

Metrics/ModuleLength:
Exclude:
- 'app/controllers/concerns/hyrax/works_controller_behavior.rb'
Expand All @@ -36,33 +31,6 @@ Metrics/ModuleLength:
# TODO: extract CollectionAccessControls or something, so we don't have to skip this check?
- 'app/models/concerns/hyrax/collection_behavior.rb'

Metrics/MethodLength:
Exclude:
- 'app/controllers/concerns/hyrax/api.rb'
- 'app/controllers/concerns/hyrax/works_controller_behavior.rb'
- 'app/indexers/hyrax/file_set_indexer.rb'
- 'app/inputs/multi_value_select_input.rb'
- 'app/models/concerns/hyrax/solr_document/export.rb'
- 'app/services/hyrax/workflow/permission_query.rb'
- 'lib/hyrax/rails/routes.rb'
- 'spec/support/**/*'


Naming/PredicateName:
Exclude:
- 'app/helpers/hyrax/collections_helper.rb'

Style/DateTime:
Enabled: false

Style/SpecialGlobalVars:
Exclude:
- 'tasks/hyrax_dev.rake'

Rails/Output:
Exclude:
- 'lib/generators/**/*'

RSpec/NamedSubject:
Enabled: false

Expand Down Expand Up @@ -118,6 +86,7 @@ RSpec/ExampleLength:
- 'spec/services/hyrax/workflow/workflow_importer_spec.rb'
- 'spec/views/**/*'
- 'spec/wings/valkyrie/persister_spec.rb'

RSpec/VerifiedDoubles:
Enabled: false

Expand All @@ -129,6 +98,13 @@ RSpec/SubjectStub:
- 'spec/models/hyrax/work_behavior_spec.rb'
- 'spec/search_builders/hyrax/file_set_search_builder_spec.rb'
- 'spec/models/hyrax/operation_spec.rb'
- 'spec/controllers/hyrax/accepts_batches_controller_spec.rb'
- 'spec/indexers/hyrax/repository_reindexer_spec.rb'
- 'spec/jobs/content_depositor_change_event_job_spec.rb'
- 'spec/lib/hyrax/analytics_spec.rb'
- 'spec/models/job_io_wrapper_spec.rb'
- 'spec/search_builders/hyrax/abstract_type_relation_spec.rb'
- 'spec/services/hyrax/database_migrator_spec.rb'

RSpec/AnyInstance:
Exclude:
Expand Down Expand Up @@ -173,3 +149,30 @@ RSpec/ReturnFromStub:
- 'spec/views/hyrax/base/file_manager.html.erb_spec.rb'
- 'spec/views/hyrax/dashboard/profiles/edit.html.erb_spec.rb'
- 'spec/views/hyrax/users/_user_info.html.erb_spec.rb'

# Offense count: 26
RSpec/RepeatedDescription:
Exclude:
- 'spec/models/sipity/agent_spec.rb'
- 'spec/models/sipity/comment_spec.rb'
- 'spec/models/sipity/entity_spec.rb'
- 'spec/models/sipity/entity_specific_responsibility_spec.rb'
- 'spec/models/sipity/role_spec.rb'
- 'spec/models/sipity/workflow_action_spec.rb'
- 'spec/models/sipity/workflow_responsibility_spec.rb'
- 'spec/models/sipity/workflow_role_spec.rb'
- 'spec/models/sipity/workflow_state_action_permission_spec.rb'
- 'spec/models/sipity/workflow_state_action_spec.rb'
- 'spec/models/sipity/workflow_state_spec.rb'

# Offense count: 1
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Rails/HasManyOrHasOneDependent:
Exclude:
- 'app/models/admin_set.rb'

# Offense count: 1
Style/MethodMissingSuper:
Exclude:
- 'app/models/concerns/hyrax/file_set/characterization.rb'
52 changes: 0 additions & 52 deletions .rubocop_todo.yml

This file was deleted.

42 changes: 22 additions & 20 deletions app/controllers/concerns/hyrax/api.rb
Original file line number Diff line number Diff line change
@@ -1,66 +1,68 @@
module Hyrax
module API
# Generate appropriate json response for +response_type+

def self.generate_response_body(response_type: :success, message: nil, options: {})
json_body = default_responses[response_type].merge(options)
json_body[:description] = message if message
json_body
end

# Default (json) responses for various response types
def self.default_responses
DEFAULT_RESPONSES =
{
success: {
code: 200,
message: "Request Succeeded",
description: I18n.t('hyrax.api.success.default')
},
}.freeze,
deleted: {
code: 200,
message: I18n.t('hyrax.api.deleted.default')
},
}.freeze,
created: {
code: 201,
message: "Created the Resource"
},
}.freeze,
accepted: {
code: 202,
message: "Accepted",
description: I18n.t('hyrax.api.accepted.default')
},
}.freeze,
bad_request: {
code: 400,
message: "Bad Request",
description: I18n.t('hyrax.api.bad_request.default')
},
}.freeze,
unauthorized: {
code: 401,
message: "Authentication Required",
description: I18n.t('hyrax.api.unauthorized.default')
},
}.freeze,
forbidden: {
code: 403,
message: "Not Authorized",
description: I18n.t('hyrax.api.forbidden.default')
},
}.freeze,
not_found: {
code: 404,
message: "Resource not found",
description: I18n.t('hyrax.api.not_found.default')
},
}.freeze,
unprocessable_entity: {
code: 422,
message: "Unprocessable Entity",
description: I18n.t('hyrax.api.unprocessable_entity.default'),
errors: {}
},
}.freeze,
internal_error: {
code: 500,
message: "Internal Server Error",
description: I18n.t('hyrax.api.internal_error.default')
}
}
}.freeze
}.freeze

def self.generate_response_body(response_type: :success, message: nil, options: {})
json_body = default_responses[response_type].merge(options)
json_body[:description] = message if message
json_body
end

# Default (json) responses for various response types
def self.default_responses
DEFAULT_RESPONSES
end
end
end
34 changes: 12 additions & 22 deletions app/controllers/concerns/hyrax/works_controller_behavior.rb
Original file line number Diff line number Diff line change
Expand Up @@ -78,15 +78,9 @@ def show
render :show, status: :ok
end
additional_response_formats(wants)
wants.ttl do
render body: presenter.export_as_ttl, mime_type: Mime[:ttl]
end
wants.jsonld do
render body: presenter.export_as_jsonld, mime_type: Mime[:jsonld]
end
wants.nt do
render body: presenter.export_as_nt, mime_type: Mime[:nt]
end
wants.ttl { render body: presenter.export_as_ttl, mime_type: Mime[:ttl] }
wants.jsonld { render body: presenter.export_as_jsonld, mime_type: Mime[:jsonld] }
wants.nt { render body: presenter.export_as_nt, mime_type: Mime[:nt] }
end
end

Expand Down Expand Up @@ -231,19 +225,11 @@ def render_unavailable
flash[:notice] = message
render 'unavailable', status: :unauthorized
end
wants.json do
render plain: message, status: :unauthorized
end
wants.json { render plain: message, status: :unauthorized }
additional_response_formats(wants)
wants.ttl do
render plain: message, status: :unauthorized
end
wants.jsonld do
render plain: message, status: :unauthorized
end
wants.nt do
render plain: message, status: :unauthorized
end
wants.ttl { render plain: message, status: :unauthorized }
wants.jsonld { render plain: message, status: :unauthorized }
wants.nt { render plain: message, status: :unauthorized }
end
end

Expand All @@ -261,8 +247,12 @@ def decide_layout
File.join(theme, layout)
end

##
# @todo should the controller know so much about browse_everything?
# hopefully this can be refactored to be more reusable.
#
# Add uploaded_files to the parameters received by the actor.
def attributes_for_actor
def attributes_for_actor # rubocop:disable Metrics/MethodLength
raw_params = params[hash_key_for_curation_concern]
attributes = if raw_params
work_form_service.form_class(curation_concern).model_attributes(raw_params)
Expand Down
11 changes: 10 additions & 1 deletion app/helpers/hyrax/collections_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -50,11 +50,20 @@ def append_collection_type_url(url, collection_type_id)
uri.to_s
end

##
# @return [Boolean]
def has_collection_search_parameters?
def collection_search_parameters?
params[:cq].present?
end

##
# @deprecated
# @return [Boolean]
def has_collection_search_parameters? # rubocop:disable Naming/PredicateName:
Deprecation.warn('use #collection_search_parameters? helper instead')
collection_search_parameters?
end

def button_for_remove_from_collection(collection, document, label: 'Remove From Collection', btn_class: 'btn-primary')
render 'hyrax/dashboard/collections/button_remove_from_collection', collection: collection, label: label, document: document, btn_class: btn_class
end
Expand Down
2 changes: 1 addition & 1 deletion app/indexers/hyrax/file_set_indexer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ class FileSetIndexer < ActiveFedora::IndexingService
include Hyrax::IndexesBasicMetadata
STORED_LONG = ActiveFedora::Indexing::Descriptor.new(:long, :stored)

def generate_solr_document
def generate_solr_document # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
super.tap do |solr_doc|
solr_doc['hasRelatedMediaFragment_ssim'] = object.representative_id
solr_doc['hasRelatedImage_ssim'] = object.thumbnail_id
Expand Down
2 changes: 1 addition & 1 deletion app/inputs/multi_value_select_input.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def select_options
end
end

def build_field_options(value)
def build_field_options(value) # rubocop:disable Metrics/MethodLength (builder method)
field_options = input_html_options.dup

field_options[:value] = value
Expand Down
Loading

0 comments on commit 94556b3

Please sign in to comment.