diff --git a/.rspec b/.rspec index 616c4338..b8878d1f 100644 --- a/.rspec +++ b/.rspec @@ -1,2 +1 @@ ---colour --backtrace diff --git a/spec/acts_as_taggable_on/acts_as_taggable_on_spec.rb b/spec/acts_as_taggable_on/acts_as_taggable_on_spec.rb index 37a4d031..4c0875a4 100644 --- a/spec/acts_as_taggable_on/acts_as_taggable_on_spec.rb +++ b/spec/acts_as_taggable_on/acts_as_taggable_on_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe 'Acts As Taggable On' do +RSpec.describe 'Acts As Taggable On' do it "should provide a class method 'taggable?' that is false for untaggable models" do expect(UntaggableModel).to_not be_taggable diff --git a/spec/acts_as_taggable_on/acts_as_tagger_spec.rb b/spec/acts_as_taggable_on/acts_as_tagger_spec.rb index 69c5965f..5bf6cfba 100644 --- a/spec/acts_as_taggable_on/acts_as_tagger_spec.rb +++ b/spec/acts_as_taggable_on/acts_as_tagger_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe 'acts_as_tagger' do +RSpec.describe 'acts_as_tagger' do describe 'Tagger Method Generation' do before(:each) do diff --git a/spec/acts_as_taggable_on/caching_spec.rb b/spec/acts_as_taggable_on/caching_spec.rb index f054092a..47f24e04 100644 --- a/spec/acts_as_taggable_on/caching_spec.rb +++ b/spec/acts_as_taggable_on/caching_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe 'Acts As Taggable On' do +RSpec.describe 'Acts As Taggable On' do describe 'Caching' do before(:each) do diff --git a/spec/acts_as_taggable_on/default_parser_spec.rb b/spec/acts_as_taggable_on/default_parser_spec.rb index b162d025..332d44be 100644 --- a/spec/acts_as_taggable_on/default_parser_spec.rb +++ b/spec/acts_as_taggable_on/default_parser_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe ActsAsTaggableOn::DefaultParser do +RSpec.describe ActsAsTaggableOn::DefaultParser do it '#parse should return empty array if empty array is passed' do parser = ActsAsTaggableOn::DefaultParser.new([]) expect(parser.parse).to be_empty diff --git a/spec/acts_as_taggable_on/dirty_spec.rb b/spec/acts_as_taggable_on/dirty_spec.rb index c447bfdc..b19eafaa 100644 --- a/spec/acts_as_taggable_on/dirty_spec.rb +++ b/spec/acts_as_taggable_on/dirty_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe 'Dirty behavior of taggable objects' do +RSpec.describe 'Dirty behavior of taggable objects' do context 'with un-contexted tags' do before(:each) do @taggable = TaggableModel.create(tag_list: 'awesome, epic') diff --git a/spec/acts_as_taggable_on/generic_parser_spec.rb b/spec/acts_as_taggable_on/generic_parser_spec.rb index 173f6ba4..d5407863 100644 --- a/spec/acts_as_taggable_on/generic_parser_spec.rb +++ b/spec/acts_as_taggable_on/generic_parser_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe ActsAsTaggableOn::GenericParser do +RSpec.describe ActsAsTaggableOn::GenericParser do it '#parse should return empty array if empty tag string is passed' do tag_list = ActsAsTaggableOn::GenericParser.new('') expect(tag_list.parse).to be_empty diff --git a/spec/acts_as_taggable_on/related_spec.rb b/spec/acts_as_taggable_on/related_spec.rb index 58fd5b04..bbbc9aec 100644 --- a/spec/acts_as_taggable_on/related_spec.rb +++ b/spec/acts_as_taggable_on/related_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe 'Acts As Taggable On' do +RSpec.describe 'Acts As Taggable On' do describe 'Related Objects' do diff --git a/spec/acts_as_taggable_on/single_table_inheritance_spec.rb b/spec/acts_as_taggable_on/single_table_inheritance_spec.rb index 7444d06c..a7a80ada 100644 --- a/spec/acts_as_taggable_on/single_table_inheritance_spec.rb +++ b/spec/acts_as_taggable_on/single_table_inheritance_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe 'Single Table Inheritance' do +RSpec.describe 'Single Table Inheritance' do let(:taggable) { TaggableModel.new(name: 'taggable model') } let(:inheriting_model) { InheritingTaggableModel.new(name: 'Inheriting Taggable Model') } diff --git a/spec/acts_as_taggable_on/tag_list_spec.rb b/spec/acts_as_taggable_on/tag_list_spec.rb index a1ce10ad..1a0b5243 100644 --- a/spec/acts_as_taggable_on/tag_list_spec.rb +++ b/spec/acts_as_taggable_on/tag_list_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe ActsAsTaggableOn::TagList do +RSpec.describe ActsAsTaggableOn::TagList do let(:tag_list) { ActsAsTaggableOn::TagList.new('awesome', 'radical') } let(:another_tag_list) { ActsAsTaggableOn::TagList.new('awesome','crazy', 'alien') } diff --git a/spec/acts_as_taggable_on/tag_spec.rb b/spec/acts_as_taggable_on/tag_spec.rb index 6c4514ba..282b34b3 100644 --- a/spec/acts_as_taggable_on/tag_spec.rb +++ b/spec/acts_as_taggable_on/tag_spec.rb @@ -1,8 +1,7 @@ require 'spec_helper' require 'db/migrate/2_add_missing_unique_indices.rb' - -shared_examples_for 'without unique index' do +RSpec.shared_examples_for 'without unique index' do prepend_before(:all) { AddMissingUniqueIndices.down } append_after(:all) do ActsAsTaggableOn::Tag.delete_all @@ -10,7 +9,7 @@ end end -describe ActsAsTaggableOn::Tag do +RSpec.describe ActsAsTaggableOn::Tag do before(:each) do @tag = ActsAsTaggableOn::Tag.new @user = TaggableModel.create(name: 'Pablo', tenant_id: 100) diff --git a/spec/acts_as_taggable_on/taggable_spec.rb b/spec/acts_as_taggable_on/taggable_spec.rb index 04a177b7..a708df75 100644 --- a/spec/acts_as_taggable_on/taggable_spec.rb +++ b/spec/acts_as_taggable_on/taggable_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe 'Taggable To Preserve Order' do +RSpec.describe 'Taggable To Preserve Order' do before(:each) do @taggable = OrderedTaggableModel.new(name: 'Bob Jones') end @@ -94,7 +94,7 @@ end end -describe 'Taggable' do +RSpec.describe 'Taggable' do before(:each) do @taggable = TaggableModel.new(name: 'Bob Jones') @taggables = [@taggable, TaggableModel.new(name: 'John Doe')] @@ -798,7 +798,7 @@ end end -describe 'Taggable model with json columns', if: postgresql_support_json? do +RSpec.describe 'Taggable model with json columns', if: postgresql_support_json? do before(:each) do @taggable = TaggableModelWithJson.new(:name => 'Bob Jones') @taggables = [@taggable, TaggableModelWithJson.new(:name => 'John Doe')] diff --git a/spec/acts_as_taggable_on/tagger_spec.rb b/spec/acts_as_taggable_on/tagger_spec.rb index 68351ad2..57e669ba 100644 --- a/spec/acts_as_taggable_on/tagger_spec.rb +++ b/spec/acts_as_taggable_on/tagger_spec.rb @@ -1,13 +1,11 @@ require 'spec_helper' -describe 'Tagger' do +RSpec.describe 'Tagger' do before(:each) do @user = User.create @taggable = TaggableModel.create(name: 'Bob Jones') end - - it 'should have taggings' do @user.tag(@taggable, with: 'ruby,scheme', on: :tags) expect(@user.owned_taggings.size).to eq(2) diff --git a/spec/acts_as_taggable_on/tagging_spec.rb b/spec/acts_as_taggable_on/tagging_spec.rb index 8e3948f5..4a88ba70 100644 --- a/spec/acts_as_taggable_on/tagging_spec.rb +++ b/spec/acts_as_taggable_on/tagging_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe ActsAsTaggableOn::Tagging do +RSpec.describe ActsAsTaggableOn::Tagging do before(:each) do @tagging = ActsAsTaggableOn::Tagging.new end diff --git a/spec/acts_as_taggable_on/tags_helper_spec.rb b/spec/acts_as_taggable_on/tags_helper_spec.rb index 1fd8bd71..7ef0c87f 100644 --- a/spec/acts_as_taggable_on/tags_helper_spec.rb +++ b/spec/acts_as_taggable_on/tags_helper_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe ActsAsTaggableOn::TagsHelper do +RSpec.describe ActsAsTaggableOn::TagsHelper do before(:each) do @bob = TaggableModel.create(name: 'Bob Jones', language_list: 'ruby, php') @tom = TaggableModel.create(name: 'Tom Marley', language_list: 'ruby, java') @@ -12,7 +12,6 @@ class Helper end.new end - it 'should yield the proper css classes' do tags = {} diff --git a/spec/acts_as_taggable_on/utils_spec.rb b/spec/acts_as_taggable_on/utils_spec.rb index bef27ba3..6cc94b48 100644 --- a/spec/acts_as_taggable_on/utils_spec.rb +++ b/spec/acts_as_taggable_on/utils_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe ActsAsTaggableOn::Utils do +RSpec.describe ActsAsTaggableOn::Utils do describe '#like_operator' do it 'should return \'ILIKE\' when the adapter is PostgreSQL' do allow(ActsAsTaggableOn::Utils.connection).to receive(:adapter_name) { 'PostgreSQL' } diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index d3dd090b..b2329174 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -17,4 +17,32 @@ RSpec.configure do |config| config.raise_errors_for_deprecations! + + config.color = true + + # disable monkey patching + # see: https://rspec.info/features/3-13/rspec-core/configuration/zero-monkey-patching-mode/ + config.disable_monkey_patching! + + config.before(:suite) do + DatabaseCleaner.clean_with(:truncation) + DatabaseCleaner.strategy = :transaction + DatabaseCleaner.clean + end + + config.before(:each, :database_cleaner_delete) do + DatabaseCleaner.strategy = :truncation + end + + config.after(:suite) do + DatabaseCleaner.clean + end + + config.before(:each) do + DatabaseCleaner.start + end + + config.after(:each) do + DatabaseCleaner.clean + end end diff --git a/spec/support/database_cleaner.rb b/spec/support/database_cleaner.rb deleted file mode 100644 index 6f3ddf36..00000000 --- a/spec/support/database_cleaner.rb +++ /dev/null @@ -1,25 +0,0 @@ -RSpec.configure do |config| - - config.before(:suite) do - DatabaseCleaner.clean_with(:truncation) - DatabaseCleaner.strategy = :transaction - DatabaseCleaner.clean - end - - config.before(:each, :database_cleaner_delete) do - DatabaseCleaner.strategy = :truncation - end - - config.after(:suite) do - DatabaseCleaner.clean - end - - config.before(:each) do - DatabaseCleaner.start - end - - config.after(:each) do - DatabaseCleaner.clean - end - -end