Skip to content

Commit

Permalink
Merge pull request #205 from kpumuk/dmytro/build-matric-rails-6
Browse files Browse the repository at this point in the history
Upgrade build matrix for Rails 6
  • Loading branch information
kpumuk committed Sep 27, 2019
2 parents 67ddfbc + 6aaf9ac commit ec7ef94
Show file tree
Hide file tree
Showing 20 changed files with 71 additions and 87 deletions.
26 changes: 13 additions & 13 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,13 +147,13 @@ jobs:
working_directory: ~/meta-tags/ruby25-rails-5.2.2
steps: *shared_build_steps

build-ruby25-rails-6.0.0.beta1:
build-ruby25-rails-6.0.0:
docker:
- image: circleci/ruby:2.5
environment:
RAILS_VERSION: 6.0.0.beta1
RAILS_VERSION: 6.0.0
ENABLE_CODE_COVERAGE: 1
working_directory: ~/meta-tags/ruby25-rails-6.0.0.beta1
working_directory: ~/meta-tags/ruby25-rails-6.0.0
steps: *shared_build_steps

build-ruby26-rails-5.0.7:
Expand Down Expand Up @@ -183,19 +183,19 @@ jobs:
working_directory: ~/meta-tags/ruby26-rails-5.2.2
steps: *shared_build_steps

build-ruby26-rails-6.0.0.beta1:
build-ruby26-rails-6.0.0:
docker:
- image: circleci/ruby:2.6
environment:
RAILS_VERSION: 6.0.0.beta1
RAILS_VERSION: 6.0.0
ENABLE_CODE_COVERAGE: 1
working_directory: ~/meta-tags/ruby26-rails-6.0.0.beta1
working_directory: ~/meta-tags/ruby26-rails-6.0.0
steps: *shared_build_steps


upload-coverage:
docker:
- image: circleci/ruby:2.5
- image: circleci/ruby:2.6
environment:
CC_TEST_REPORTER_ID: 8792cbc0d1780830ddd3dd7eb1c25f09f386ba8f04449ad830039469406a6ab3
steps:
Expand All @@ -205,7 +205,7 @@ jobs:
- run:
name: Uploading Code Coverage
command: |
cd /tmp/workspace/ruby25-rails-5.2.2
cd /tmp/workspace/ruby26-rails-6.0.0
./cc-test-reporter upload-coverage --input coverage/codeclimate.coverage.json || true
tests:
docker:
Expand Down Expand Up @@ -236,20 +236,20 @@ workflows:

- build-ruby25-rails-5.2.2

- build-ruby25-rails-6.0.0.beta1
- build-ruby25-rails-6.0.0

- build-ruby26-rails-5.0.7

- build-ruby26-rails-5.1.6

- build-ruby26-rails-5.2.2

- build-ruby26-rails-6.0.0.beta1
- build-ruby26-rails-6.0.0


- upload-coverage:
requires:
- build-ruby25-rails-5.2.2
- build-ruby26-rails-6.0.0

- tests:
requires:
Expand All @@ -270,13 +270,13 @@ workflows:

- build-ruby25-rails-5.2.2

- build-ruby25-rails-6.0.0.beta1
- build-ruby25-rails-6.0.0

- build-ruby26-rails-5.0.7

- build-ruby26-rails-5.1.6

- build-ruby26-rails-5.2.2

- build-ruby26-rails-6.0.0.beta1
- build-ruby26-rails-6.0.0

43 changes: 2 additions & 41 deletions spec/spec_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@
require 'meta_tags'
require 'rspec-html-matchers'

Dir[File.expand_path("support/**/*.rb", __dir__)].each { |f| require f }

RSpec.configure do |config|
if config.files_to_run.one?
# RSpec filters the backtrace by default so as not to be so noisy.
Expand Down Expand Up @@ -63,44 +65,3 @@
mocks.verify_partial_doubles = true
end
end

shared_examples_for '.set_meta_tags' do
context 'with a Hash parameter' do
it 'updates meta tags' do
subject.set_meta_tags(title: 'hello')
expect(subject.meta_tags[:title]).to eq('hello')

subject.set_meta_tags(title: 'world')
expect(subject.meta_tags[:title]).to eq('world')
end
end

context 'with an Object responding to #to_meta_tags parameter' do
it 'updates meta tags' do
object1 = double(to_meta_tags: { title: 'hello' })
object2 = double(to_meta_tags: { title: 'world' })

subject.set_meta_tags(object1)
expect(subject.meta_tags[:title]).to eq('hello')

subject.set_meta_tags(object2)
expect(subject.meta_tags[:title]).to eq('world')
end
end

it 'uses deep merge when updating meta tags' do
subject.set_meta_tags(og: { title: 'hello' })
expect(subject.meta_tags[:og]).to eq('title' => 'hello')

subject.set_meta_tags(og: { description: 'world' })
expect(subject.meta_tags[:og]).to eq('title' => 'hello', 'description' => 'world')

subject.set_meta_tags(og: { admin: { id: 1 } })
expect(subject.meta_tags[:og]).to eq('title' => 'hello', 'description' => 'world', 'admin' => { 'id' => 1 })
end

it 'normalizes :open_graph to :og' do
subject.set_meta_tags(open_graph: { title: 'hello' })
expect(subject.meta_tags[:og]).to eq('title' => 'hello')
end
end
42 changes: 42 additions & 0 deletions spec/support/shared_examples_for_set_meta_tags.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# frozen_string_literal: true

shared_examples_for '.set_meta_tags' do
context 'with a Hash parameter' do
it 'updates meta tags' do
subject.set_meta_tags(title: 'hello')
expect(subject.meta_tags[:title]).to eq('hello')

subject.set_meta_tags(title: 'world')
expect(subject.meta_tags[:title]).to eq('world')
end
end

context 'with an Object responding to #to_meta_tags parameter' do
it 'updates meta tags' do
object1 = double(to_meta_tags: { title: 'hello' })
object2 = double(to_meta_tags: { title: 'world' })

subject.set_meta_tags(object1)
expect(subject.meta_tags[:title]).to eq('hello')

subject.set_meta_tags(object2)
expect(subject.meta_tags[:title]).to eq('world')
end
end

it 'uses deep merge when updating meta tags' do
subject.set_meta_tags(og: { title: 'hello' })
expect(subject.meta_tags[:og]).to eq('title' => 'hello')

subject.set_meta_tags(og: { description: 'world' })
expect(subject.meta_tags[:og]).to eq('title' => 'hello', 'description' => 'world')

subject.set_meta_tags(og: { admin: { id: 1 } })
expect(subject.meta_tags[:og]).to eq('title' => 'hello', 'description' => 'world', 'admin' => { 'id' => 1 })
end

it 'normalizes :open_graph to :og' do
subject.set_meta_tags(open_graph: { title: 'hello' })
expect(subject.meta_tags[:og]).to eq('title' => 'hello')
end
end
13 changes: 13 additions & 0 deletions spec/support/view_helper_setup.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# frozen_string_literal: true

RSpec.configure do |config|
config.define_derived_metadata(file_path: %r{spec/view_helper}) do |metadata|
metadata[:type] = :view_helper
end
end

RSpec.shared_examples "initialize a view for the view helpers", type: :view_helper do
subject do
ActionView::Base.new(ActionView::LookupContext.new([]))
end
end
2 changes: 0 additions & 2 deletions spec/view_helper/article_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require "spec_helper"

describe MetaTags::ViewHelper, "displaying Article meta tags" do
subject { ActionView::Base.new }

it "displays meta tags specified with :article" do
subject.set_meta_tags(article: { author: "https://www.facebook.com/facebook" })
subject.display_meta_tags(site: "someSite").tap do |meta|
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/charset_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper, 'displaying charset' do
subject { ActionView::Base.new }

it 'does not display charset if blank' do
expect(subject.display_meta_tags).to eq('')
expect(subject.display_meta_tags(charset: '')).to eq('')
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/custom_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper do
subject { ActionView::Base.new }

describe 'display any named meta tag that you want to' do
it 'displays testing meta tag' do
subject.display_meta_tags(testing: 'this is a test').tap do |meta|
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/description_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper, 'displaying description' do
subject { ActionView::Base.new }

it 'does not display description if blank' do
subject.description('')
expect(subject.display_meta_tags).to eq('')
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/icon_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper do
subject { ActionView::Base.new }

it 'does not display icon by default' do
subject.display_meta_tags(site: 'someSite').tap do |meta|
expect(meta).not_to have_tag('link', with: { rel: 'icon' })
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/keywords_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper, 'displaying keywords' do
subject { ActionView::Base.new }

it 'does not display keywords if blank' do
subject.keywords('')
expect(subject.display_meta_tags).to eq('')
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/links_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper do
subject { ActionView::Base.new }

describe 'displaying canonical url' do
it 'does not display canonical url by default' do
subject.display_meta_tags(site: 'someSite').tap do |meta|
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/module_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper, 'module' do
subject { ActionView::Base.new }

it 'is mixed into ActionView::Base' do
expect(ActionView::Base.included_modules).to include(described_class)
end
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/noindex_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper do
subject { ActionView::Base.new }

describe 'displaying noindex' do
it 'displays noindex when "noindex" used' do
subject.noindex(true)
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/open_graph_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper, 'displaying Open Graph meta tags' do
subject { ActionView::Base.new }

it 'displays meta tags specified with :open_graph' do
subject.set_meta_tags(
open_graph: {
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/open_search_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper, 'displaying Open Search meta tags' do
subject { ActionView::Base.new }

it 'displays meta tags specified with :open_search' do
subject.set_meta_tags(
open_search: {
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/open_tags_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper, 'meta tags' do
subject { ActionView::Base.new }

context "with open_meta_tags=true" do
it 'generates open charset tag' do
subject.display_meta_tags(charset: 'UTF-8').tap do |meta|
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/refresh_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper, 'displaying refresh' do
subject { ActionView::Base.new }

it 'displays refresh when "refresh" is used' do
subject.refresh(5)
subject.display_meta_tags(site: 'someSite').tap do |meta|
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/title_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper do
subject { ActionView::Base.new }

describe 'displaying title' do
it 'does not display title if blank' do
expect(subject.display_meta_tags).to eq('')
Expand Down
2 changes: 0 additions & 2 deletions spec/view_helper/twitter_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
require 'spec_helper'

describe MetaTags::ViewHelper, 'displaying Twitter meta tags' do
subject { ActionView::Base.new }

it 'displays meta tags specified with :twitter' do
subject.set_meta_tags(
twitter: {
Expand Down
4 changes: 1 addition & 3 deletions spec/view_helper_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@

require 'spec_helper'

describe MetaTags::ViewHelper do
subject { ActionView::Base.new }

describe MetaTags::ViewHelper, type: :view_helper do
describe 'returning values' do
it 'returns headline if specified' do
expect(subject.title('some-title', 'some-headline')).to eq('some-headline')
Expand Down

0 comments on commit ec7ef94

Please sign in to comment.