From eca56056e82c5b23f03e71084802ed411a69c079 Mon Sep 17 00:00:00 2001 From: Justin Coyne Date: Wed, 26 Jul 2017 10:46:05 -0500 Subject: [PATCH 1/2] Install rubocop --- .rubocop.yml | 14 +++++ Rakefile | 15 ++++- bin/console | 6 +- iiif_manifest.gemspec | 31 +++++----- lib/iiif_manifest.rb | 2 +- lib/iiif_manifest/iiif_endpoint.rb | 2 +- lib/iiif_manifest/manifest_builder.rb | 16 +++--- .../manifest_builder/canvas_builder.rb | 24 ++++---- .../canvas_builder_factory.rb | 6 +- .../deep_canvas_builder_factory.rb | 12 ++-- .../manifest_builder/image_builder.rb | 18 +++--- .../manifest_builder/image_service_builder.rb | 6 +- .../record_property_builder.rb | 6 +- .../manifest_builder/resource_builder.rb | 18 +++--- .../manifest_builder/sequence_builder.rb | 24 ++++---- lib/iiif_manifest/version.rb | 2 +- spec/iiif_manifest_spec.rb | 1 - spec/lib/iiif_manifest/display_image_spec.rb | 14 +++-- spec/lib/iiif_manifest/iiif_endpoint_spec.rb | 12 ++-- .../manifest_builder/resource_builder_spec.rb | 11 ++-- .../iiif_manifest/manifest_factory_spec.rb | 57 ++++++++++--------- 21 files changed, 166 insertions(+), 131 deletions(-) create mode 100644 .rubocop.yml diff --git a/.rubocop.yml b/.rubocop.yml new file mode 100644 index 0000000..7fc1688 --- /dev/null +++ b/.rubocop.yml @@ -0,0 +1,14 @@ +require: rubocop-rspec + +AllCops: + DisplayCopNames: true + +Metrics/LineLength: + Max: 120 + +Metrics/BlockLength: + Exclude: + - 'spec/**/*.rb' + +RSpec/MultipleExpectations: + Enabled: false diff --git a/Rakefile b/Rakefile index b7e9ed5..8894714 100644 --- a/Rakefile +++ b/Rakefile @@ -1,6 +1,15 @@ -require "bundler/gem_tasks" -require "rspec/core/rake_task" +require 'bundler/gem_tasks' +require 'rspec/core/rake_task' +require 'rubocop/rake_task' RSpec::Core::RakeTask.new(:spec) -task :default => :spec +desc 'Run style checker' +RuboCop::RakeTask.new(:rubocop) do |task| + task.fail_on_error = true +end + +desc 'Run all checks' +task ci: [:rubocop, :spec] + +task default: :ci diff --git a/bin/console b/bin/console index 9b7fab2..774366f 100755 --- a/bin/console +++ b/bin/console @@ -1,7 +1,7 @@ #!/usr/bin/env ruby -require "bundler/setup" -require "iiif_manifest" +require 'bundler/setup' +require 'iiif_manifest' # You can add fixtures and/or initialization code here to make experimenting # with your gem easier. You can also use a different console, if you like. @@ -10,5 +10,5 @@ require "iiif_manifest" # require "pry" # Pry.start -require "irb" +require 'irb' IRB.start diff --git a/iiif_manifest.gemspec b/iiif_manifest.gemspec index 8878ae4..cfa3239 100644 --- a/iiif_manifest.gemspec +++ b/iiif_manifest.gemspec @@ -1,27 +1,30 @@ # coding: utf-8 + lib = File.expand_path('../lib', __FILE__) $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) require 'iiif_manifest/version' Gem::Specification.new do |spec| - spec.name = "iiif_manifest" + spec.name = 'iiif_manifest' spec.version = IIIFManifest::VERSION - spec.authors = ["Justin Coyne", "Trey Pendragon"] - spec.email = ["jcoyne@justincoyne.com"] + spec.authors = ['Justin Coyne', 'Trey Pendragon'] + spec.email = ['jcoyne@justincoyne.com'] - spec.summary = %q{Generate IIIF presentation manifests for Hydra::Works} - spec.description = %q{IIIF http://iiif.io/ defines an API for presenting related images in a viewer. This transforms Hydra::Works objects into that format usable by players such as http://universalviewer.io/} - spec.homepage = "http://github.com/projecthydra-labs/iiif_manifest" + spec.summary = 'Generate IIIF presentation manifests for Hydra::Works' + spec.description = 'IIIF http://iiif.io/ defines an API for presenting related images in a viewer. This transforms Hydra::Works objects into that format usable by players such as http://universalviewer.io/' + spec.homepage = 'http://github.com/projecthydra-labs/iiif_manifest' spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) } - spec.bindir = "exe" + spec.bindir = 'exe' spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) } - spec.require_paths = ["lib"] + spec.require_paths = ['lib'] + + spec.add_dependency 'activesupport', '>= 4' + spec.add_dependency 'iiif-presentation', '~> 0.2.0' - spec.add_dependency "activesupport", ">= 4" - spec.add_dependency "iiif-presentation", '~> 0.2.0' - - spec.add_development_dependency "bundler", "~> 1.11" - spec.add_development_dependency "rake", "~> 10.0" - spec.add_development_dependency "rspec", "~> 3.0" + spec.add_development_dependency 'bundler', '~> 1.11' + spec.add_development_dependency 'rake', '~> 10.0' + spec.add_development_dependency 'rspec', '~> 3.0' + spec.add_development_dependency 'rubocop' + spec.add_development_dependency 'rubocop-rspec' end diff --git a/lib/iiif_manifest.rb b/lib/iiif_manifest.rb index 50704f9..4e7b9f4 100644 --- a/lib/iiif_manifest.rb +++ b/lib/iiif_manifest.rb @@ -1,4 +1,4 @@ -require "iiif_manifest/version" +require 'iiif_manifest/version' require 'active_support' require 'active_support/core_ext/module' require 'active_support/core_ext/object' diff --git a/lib/iiif_manifest/iiif_endpoint.rb b/lib/iiif_manifest/iiif_endpoint.rb index 508bb84..03965df 100644 --- a/lib/iiif_manifest/iiif_endpoint.rb +++ b/lib/iiif_manifest/iiif_endpoint.rb @@ -7,7 +7,7 @@ def initialize(url, profile: nil) end def context - "http://iiif.io/api/image/2/context.json" + 'http://iiif.io/api/image/2/context.json' end end end diff --git a/lib/iiif_manifest/manifest_builder.rb b/lib/iiif_manifest/manifest_builder.rb index 7f32893..8b70bff 100644 --- a/lib/iiif_manifest/manifest_builder.rb +++ b/lib/iiif_manifest/manifest_builder.rb @@ -22,8 +22,8 @@ def initialize(work, builders:, top_record_factory:) end def apply(collection) - collection["manifests"] ||= [] - collection["manifests"] << to_h + collection['manifests'] ||= [] + collection['manifests'] << to_h collection end @@ -33,12 +33,12 @@ def to_h private - def manifest - @manifest ||= manifest_builder_class - end + def manifest + @manifest ||= manifest_builder_class + end - def top_record - top_record_factory.new - end + def top_record + top_record_factory.new + end end end diff --git a/lib/iiif_manifest/manifest_builder/canvas_builder.rb b/lib/iiif_manifest/manifest_builder/canvas_builder.rb index 2381e5f..b86185f 100644 --- a/lib/iiif_manifest/manifest_builder/canvas_builder.rb +++ b/lib/iiif_manifest/manifest_builder/canvas_builder.rb @@ -26,18 +26,18 @@ def apply(sequence) private - def display_image - record.display_image if record.respond_to?(:display_image) - end - - def apply_record_properties - canvas['@id'] = path - canvas.label = record.to_s - end - - def attach_image - ImageBuilder.new(display_image).apply(canvas) - end + def display_image + record.display_image if record.respond_to?(:display_image) + end + + def apply_record_properties + canvas['@id'] = path + canvas.label = record.to_s + end + + def attach_image + ImageBuilder.new(display_image).apply(canvas) + end end end end diff --git a/lib/iiif_manifest/manifest_builder/canvas_builder_factory.rb b/lib/iiif_manifest/manifest_builder/canvas_builder_factory.rb index 7b39d08..ae736e6 100644 --- a/lib/iiif_manifest/manifest_builder/canvas_builder_factory.rb +++ b/lib/iiif_manifest/manifest_builder/canvas_builder_factory.rb @@ -17,9 +17,9 @@ def from(work) private - def file_set_presenters(work) - work.file_set_presenters - end + def file_set_presenters(work) + work.file_set_presenters + end end end end diff --git a/lib/iiif_manifest/manifest_builder/deep_canvas_builder_factory.rb b/lib/iiif_manifest/manifest_builder/deep_canvas_builder_factory.rb index 6de4a61..825fb08 100644 --- a/lib/iiif_manifest/manifest_builder/deep_canvas_builder_factory.rb +++ b/lib/iiif_manifest/manifest_builder/deep_canvas_builder_factory.rb @@ -26,13 +26,13 @@ def each(&block) private - def file_set_presenters - work.try(:file_set_presenters) || [] - end + def file_set_presenters + work.try(:file_set_presenters) || [] + end - def work_presenters - work.try(:work_presenters) || [] - end + def work_presenters + work.try(:work_presenters) || [] + end end end end diff --git a/lib/iiif_manifest/manifest_builder/image_builder.rb b/lib/iiif_manifest/manifest_builder/image_builder.rb index d230f67..f95a319 100644 --- a/lib/iiif_manifest/manifest_builder/image_builder.rb +++ b/lib/iiif_manifest/manifest_builder/image_builder.rb @@ -16,17 +16,17 @@ def apply(canvas) private - def build_resource - resource_builder.apply(annotation) - end + def build_resource + resource_builder.apply(annotation) + end - def resource_builder - ResourceBuilder.new(display_image) - end + def resource_builder + ResourceBuilder.new(display_image) + end - def annotation - @annotation ||= IIIF::Presentation::Annotation.new - end + def annotation + @annotation ||= IIIF::Presentation::Annotation.new + end end end end diff --git a/lib/iiif_manifest/manifest_builder/image_service_builder.rb b/lib/iiif_manifest/manifest_builder/image_service_builder.rb index 7f30469..516de53 100644 --- a/lib/iiif_manifest/manifest_builder/image_service_builder.rb +++ b/lib/iiif_manifest/manifest_builder/image_service_builder.rb @@ -15,9 +15,9 @@ def apply(resource) private - def service - @service ||= IIIF::Service.new - end + def service + @service ||= IIIF::Service.new + end end end end diff --git a/lib/iiif_manifest/manifest_builder/record_property_builder.rb b/lib/iiif_manifest/manifest_builder/record_property_builder.rb index a296df4..59025c4 100644 --- a/lib/iiif_manifest/manifest_builder/record_property_builder.rb +++ b/lib/iiif_manifest/manifest_builder/record_property_builder.rb @@ -17,9 +17,9 @@ def apply(manifest) private - def viewing_hint - (record.respond_to?(:viewing_hint) && record.send(:viewing_hint)) || 'individuals' - end + def viewing_hint + (record.respond_to?(:viewing_hint) && record.send(:viewing_hint)) || 'individuals' + end # def viewing_direction # record.try(:viewing_direction) || "left-to-right" diff --git a/lib/iiif_manifest/manifest_builder/resource_builder.rb b/lib/iiif_manifest/manifest_builder/resource_builder.rb index 27c435e..091247f 100644 --- a/lib/iiif_manifest/manifest_builder/resource_builder.rb +++ b/lib/iiif_manifest/manifest_builder/resource_builder.rb @@ -18,17 +18,17 @@ def apply(annotation) private - def resource - @resource ||= IIIF::Presentation::Resource.new - end + def resource + @resource ||= IIIF::Presentation::Resource.new + end - def iiif_endpoint - display_image.try(:iiif_endpoint) - end + def iiif_endpoint + display_image.try(:iiif_endpoint) + end - def image_service_builder - ImageServiceBuilder.new(iiif_endpoint) - end + def image_service_builder + ImageServiceBuilder.new(iiif_endpoint) + end end end end diff --git a/lib/iiif_manifest/manifest_builder/sequence_builder.rb b/lib/iiif_manifest/manifest_builder/sequence_builder.rb index e564b1a..a9df206 100644 --- a/lib/iiif_manifest/manifest_builder/sequence_builder.rb +++ b/lib/iiif_manifest/manifest_builder/sequence_builder.rb @@ -19,19 +19,19 @@ def empty? private - def canvas_builder - canvas_builder_factory.from(work) - end + def canvas_builder + canvas_builder_factory.from(work) + end - def sequence - @sequence ||= - begin - sequence = IIIF::Presentation::Sequence.new - sequence["@id"] ||= work.manifest_url + "/sequence/normal" - canvas_builder.apply(sequence) - sequence - end - end + def sequence + @sequence ||= + begin + sequence = IIIF::Presentation::Sequence.new + sequence['@id'] ||= work.manifest_url + '/sequence/normal' + canvas_builder.apply(sequence) + sequence + end + end end end end diff --git a/lib/iiif_manifest/version.rb b/lib/iiif_manifest/version.rb index c579d8b..e81de89 100644 --- a/lib/iiif_manifest/version.rb +++ b/lib/iiif_manifest/version.rb @@ -1,3 +1,3 @@ module IIIFManifest - VERSION = "0.2.0" + VERSION = '0.2.0'.freeze end diff --git a/spec/iiif_manifest_spec.rb b/spec/iiif_manifest_spec.rb index af39c57..41ecea5 100644 --- a/spec/iiif_manifest_spec.rb +++ b/spec/iiif_manifest_spec.rb @@ -4,5 +4,4 @@ it 'has a version number' do expect(IIIFManifest::VERSION).not_to be nil end - end diff --git a/spec/lib/iiif_manifest/display_image_spec.rb b/spec/lib/iiif_manifest/display_image_spec.rb index 5c97c36..a468f8c 100644 --- a/spec/lib/iiif_manifest/display_image_spec.rb +++ b/spec/lib/iiif_manifest/display_image_spec.rb @@ -2,21 +2,23 @@ RSpec.describe IIIFManifest::DisplayImage do subject { described_class.new(url, width: width, height: height, format: format) } - let(:url) { "http://bla.org" } + + let(:url) { 'http://bla.org' } let(:width) { 10 } let(:height) { 10 } - let(:format) { "image/jpeg" } - let(:iiif_endpoint) { double("endpoint") } - it "has accessors" do + let(:format) { 'image/jpeg' } + let(:iiif_endpoint) { double('endpoint') } + + it 'has accessors' do expect(subject.url).to eq url expect(subject.width).to eq width expect(subject.height).to eq height end - it "has an optional iiif_endpoint argument" do + it 'has an optional iiif_endpoint argument' do r = described_class.new(url, width: width, height: height, iiif_endpoint: iiif_endpoint) expect(r.iiif_endpoint).to eq iiif_endpoint end - it "has an optional format" do + it 'has an optional format' do r = described_class.new(url, width: width, height: height, format: format) expect(r.format).to eq format end diff --git a/spec/lib/iiif_manifest/iiif_endpoint_spec.rb b/spec/lib/iiif_manifest/iiif_endpoint_spec.rb index 031522f..bf36520 100644 --- a/spec/lib/iiif_manifest/iiif_endpoint_spec.rb +++ b/spec/lib/iiif_manifest/iiif_endpoint_spec.rb @@ -2,13 +2,15 @@ RSpec.describe IIIFManifest::IIIFEndpoint do subject { described_class.new(url, profile: profile) } - let(:url) { "http://bla.org" } - let(:profile) { "myprofile.net" } - it "has accessors" do + + let(:url) { 'http://bla.org' } + let(:profile) { 'myprofile.net' } + + it 'has accessors' do expect(subject.url).to eq url expect(subject.profile).to eq profile end - it "can return context" do - expect(subject.context).to eq "http://iiif.io/api/image/2/context.json" + it 'can return context' do + expect(subject.context).to eq 'http://iiif.io/api/image/2/context.json' end end diff --git a/spec/lib/iiif_manifest/manifest_builder/resource_builder_spec.rb b/spec/lib/iiif_manifest/manifest_builder/resource_builder_spec.rb index 43cb582..8d91115 100644 --- a/spec/lib/iiif_manifest/manifest_builder/resource_builder_spec.rb +++ b/spec/lib/iiif_manifest/manifest_builder/resource_builder_spec.rb @@ -6,11 +6,11 @@ let(:display_image) { IIIFManifest::DisplayImage.new(url, width: 640, height: 480) } let(:annotation) { IIIF::Presentation::Annotation.new } - describe "#apply" do + describe '#apply' do subject { builder.apply(annotation) } - context "without iiif_endpoint" do - it "sets a resource on the annotation" do + context 'without iiif_endpoint' do + it 'sets a resource on the annotation' do subject expect(annotation.resource).to be_kind_of IIIF::Presentation::Resource expect(annotation.resource['@id']).to eq url @@ -19,12 +19,13 @@ end end - context "with iiif_endpoint" do + context 'with iiif_endpoint' do let(:iiif_endpoint) { IIIFManifest::IIIFEndpoint.new('http://example.com/') } let(:display_image) do IIIFManifest::DisplayImage.new(url, width: 640, height: 480, iiif_endpoint: iiif_endpoint) end - it "sets a resource on the annotation" do + + it 'sets a resource on the annotation' do subject expect(annotation.resource).to be_kind_of IIIF::Presentation::Resource expect(annotation.resource['@id']).to eq url diff --git a/spec/lib/iiif_manifest/manifest_factory_spec.rb b/spec/lib/iiif_manifest/manifest_factory_spec.rb index 767da86..0cd2ce7 100644 --- a/spec/lib/iiif_manifest/manifest_factory_spec.rb +++ b/spec/lib/iiif_manifest/manifest_factory_spec.rb @@ -1,8 +1,9 @@ require 'spec_helper' RSpec.describe IIIFManifest::ManifestFactory do - let(:presenter_class) { Book } subject { described_class.new(book_presenter) } + + let(:presenter_class) { Book } let(:book_presenter) { presenter_class.new('book-77') } before do @@ -22,6 +23,7 @@ def file_set_presenters def work_presenters [] end + def manifest_url "http://test.host/books/#{@id}/manifest" end @@ -33,7 +35,7 @@ def id end def display_image - IIIFManifest::DisplayImage.new(id, width: 100, height: 100, format: "image/jpeg") + IIIFManifest::DisplayImage.new(id, width: 100, height: 100, format: 'image/jpeg') end end end @@ -43,26 +45,27 @@ def display_image Object.send(:remove_const, :Book) end - describe "#to_h" do + describe '#to_h' do let(:result) { subject.to_h } let(:json_result) { JSON.parse(subject.to_h.to_json) } - it "has a label" do + + it 'has a label' do expect(result.label).to eq book_presenter.to_s end - it "has an ID" do - expect(result['@id']).to eq "http://test.host/books/book-77/manifest" + it 'has an ID' do + expect(result['@id']).to eq 'http://test.host/books/book-77/manifest' end - context "when there are no files" do - it "returns no sequences" do - expect(result["sequences"]).to eq nil + context 'when there are no files' do + it 'returns no sequences' do + expect(result['sequences']).to eq nil end end - context "when there is a fileset" do + context 'when there is a fileset' do let(:file_presenter) { DisplayImagePresenter.new } - it "returns a sequence" do + it 'returns a sequence' do allow(IIIFManifest::ManifestBuilder::CanvasBuilder).to receive(:new).and_call_original allow(book_presenter).to receive(:file_set_presenters).and_return([file_presenter]) @@ -73,46 +76,48 @@ def display_image end end - context "when there are child works" do + context 'when there are child works' do let(:child_work_presenter) { presenter_class.new('test2') } + before do allow(book_presenter).to receive(:work_presenters).and_return([child_work_presenter]) end - it "returns a IIIF Collection" do - expect(result['@type']).to eq "sc:Collection" + it 'returns a IIIF Collection' do + expect(result['@type']).to eq 'sc:Collection' end it "doesn't build sequences" do expect(result['sequences']).to eq nil end - it "has a multi-part viewing hint" do - expect(json_result["viewingHint"]).to eq "multi-part" + it 'has a multi-part viewing hint' do + expect(json_result['viewingHint']).to eq 'multi-part' end - it "builds child manifests" do - expect(result["manifests"].length).to eq 1 - first_child = result["manifests"].first - expect(first_child['@id']).to eq "http://test.host/books/test2/manifest" - expect(first_child['@type']).to eq "sc:Manifest" + it 'builds child manifests' do + expect(result['manifests'].length).to eq 1 + first_child = result['manifests'].first + expect(first_child['@id']).to eq 'http://test.host/books/test2/manifest' + expect(first_child['@type']).to eq 'sc:Manifest' expect(first_child['label']).to eq child_work_presenter.to_s end end - context "when there are child works AND files" do + context 'when there are child works AND files' do let(:child_work_presenter) { presenter_class.new('test-99') } let(:file_presenter) { DisplayImagePresenter.new } let(:file_presenter2) { DisplayImagePresenter.new } + before do allow(book_presenter).to receive(:work_presenters).and_return([child_work_presenter]) allow(book_presenter).to receive(:file_set_presenters).and_return([file_presenter]) allow(child_work_presenter).to receive(:file_set_presenters).and_return([file_presenter2]) end - it "returns a IIIF Manifest" do - expect(result['@type']).to eq "sc:Manifest" + it 'returns a IIIF Manifest' do + expect(result['@type']).to eq 'sc:Manifest' end it "doesn't build manifests" do expect(result['manifests']).to eq nil end - it "builds sequences from all the child file sets" do - expect(result["sequences"].first["canvases"].length).to eq 2 + it 'builds sequences from all the child file sets' do + expect(result['sequences'].first['canvases'].length).to eq 2 end end end From 915dbd91a4d70bb7129f4561f850acfda9b92e59 Mon Sep 17 00:00:00 2001 From: Justin Coyne Date: Wed, 26 Jul 2017 10:53:01 -0500 Subject: [PATCH 2/2] Add a rubocop todo list --- .rubocop.yml | 1 + .rubocop_todo.yml | 75 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 .rubocop_todo.yml diff --git a/.rubocop.yml b/.rubocop.yml index 7fc1688..4412f1e 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,4 +1,5 @@ require: rubocop-rspec +inherit_from: .rubocop_todo.yml AllCops: DisplayCopNames: true diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml new file mode 100644 index 0000000..6e8a6a5 --- /dev/null +++ b/.rubocop_todo.yml @@ -0,0 +1,75 @@ +# This configuration was generated by +# `rubocop --auto-gen-config` +# on 2017-07-26 10:46:37 -0500 using RuboCop version 0.49.1. +# The point is for the user to remove these configuration records +# one by one as the offenses are removed from the code base. +# Note that changes in the inspected code, or installation of new +# versions of RuboCop, may require this file to be generated again. + +# Offense count: 2 +Metrics/AbcSize: + Exclude: + - 'lib/iiif_manifest/manifest_builder/resource_builder.rb' + - 'lib/iiif_manifest/manifest_factory.rb' + +# Offense count: 1 +# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns. +# URISchemes: http, https +Metrics/LineLength: + Exclude: + - 'iiif_manifest.gemspec' + +# Offense count: 1 +# Configuration parameters: AssignmentOnly. +RSpec/InstanceVariable: + Exclude: + - 'spec/lib/iiif_manifest/manifest_factory_spec.rb' + +# Offense count: 8 +RSpec/NamedSubject: + Exclude: + - 'spec/lib/iiif_manifest/display_image_spec.rb' + - 'spec/lib/iiif_manifest/iiif_endpoint_spec.rb' + - 'spec/lib/iiif_manifest/manifest_builder/resource_builder_spec.rb' + +# Offense count: 1 +# Configuration parameters: IgnoreSymbolicNames. +RSpec/VerifiedDoubles: + Exclude: + - 'spec/lib/iiif_manifest/display_image_spec.rb' + +# Offense count: 20 +Style/Documentation: + Exclude: + - 'lib/iiif_manifest/display_image.rb' + - 'lib/iiif_manifest/iiif_collection.rb' + - 'lib/iiif_manifest/iiif_endpoint.rb' + - 'lib/iiif_manifest/manifest_builder/canvas_builder.rb' + - 'lib/iiif_manifest/manifest_builder/canvas_builder.rb' + - 'lib/iiif_manifest/manifest_builder/canvas_builder_factory.rb' + - 'lib/iiif_manifest/manifest_builder/child_manifest_builder_factory.rb' + - 'lib/iiif_manifest/manifest_builder/composite_builder.rb' + - 'lib/iiif_manifest/manifest_builder/composite_builder_factory.rb' + - 'lib/iiif_manifest/manifest_builder/deep_canvas_builder_factory.rb' + - 'lib/iiif_manifest/manifest_builder/image_builder.rb' + - 'lib/iiif_manifest/manifest_builder/image_service_builder.rb' + - 'lib/iiif_manifest/manifest_builder/record_property_builder.rb' + - 'lib/iiif_manifest/manifest_builder/resource_builder.rb' + - 'lib/iiif_manifest/manifest_builder/sequence_builder.rb' + - 'lib/iiif_manifest/manifest_builder.rb' + - 'lib/iiif_manifest/manifest_factory.rb' + - 'lib/iiif_manifest/manifest_service_locator.rb' + - 'lib/iiif_manifest.rb' + - 'spec/lib/iiif_manifest/manifest_factory_spec.rb' + +# Offense count: 1 +Style/MethodMissing: + Exclude: + - 'lib/iiif_manifest/manifest_builder/composite_builder.rb' + +# Offense count: 1 +# Cop supports --auto-correct. +# Configuration parameters: MinSize, SupportedStyles. +# SupportedStyles: percent, brackets +Style/SymbolArray: + EnforcedStyle: brackets