From 42051ab7f64d9662cddfccecd9b224492254c0be Mon Sep 17 00:00:00 2001 From: Eito Katagiri Date: Sun, 28 Jun 2015 23:23:54 +0900 Subject: [PATCH 1/4] add spec task and make it default task --- Rakefile | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Rakefile b/Rakefile index f57ae68..6af0c61 100644 --- a/Rakefile +++ b/Rakefile @@ -1,2 +1,11 @@ #!/usr/bin/env rake require "bundler/gem_tasks" + +begin + require 'rspec/core/rake_task' + + RSpec::Core::RakeTask.new(:spec) + + task :default => :spec +rescue LoadError +end From 49bacdc8ff706d7026f4b47c5c34583867b1f9e6 Mon Sep 17 00:00:00 2001 From: Eito Katagiri Date: Sat, 27 Jun 2015 14:08:14 +0900 Subject: [PATCH 2/4] clean let definitions --- lib/rspec_ext/rspec_ext.rb | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/rspec_ext/rspec_ext.rb b/lib/rspec_ext/rspec_ext.rb index f380f98..dcaa3e8 100644 --- a/lib/rspec_ext/rspec_ext.rb +++ b/lib/rspec_ext/rspec_ext.rb @@ -11,10 +11,16 @@ def clear_exception module RSpec module Core class ExampleGroup + def clear_memoized + # __memoized is private method and is defined in rspec 3.3 + __memoized.instance_variable_get(:@memoized).clear + rescue NameError + @__memoized = nil + end + def clear_lets - @__memoized = {} + clear_memoized end end end end - From 4ac5c05c805d856194c15eb5ed623a2b27cce47e Mon Sep 17 00:00:00 2001 From: Eito Katagiri Date: Mon, 29 Jun 2015 09:55:14 +0900 Subject: [PATCH 3/4] add appraisal gem to run specs against rspec 3.2 and 3.3 --- Appraisals | 7 +++ Rakefile | 1 + gemfiles/rspec_3.2.gemfile | 7 +++ gemfiles/rspec_3.2.gemfile.lock | 83 +++++++++++++++++++++++++++++++++ gemfiles/rspec_3.3.gemfile | 7 +++ gemfiles/rspec_3.3.gemfile.lock | 83 +++++++++++++++++++++++++++++++++ rspec-retry.gemspec | 1 + 7 files changed, 189 insertions(+) create mode 100644 Appraisals create mode 100644 gemfiles/rspec_3.2.gemfile create mode 100644 gemfiles/rspec_3.2.gemfile.lock create mode 100644 gemfiles/rspec_3.3.gemfile create mode 100644 gemfiles/rspec_3.3.gemfile.lock diff --git a/Appraisals b/Appraisals new file mode 100644 index 0000000..f987830 --- /dev/null +++ b/Appraisals @@ -0,0 +1,7 @@ +appraise 'rspec-3.2' do + gem 'rspec', '~> 3.2.0' +end + +appraise 'rspec-3.3' do + gem 'rspec', '~> 3.3.0' +end diff --git a/Rakefile b/Rakefile index 6af0c61..37c6ddb 100644 --- a/Rakefile +++ b/Rakefile @@ -1,4 +1,5 @@ #!/usr/bin/env rake +require 'bundler/setup' require "bundler/gem_tasks" begin diff --git a/gemfiles/rspec_3.2.gemfile b/gemfiles/rspec_3.2.gemfile new file mode 100644 index 0000000..91625fd --- /dev/null +++ b/gemfiles/rspec_3.2.gemfile @@ -0,0 +1,7 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "rspec", "~> 3.2.0" + +gemspec :path => "../" diff --git a/gemfiles/rspec_3.2.gemfile.lock b/gemfiles/rspec_3.2.gemfile.lock new file mode 100644 index 0000000..8084c76 --- /dev/null +++ b/gemfiles/rspec_3.2.gemfile.lock @@ -0,0 +1,83 @@ +PATH + remote: ../ + specs: + rspec-retry (0.4.0) + rspec-core + +GEM + remote: https://rubygems.org/ + specs: + appraisal (2.0.2) + bundler + rake + thor (>= 0.14.0) + byebug (4.0.5) + columnize (= 0.9.0) + coderay (1.1.0) + columnize (0.9.0) + diff-lcs (1.2.5) + ffi (1.9.9) + formatador (0.2.5) + guard (2.12.7) + formatador (>= 0.2.4) + listen (>= 2.7, <= 4.0) + lumberjack (~> 1.0) + nenv (~> 0.1) + notiffany (~> 0.0) + pry (>= 0.9.12) + shellany (~> 0.0) + thor (>= 0.18.1) + guard-compat (1.2.1) + guard-rspec (4.6.0) + guard (~> 2.1) + guard-compat (~> 1.1) + rspec (>= 2.99.0, < 4.0) + listen (3.0.0) + rb-fsevent (>= 0.9.3) + rb-inotify (>= 0.9) + lumberjack (1.0.9) + method_source (0.8.2) + nenv (0.2.0) + notiffany (0.0.6) + nenv (~> 0.1) + shellany (~> 0.0) + pry (0.10.1) + coderay (~> 1.1.0) + method_source (~> 0.8.1) + slop (~> 3.4) + pry-byebug (3.1.0) + byebug (~> 4.0) + pry (~> 0.10) + rake (10.4.2) + rb-fsevent (0.9.5) + rb-inotify (0.9.5) + ffi (>= 0.5.0) + rspec (3.2.0) + rspec-core (~> 3.2.0) + rspec-expectations (~> 3.2.0) + rspec-mocks (~> 3.2.0) + rspec-core (3.2.3) + rspec-support (~> 3.2.0) + rspec-expectations (3.2.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.2.0) + rspec-mocks (3.2.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.2.0) + rspec-support (3.2.2) + shellany (0.0.1) + slop (3.6.0) + thor (0.19.1) + +PLATFORMS + ruby + +DEPENDENCIES + appraisal + guard-rspec + pry-byebug + rspec (~> 3.2.0) + rspec-retry! + +BUNDLED WITH + 1.10.5 diff --git a/gemfiles/rspec_3.3.gemfile b/gemfiles/rspec_3.3.gemfile new file mode 100644 index 0000000..eee70bc --- /dev/null +++ b/gemfiles/rspec_3.3.gemfile @@ -0,0 +1,7 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "rspec", "~> 3.3.0" + +gemspec :path => "../" diff --git a/gemfiles/rspec_3.3.gemfile.lock b/gemfiles/rspec_3.3.gemfile.lock new file mode 100644 index 0000000..5187417 --- /dev/null +++ b/gemfiles/rspec_3.3.gemfile.lock @@ -0,0 +1,83 @@ +PATH + remote: ../ + specs: + rspec-retry (0.4.0) + rspec-core + +GEM + remote: https://rubygems.org/ + specs: + appraisal (2.0.2) + bundler + rake + thor (>= 0.14.0) + byebug (4.0.5) + columnize (= 0.9.0) + coderay (1.1.0) + columnize (0.9.0) + diff-lcs (1.2.5) + ffi (1.9.9) + formatador (0.2.5) + guard (2.12.7) + formatador (>= 0.2.4) + listen (>= 2.7, <= 4.0) + lumberjack (~> 1.0) + nenv (~> 0.1) + notiffany (~> 0.0) + pry (>= 0.9.12) + shellany (~> 0.0) + thor (>= 0.18.1) + guard-compat (1.2.1) + guard-rspec (4.6.0) + guard (~> 2.1) + guard-compat (~> 1.1) + rspec (>= 2.99.0, < 4.0) + listen (3.0.0) + rb-fsevent (>= 0.9.3) + rb-inotify (>= 0.9) + lumberjack (1.0.9) + method_source (0.8.2) + nenv (0.2.0) + notiffany (0.0.6) + nenv (~> 0.1) + shellany (~> 0.0) + pry (0.10.1) + coderay (~> 1.1.0) + method_source (~> 0.8.1) + slop (~> 3.4) + pry-byebug (3.1.0) + byebug (~> 4.0) + pry (~> 0.10) + rake (10.4.2) + rb-fsevent (0.9.5) + rb-inotify (0.9.5) + ffi (>= 0.5.0) + rspec (3.3.0) + rspec-core (~> 3.3.0) + rspec-expectations (~> 3.3.0) + rspec-mocks (~> 3.3.0) + rspec-core (3.3.1) + rspec-support (~> 3.3.0) + rspec-expectations (3.3.0) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.3.0) + rspec-mocks (3.3.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.3.0) + rspec-support (3.3.0) + shellany (0.0.1) + slop (3.6.0) + thor (0.19.1) + +PLATFORMS + ruby + +DEPENDENCIES + appraisal + guard-rspec + pry-byebug + rspec (~> 3.3.0) + rspec-retry! + +BUNDLED WITH + 1.10.5 diff --git a/rspec-retry.gemspec b/rspec-retry.gemspec index c9c0282..3b3a465 100644 --- a/rspec-retry.gemspec +++ b/rspec-retry.gemspec @@ -15,6 +15,7 @@ Gem::Specification.new do |gem| gem.require_paths = ["lib"] gem.version = RSpec::Retry::VERSION gem.add_runtime_dependency %{rspec-core} + gem.add_development_dependency %q{appraisal} gem.add_development_dependency %q{rspec} gem.add_development_dependency %q{guard-rspec} if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2') From 5be942d34ed06b0af3a04ffec9055e033b269c41 Mon Sep 17 00:00:00 2001 From: Eito Katagiri Date: Mon, 29 Jun 2015 10:01:11 +0900 Subject: [PATCH 4/4] add .travis.yml --- .travis.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..2aa1498 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,10 @@ +language: ruby +rvm: + - 2.1 + - 2.2 +gemfile: + - gemfiles/rspec_3.2.gemfile + - gemfiles/rspec_3.3.gemfile +before_install: gem update --remote bundler +script: + - bundle exec rake spec