multi_test 0.1.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. checksums.yaml +5 -5
  2. data/.github/CODEOWNERS +1 -0
  3. data/.github/settings.yml +41 -0
  4. data/.github/workflows/release-github.yml +24 -0
  5. data/.github/workflows/release-ruby.yml +33 -0
  6. data/.github/workflows/test-ruby.yml +46 -0
  7. data/.whitesource +15 -0
  8. data/CHANGELOG.md +46 -0
  9. data/Makefile +4 -4
  10. data/README.md +5 -5
  11. data/VERSION +1 -0
  12. data/lib/multi_test/assertion_library.rb +15 -5
  13. data/lib/multi_test.rb +0 -27
  14. data/multi_test.gemspec +6 -3
  15. data/test-all +7 -0
  16. data/test-gemfile +32 -0
  17. metadata +17 -100
  18. data/.travis.yml +0 -8
  19. data/History.md +0 -7
  20. data/Rakefile +0 -9
  21. data/test/README.md +0 -7
  22. data/test/all +0 -20
  23. data/test/gemfiles/activesupport-4.0.0/Gemfile +0 -3
  24. data/test/gemfiles/activesupport-4.0.0/Gemfile.lock +0 -22
  25. data/test/gemfiles/activesupport-4.0.0/scenarios +0 -3
  26. data/test/gemfiles/activesupport-4.1.0/Gemfile +0 -3
  27. data/test/gemfiles/activesupport-4.1.0/Gemfile.lock +0 -23
  28. data/test/gemfiles/activesupport-4.1.0/scenarios +0 -2
  29. data/test/gemfiles/minitest-5.0.1/Gemfile +0 -3
  30. data/test/gemfiles/minitest-5.0.1/Gemfile.lock +0 -10
  31. data/test/gemfiles/minitest-5.0.1/scenarios +0 -3
  32. data/test/gemfiles/minitest-5.1.0/Gemfile +0 -3
  33. data/test/gemfiles/minitest-5.1.0/Gemfile.lock +0 -10
  34. data/test/gemfiles/minitest-5.1.0/scenarios +0 -3
  35. data/test/gemfiles/minitest-5.2.0/Gemfile +0 -3
  36. data/test/gemfiles/minitest-5.2.0/Gemfile.lock +0 -10
  37. data/test/gemfiles/minitest-5.2.0/scenarios +0 -3
  38. data/test/gemfiles/plain-ruby/Gemfile +0 -1
  39. data/test/gemfiles/plain-ruby/Gemfile.lock +0 -8
  40. data/test/gemfiles/plain-ruby/scenarios +0 -3
  41. data/test/gemfiles/rspec-1.3.2/Gemfile +0 -4
  42. data/test/gemfiles/rspec-1.3.2/Gemfile.lock +0 -12
  43. data/test/gemfiles/rspec-1.3.2/scenarios +0 -3
  44. data/test/gemfiles/rspec-2.14/Gemfile +0 -3
  45. data/test/gemfiles/rspec-2.14/Gemfile.lock +0 -18
  46. data/test/gemfiles/rspec-2.14/scenarios +0 -3
  47. data/test/gemfiles/rspec-3.0/Gemfile +0 -3
  48. data/test/gemfiles/rspec-3.0/Gemfile.lock +0 -22
  49. data/test/gemfiles/rspec-3.0/scenarios +0 -3
  50. data/test/gemfiles/test-unit-2.4.8/Gemfile +0 -3
  51. data/test/gemfiles/test-unit-2.4.8/Gemfile.lock +0 -10
  52. data/test/gemfiles/test-unit-2.4.8/scenarios +0 -3
  53. data/test/gemfiles/test-unit-2.4.9/Gemfile +0 -3
  54. data/test/gemfiles/test-unit-2.4.9/Gemfile.lock +0 -10
  55. data/test/gemfiles/test-unit-2.4.9/scenarios +0 -3
  56. data/test/run +0 -25
  57. data/test/scenarios/bundler_require.rb +0 -7
  58. data/test/scenarios/minitest_assertions.rb +0 -7
  59. data/test/scenarios/minitest_propagate_exit_code.rb +0 -9
  60. data/test/scenarios/require_activesupport_testing_autorun.rb +0 -4
  61. data/test/scenarios/require_test_unit.rb +0 -6
  62. data/test/scenarios/rspec_matchers.rb +0 -7
  63. data/test/scenarios/spec_matchers.rb +0 -7
  64. data/test/scenarios/test_unit_assertions.rb +0 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: d0afef8f6d5935c731cc77f5ce62112900f7f267
4
- data.tar.gz: 01f9568a08b9855e9cf1c90ef72a2f17a39d54a3
2
+ SHA256:
3
+ metadata.gz: 9bf367ba6889bb0f2a47168e857a773f5c7749f2f4b41e9cad7a20a7981dafac
4
+ data.tar.gz: 2506bc7ff22e1a38b87f98a2bb9595dde03179d40ffa7a7b87b60e09d4ebc10d
5
5
  SHA512:
6
- metadata.gz: afbb8a2df72e7fa5804ed0da863d674aa3cfb86fd63c3d4f69fea55034ee79aa8ad17c3aede614d13063585cc3d75c9eefbd44c9b3b23263ff15fc1b3b0a8417
7
- data.tar.gz: c2c59790170b596573f972cd5175104d31bbc134cfc9ae92933feeec2c35db9d837455b04f763c1ec365b428bb5e0066620784a4bff72fe7059f3ca482619306
6
+ metadata.gz: d7eba973632f273bf8edfc3a56e643c6a5bce41e43814e30b9d00bbdcac28065e35f5808ea272ec08a0c9aebdcdc7daeb1102fd2e911bda49daa987b73fccb99
7
+ data.tar.gz: c7e7c7d0a3fe90e079f3dd4410ab22256a56ecfaa1eb671c6813031b0b0f456503547e88fdcf0cedc52ee1521452bae622db6e08fb50a06911b922b1e037ee59
@@ -0,0 +1 @@
1
+ .github/settings.yml @cucumber/settings
@@ -0,0 +1,41 @@
1
+ _extends: .github
2
+
3
+ branches:
4
+ - name: main
5
+ protection:
6
+ required_pull_request_reviews: null
7
+ required_status_checks: null
8
+ restrictions: null
9
+ enforce_admins: true
10
+ # https://github.com/cucumber/multi_test
11
+ # https://github.com/cucumber/multi_test
12
+ # # https://docs.github.com/en/rest/reference/repos#update-branch-protection
13
+ # # Branch Protection settings.
14
+ # protection:
15
+ # # Required. Require at least one approving review on a pull request, before merging. Set to null to disable.
16
+ # required_pull_request_reviews:
17
+ # # The number of approvals required. (1-6)
18
+ # required_approving_review_count: 0
19
+ # # Dismiss approved reviews automatically when a new commit is pushed.
20
+ # dismiss_stale_reviews: true
21
+ # # Blocks merge until code owners have reviewed.
22
+ # require_code_owner_reviews: true
23
+ # # Specify which users and teams can dismiss pull request reviews. Pass an empty dismissal_restrictions object to disable. User and team dismissal_restrictions are only available for organization-owned repositories. Omit this parameter for personal repositories.
24
+ # dismissal_restrictions:
25
+ # users: []
26
+ # teams: []
27
+ # # Required. Require status checks to pass before merging. Set to null to disable
28
+ # required_status_checks:
29
+ # # Required. Require branches to be up to date before merging.
30
+ # strict: true
31
+ # # Required. The list of status checks to require in order to merge into this branch
32
+ # contexts: []
33
+ # # Required. Enforce all configured restrictions for administrators. Set to true to enforce required status checks for repository administrators. Set to null to disable.
34
+ # enforce_admins: true
35
+ # # Prevent merge commits from being pushed to matching branches
36
+ # required_linear_history: true
37
+ # # Required. Restrict who can push to this branch. Team and user restrictions are only available for organization-owned repositories. Set to null to disable.
38
+ # restrictions:
39
+ # apps: []
40
+ # users: []
41
+ # teams: []
@@ -0,0 +1,24 @@
1
+ name: Release on github
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - release/*
7
+
8
+ jobs:
9
+ pre-release-check:
10
+ uses: cucumber/.github/.github/workflows/prerelease-checks.yml@main
11
+
12
+ create-github-release:
13
+ name: Create Git tag and GitHub Release
14
+ needs: [pre-release-check]
15
+ runs-on: ubuntu-latest
16
+ environment: Release
17
+ permissions:
18
+ contents: write
19
+
20
+ steps:
21
+ - uses: actions/checkout@v3
22
+ - uses: cucumber/action-create-github-release@v1.1.0
23
+ with:
24
+ github-token: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,33 @@
1
+ name: Release ruby gem
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - release/*
7
+
8
+ jobs:
9
+ pre-release-check:
10
+ uses: cucumber/.github/.github/workflows/prerelease-checks.yml@main
11
+
12
+ test-ruby:
13
+ uses: ./.github/workflows/test-ruby.yml
14
+
15
+ publish-rubygem:
16
+ name: Publish Ruby Gem
17
+ needs: [pre-release-check, test-ruby]
18
+ runs-on: ubuntu-latest
19
+ environment: Release
20
+
21
+ steps:
22
+ - uses: actions/checkout@v3
23
+
24
+ - name: Set up Ruby
25
+ uses: ruby/setup-ruby@v1
26
+ with:
27
+ ruby-version: "3.0"
28
+ bundler-cache: true
29
+
30
+ - name: Publish ruby gem
31
+ uses: cucumber/action-publish-rubygem@v1.0.0
32
+ with:
33
+ rubygems_api_key: ${{ secrets.RUBYGEMS_API_KEY }}
@@ -0,0 +1,46 @@
1
+ name: Test
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request:
8
+ branches:
9
+ - main
10
+ schedule:
11
+ - cron: "0 0 * * *"
12
+ workflow_call:
13
+
14
+ jobs:
15
+ test:
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ os: [ubuntu-latest]
20
+ ruby: ["2.6", "2.7", "3.0", "3.1"]
21
+ gemfile: # These are duplicated from the test/gemfiles folder
22
+ - activesupport-4
23
+ - activesupport-5
24
+ - minitest-4
25
+ - minitest-5
26
+ - plain-ruby
27
+ - rspec-1
28
+ - rspec-2
29
+ - rspec-3
30
+ - test-unit-2
31
+ - test-unit-3
32
+
33
+ runs-on: ${{ matrix.os }}
34
+ steps:
35
+ - uses: actions/checkout@v3
36
+
37
+ - name: Set up Ruby
38
+ uses: ruby/setup-ruby@v1
39
+ with:
40
+ ruby-version: ${{ matrix.ruby }}
41
+ bundler-cache: false
42
+
43
+ - name: Run test scenarios
44
+ run: |
45
+ ./test-gemfile test/gemfiles/${{ matrix.gemfile }}
46
+ shell: bash
data/.whitesource ADDED
@@ -0,0 +1,15 @@
1
+ {
2
+ "scanSettings": {
3
+ "configMode": "AUTO",
4
+ "configExternalURL": "",
5
+ "projectToken": "",
6
+ "baseBranches": []
7
+ },
8
+ "checkRunSettings": {
9
+ "vulnerableCheckRunConclusionLevel": "failure",
10
+ "displayMode": "diff"
11
+ },
12
+ "issueSettings": {
13
+ "minSeverityLevel": "LOW"
14
+ }
15
+ }
data/CHANGELOG.md ADDED
@@ -0,0 +1,46 @@
1
+ # Changelog
2
+
3
+ ## [Unreleased]
4
+
5
+ ## [1.0.0] - 2022-05-04
6
+ ### Changed
7
+ - As per [#251](https://github.com/cucumber/cucumber/issues/251): renamed History.md to CHANGELOG.md, added contributing message at beginning, and other formatting. ([#12](https://github.com/cucumber/multi_test/pull/12) [jaysonesmith](https://github.com/jaysonesmith/))
8
+
9
+ ### Removed
10
+ - Remove test files from the gem to prevent false-positive with security scanners
11
+ as reported in [#21](https://github.com/cucumber/multi_test/issues/21)
12
+ - Drop support for ruby < 2.0
13
+ ([PR#28](https://github.com/cucumber/multi_test/pull/28))
14
+ - Removed `disable_autorun`
15
+ ([PR#30](https://github.com/cucumber/multi_test/pull/30)
16
+ [Issue#26](https://github.com/cucumber/multi_test/issues/26))
17
+
18
+ ## [0.1.2]
19
+ ### Changed
20
+ - Ensure that detecting assetion library doesn't fail if no test framework
21
+ included. Ruby 2.2 removed minitest from standard library. (@tooky, @jmoody)
22
+
23
+ ## [0.1.1]
24
+ ### Removed
25
+ - Remove incompatibility with ruby 1.8.7
26
+
27
+ ## [0.1.0]
28
+ ### Added
29
+ - Detect best available assertion library for cucumber (@tooky)
30
+
31
+ ## [0.0.3]
32
+ ### Fixed
33
+ - Fix for Rails 4.1, Minitest 5.x ([#4](https://github.com/cucumber/multi_test/pull/4) Andy Lindeman)
34
+
35
+ ## [0.0.2]
36
+ ### Changed
37
+ - First gem release
38
+ - First gem release
39
+
40
+ [Unreleased]: https://github.com/cucumber/multi_test/compare/1.0.0..main
41
+ [1.0.0]: https://github.com/cucumber/multi_test/compare/v0.1.2..main
42
+ [0.1.2]: https://github.com/cucumber/multi_test/compare/v0.1.1...v0.1.2
43
+ [0.1.1]: https://github.com/cucumber/multi_test/compare/v0.1.0...v0.1.1
44
+ [0.1.0]: https://github.com/cucumber/multi_test/compare/v0.0.3...v0.1.0
45
+ [0.0.3]: https://github.com/cucumber/multi_test/compare/v0.0.2...v0.0.3
46
+ [0.0.2]: https://github.com/cucumber/multi_test/compare/bae4b700eb63cfb4e95f7acc35e25683f697905a...v0.0.2
data/Makefile CHANGED
@@ -1,7 +1,7 @@
1
- GEMFILES=$(shell ls ./gemfiles/**/Gemfile)
2
-
3
1
  all:
4
- ./test/all
2
+ ./test-all
3
+ .PHONY: all
5
4
 
6
5
  clean:
7
- rm -f gemfiles/**/*.lock
6
+ rm -f test/gemfiles/**/*.lock
7
+ .PHONY: clean
data/README.md CHANGED
@@ -1,14 +1,14 @@
1
- [![Build Status](https://travis-ci.org/cucumber/multi_test.png?branch=master)](https://travis-ci.org/cucumber/multi_test)
1
+ [![Tests](https://github.com/cucumber/multi_test/actions/workflows/test-ruby.yml/badge.svg)](https://github.com/cucumber/multi_test/actions/workflows/test-ruby.yml)
2
2
 
3
3
  This project gives you a uniform interface onto whatever testing library has been
4
4
  loaded into a running Ruby process.
5
5
 
6
- We use this within the Cucumber project to clobber autorun behaviour from older
7
- versions of `Test::Unit` that automatically hook in when the user requires them.
6
+ We use this within cucumber-ruby to discover and auto-load your favourite assertion library
8
7
 
9
8
  Example:
10
9
  ~~~ruby
11
10
  require 'multi_test'
12
- MultiTest.disable_autorun
13
- ~~~
14
11
 
12
+ my_tests = Object.new
13
+ MultiTest.extend_with_best_assertion_library(my_tests)
14
+ ~~~
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.0.0
@@ -26,11 +26,18 @@ module MultiTest
26
26
 
27
27
  private
28
28
 
29
+ def self.null
30
+ AssertionLibrary.new(
31
+ proc { },
32
+ proc { }
33
+ )
34
+ end
35
+
29
36
  def self.available
30
37
  @available ||= [
31
38
  AssertionLibrary.new(
32
39
  proc { require 'rspec/expectations' },
33
- proc { |object| object.extend(::RSpec::Matchers) },
40
+ proc { |object| object.extend(::RSpec::Matchers) }
34
41
  ),
35
42
  AssertionLibrary.new(
36
43
  proc {
@@ -42,20 +49,23 @@ module MultiTest
42
49
  options = OpenStruct.new(:diff_format => :unified, :context_lines => 3)
43
50
  Spec::Expectations.differ = Spec::Expectations::Differs::Default.new(options)
44
51
  object.extend(Spec::Matchers)
45
- },
52
+ }
46
53
  ),
47
54
  AssertionLibrary.new(
48
55
  proc { require 'minitest/assertions' },
49
- proc { |object| object.extend(MinitestWorld) },
56
+ proc { |object| object.extend(MinitestWorld) }
50
57
  ),
51
58
  AssertionLibrary.new(
52
59
  proc { require 'minitest/unit' },
53
- proc { |object| object.extend(MiniTest::Assertions) },
60
+ proc { |object| object.extend(MiniTest::Assertions) }
54
61
  ),
55
62
  AssertionLibrary.new(
56
63
  proc { require 'test/unit/assertions' },
57
- proc { |object| object.extend(Test::Unit::Assertions) },
64
+ proc { |object| object.extend(Test::Unit::Assertions) }
58
65
  ),
66
+ # Null assertion library must come last to prevent exceptions if
67
+ # unable to load a test framework
68
+ AssertionLibrary.null
59
69
  ]
60
70
  end
61
71
  end
data/lib/multi_test.rb CHANGED
@@ -1,32 +1,5 @@
1
1
  require 'multi_test/assertion_library'
2
2
  module MultiTest
3
- def self.disable_autorun
4
- if defined?(Test::Unit::Runner)
5
- Test::Unit::Runner.module_eval("@@stop_auto_run = true")
6
- end
7
-
8
- if defined?(Minitest)
9
- Minitest.instance_eval do
10
- def run(*)
11
- # propagate the exit code from cucumber or another runner
12
- case $!
13
- when SystemExit
14
- $!.status
15
- else
16
- true
17
- end
18
- end
19
- end
20
-
21
- if defined?(Minitest::Unit)
22
- Minitest::Unit.class_eval do
23
- def run(*)
24
- end
25
- end
26
- end
27
- end
28
- end
29
-
30
3
  def self.extend_with_best_assertion_library(object)
31
4
  AssertionLibrary.detect_best.extend_world(object)
32
5
  end
data/multi_test.gemspec CHANGED
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = 'multi_test'
6
- s.version = '0.1.0'
6
+ s.version = File.read(File.join(File.expand_path(__dir__),'VERSION'))
7
7
  s.authors = ["Matt Wynne", "Steve Tooke"]
8
8
  s.description = 'Wafter-thin gem to help control rogue test/unit/autorun requires'
9
9
  s.summary = "multi-test-#{s.version}"
@@ -13,8 +13,11 @@ Gem::Specification.new do |s|
13
13
 
14
14
  s.platform = Gem::Platform::RUBY
15
15
 
16
- s.rubygems_version = ">= 1.6.1"
17
- s.files = `git ls-files`.split("\n").reject {|path| path =~ /\.gitignore$/ }
16
+ s.required_ruby_version = ">= 2.0"
17
+ s.required_rubygems_version = ">= 1.6.1"
18
+ s.files = `git ls-files`.split("\n").
19
+ reject { |path| path =~ /\.gitignore$/ }.
20
+ reject { |path| path =~ /^test\// }
18
21
  s.test_files = `git ls-files -- {gemfiles,test}/*`.split("\n")
19
22
  s.rdoc_options = ["--charset=UTF-8"]
20
23
  s.require_path = "lib"
data/test-all ADDED
@@ -0,0 +1,7 @@
1
+ #!/bin/bash
2
+
3
+ set -e
4
+
5
+ for gemfile in test/gemfiles/*; do
6
+ ./test-gemfile $gemfile
7
+ done
data/test-gemfile ADDED
@@ -0,0 +1,32 @@
1
+ #!/bin/bash
2
+
3
+ set -e
4
+
5
+ GEMFILE_FOLDER=$1
6
+ GEMFILE=$GEMFILE_FOLDER/Gemfile
7
+ echo
8
+ echo $GEMFILE
9
+ echo
10
+ scenarios=$(cat $GEMFILE_FOLDER/scenarios)
11
+
12
+ PLATFORM="$(BUNDLE_GEMFILE=$GEMFILE bundle platform)"
13
+ if [[ "$PLATFORM" =~ "Your Ruby version is" ]]; then
14
+ echo "$PLATFORM"
15
+ echo
16
+ echo "Skipping."
17
+ exit 0
18
+ fi
19
+
20
+ for scenario in $scenarios; do
21
+ echo
22
+ echo $scenario
23
+ echo
24
+ scenario_path=test/scenarios/$scenario
25
+ BUNDLE_GEMFILE=$GEMFILE bundle install
26
+ output=$(BUNDLE_GEMFILE=$GEMFILE bundle exec ruby -I lib test/scenarios/$scenario)
27
+ if [[ ! -z $output ]]; then
28
+ echo "Expected output to be empty, but was:"
29
+ echo "$output"
30
+ exit 1
31
+ fi
32
+ done
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multi_test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Wynne
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-03-16 00:00:00.000000000 Z
12
+ date: 2022-05-05 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Wafter-thin gem to help control rogue test/unit/autorun requires
15
15
  email: cukes@googlegroups.com
@@ -17,60 +17,23 @@ executables: []
17
17
  extensions: []
18
18
  extra_rdoc_files: []
19
19
  files:
20
- - ".travis.yml"
21
- - History.md
20
+ - ".github/CODEOWNERS"
21
+ - ".github/settings.yml"
22
+ - ".github/workflows/release-github.yml"
23
+ - ".github/workflows/release-ruby.yml"
24
+ - ".github/workflows/test-ruby.yml"
25
+ - ".whitesource"
26
+ - CHANGELOG.md
22
27
  - LICENSE
23
28
  - Makefile
24
29
  - README.md
25
- - Rakefile
30
+ - VERSION
26
31
  - lib/multi_test.rb
27
32
  - lib/multi_test/assertion_library.rb
28
33
  - lib/multi_test/minitest_world.rb
29
34
  - multi_test.gemspec
30
- - test/README.md
31
- - test/all
32
- - test/gemfiles/activesupport-4.0.0/Gemfile
33
- - test/gemfiles/activesupport-4.0.0/Gemfile.lock
34
- - test/gemfiles/activesupport-4.0.0/scenarios
35
- - test/gemfiles/activesupport-4.1.0/Gemfile
36
- - test/gemfiles/activesupport-4.1.0/Gemfile.lock
37
- - test/gemfiles/activesupport-4.1.0/scenarios
38
- - test/gemfiles/minitest-5.0.1/Gemfile
39
- - test/gemfiles/minitest-5.0.1/Gemfile.lock
40
- - test/gemfiles/minitest-5.0.1/scenarios
41
- - test/gemfiles/minitest-5.1.0/Gemfile
42
- - test/gemfiles/minitest-5.1.0/Gemfile.lock
43
- - test/gemfiles/minitest-5.1.0/scenarios
44
- - test/gemfiles/minitest-5.2.0/Gemfile
45
- - test/gemfiles/minitest-5.2.0/Gemfile.lock
46
- - test/gemfiles/minitest-5.2.0/scenarios
47
- - test/gemfiles/plain-ruby/Gemfile
48
- - test/gemfiles/plain-ruby/Gemfile.lock
49
- - test/gemfiles/plain-ruby/scenarios
50
- - test/gemfiles/rspec-1.3.2/Gemfile
51
- - test/gemfiles/rspec-1.3.2/Gemfile.lock
52
- - test/gemfiles/rspec-1.3.2/scenarios
53
- - test/gemfiles/rspec-2.14/Gemfile
54
- - test/gemfiles/rspec-2.14/Gemfile.lock
55
- - test/gemfiles/rspec-2.14/scenarios
56
- - test/gemfiles/rspec-3.0/Gemfile
57
- - test/gemfiles/rspec-3.0/Gemfile.lock
58
- - test/gemfiles/rspec-3.0/scenarios
59
- - test/gemfiles/test-unit-2.4.8/Gemfile
60
- - test/gemfiles/test-unit-2.4.8/Gemfile.lock
61
- - test/gemfiles/test-unit-2.4.8/scenarios
62
- - test/gemfiles/test-unit-2.4.9/Gemfile
63
- - test/gemfiles/test-unit-2.4.9/Gemfile.lock
64
- - test/gemfiles/test-unit-2.4.9/scenarios
65
- - test/run
66
- - test/scenarios/bundler_require.rb
67
- - test/scenarios/minitest_assertions.rb
68
- - test/scenarios/minitest_propagate_exit_code.rb
69
- - test/scenarios/require_activesupport_testing_autorun.rb
70
- - test/scenarios/require_test_unit.rb
71
- - test/scenarios/rspec_matchers.rb
72
- - test/scenarios/spec_matchers.rb
73
- - test/scenarios/test_unit_assertions.rb
35
+ - test-all
36
+ - test-gemfile
74
37
  homepage: http://cukes.info
75
38
  licenses:
76
39
  - MIT
@@ -84,61 +47,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
84
47
  requirements:
85
48
  - - ">="
86
49
  - !ruby/object:Gem::Version
87
- version: '0'
50
+ version: '2.0'
88
51
  required_rubygems_version: !ruby/object:Gem::Requirement
89
52
  requirements:
90
53
  - - ">="
91
54
  - !ruby/object:Gem::Version
92
- version: '0'
55
+ version: 1.6.1
93
56
  requirements: []
94
- rubyforge_project:
95
- rubygems_version: 2.2.0
57
+ rubygems_version: 3.2.33
96
58
  signing_key:
97
59
  specification_version: 4
98
- summary: multi-test-0.1.0
99
- test_files:
100
- - test/README.md
101
- - test/all
102
- - test/gemfiles/activesupport-4.0.0/Gemfile
103
- - test/gemfiles/activesupport-4.0.0/Gemfile.lock
104
- - test/gemfiles/activesupport-4.0.0/scenarios
105
- - test/gemfiles/activesupport-4.1.0/Gemfile
106
- - test/gemfiles/activesupport-4.1.0/Gemfile.lock
107
- - test/gemfiles/activesupport-4.1.0/scenarios
108
- - test/gemfiles/minitest-5.0.1/Gemfile
109
- - test/gemfiles/minitest-5.0.1/Gemfile.lock
110
- - test/gemfiles/minitest-5.0.1/scenarios
111
- - test/gemfiles/minitest-5.1.0/Gemfile
112
- - test/gemfiles/minitest-5.1.0/Gemfile.lock
113
- - test/gemfiles/minitest-5.1.0/scenarios
114
- - test/gemfiles/minitest-5.2.0/Gemfile
115
- - test/gemfiles/minitest-5.2.0/Gemfile.lock
116
- - test/gemfiles/minitest-5.2.0/scenarios
117
- - test/gemfiles/plain-ruby/Gemfile
118
- - test/gemfiles/plain-ruby/Gemfile.lock
119
- - test/gemfiles/plain-ruby/scenarios
120
- - test/gemfiles/rspec-1.3.2/Gemfile
121
- - test/gemfiles/rspec-1.3.2/Gemfile.lock
122
- - test/gemfiles/rspec-1.3.2/scenarios
123
- - test/gemfiles/rspec-2.14/Gemfile
124
- - test/gemfiles/rspec-2.14/Gemfile.lock
125
- - test/gemfiles/rspec-2.14/scenarios
126
- - test/gemfiles/rspec-3.0/Gemfile
127
- - test/gemfiles/rspec-3.0/Gemfile.lock
128
- - test/gemfiles/rspec-3.0/scenarios
129
- - test/gemfiles/test-unit-2.4.8/Gemfile
130
- - test/gemfiles/test-unit-2.4.8/Gemfile.lock
131
- - test/gemfiles/test-unit-2.4.8/scenarios
132
- - test/gemfiles/test-unit-2.4.9/Gemfile
133
- - test/gemfiles/test-unit-2.4.9/Gemfile.lock
134
- - test/gemfiles/test-unit-2.4.9/scenarios
135
- - test/run
136
- - test/scenarios/bundler_require.rb
137
- - test/scenarios/minitest_assertions.rb
138
- - test/scenarios/minitest_propagate_exit_code.rb
139
- - test/scenarios/require_activesupport_testing_autorun.rb
140
- - test/scenarios/require_test_unit.rb
141
- - test/scenarios/rspec_matchers.rb
142
- - test/scenarios/spec_matchers.rb
143
- - test/scenarios/test_unit_assertions.rb
144
- has_rdoc:
60
+ summary: multi-test-1.0.0
61
+ test_files: []
data/.travis.yml DELETED
@@ -1,8 +0,0 @@
1
- rvm:
2
- - 1.9.3
3
- - 2.0.0
4
- - 2.1.0
5
- - jruby
6
- script: make
7
- before_install:
8
- gem install bundler -v 1.5.1
data/History.md DELETED
@@ -1,7 +0,0 @@
1
- ## [v0.0.3](https://github.com/cucumber/multi_test/compare/v0.0.2...v0.0.3)
2
-
3
- * Fix for Rails 4.1, Minitest 5.x ([#4](https://github.com/cucumber/multi_test/pull/4) Andy Lindeman)
4
-
5
- ## [v0.0.2](https://github.com/cucumber/multi_test/compare/bae4b700eb63cfb4e95f7acc35e25683f697905a...v0.0.2)
6
-
7
- * First gem release
data/Rakefile DELETED
@@ -1,9 +0,0 @@
1
- # encoding: utf-8
2
- require 'rubygems'
3
- require 'bundler'
4
- Bundler::GemHelper.install_tasks
5
-
6
- desc 'Run all tests'
7
- task 'default' do
8
- sh 'make'
9
- end
data/test/README.md DELETED
@@ -1,7 +0,0 @@
1
- # How this gem is tested
2
-
3
- We build a matrix of test cases from the gemfiles and scenarios directories.
4
-
5
- The gemfiles contain each of the different gem configurations we want to test with. Then, for each gemfile, there's a scenarios file which lists the Ruby scripts from the scenarios directory that we'll run as tests in that gemfile's environment.
6
-
7
- Success for each test case is simply that nothing was written to standard output.
data/test/all DELETED
@@ -1,20 +0,0 @@
1
- #!/bin/bash
2
- exit_status=0
3
- gemfile_dirs=$(ls -d -- test/gemfiles/*)
4
- echo $gemfile_dirs
5
- for gemfile_dir in $gemfile_dirs
6
- do
7
- scenarios=$(cat $gemfile_dir/scenarios)
8
- echo $scenarios
9
- for scenario in $scenarios
10
- do
11
- ./test/run $gemfile_dir test/scenarios/$scenario
12
- if [ $? -ne 0 ]
13
- then
14
- exit_status=1
15
- fi
16
- done
17
- done
18
-
19
- exit $exit_status
20
-
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "activesupport", "4.0.0"
@@ -1,22 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- activesupport (4.0.0)
5
- i18n (~> 0.6, >= 0.6.4)
6
- minitest (~> 4.2)
7
- multi_json (~> 1.3)
8
- thread_safe (~> 0.1)
9
- tzinfo (~> 0.3.37)
10
- atomic (1.1.10)
11
- i18n (0.6.4)
12
- minitest (4.7.5)
13
- multi_json (1.7.7)
14
- thread_safe (0.1.0)
15
- atomic
16
- tzinfo (0.3.37)
17
-
18
- PLATFORMS
19
- ruby
20
-
21
- DEPENDENCIES
22
- activesupport (= 4.0.0)
@@ -1,3 +0,0 @@
1
- require_activesupport_testing_autorun.rb
2
- minitest_assertions.rb
3
-
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "activesupport", "4.1.0.beta1"
@@ -1,23 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- activesupport (4.1.0.beta1)
5
- i18n (~> 0.6, >= 0.6.9)
6
- json (~> 1.7, >= 1.7.7)
7
- minitest (~> 5.1)
8
- thread_safe (~> 0.1)
9
- tzinfo (~> 1.1)
10
- atomic (1.1.14)
11
- i18n (0.6.9)
12
- json (1.8.1)
13
- minitest (5.2.0)
14
- thread_safe (0.1.3)
15
- atomic
16
- tzinfo (1.1.0)
17
- thread_safe (~> 0.1)
18
-
19
- PLATFORMS
20
- ruby
21
-
22
- DEPENDENCIES
23
- activesupport (= 4.1.0.beta1)
@@ -1,2 +0,0 @@
1
- require_activesupport_testing_autorun.rb
2
- minitest_assertions.rb
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "minitest", "5.0.1"
@@ -1,10 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- minitest (5.0.1)
5
-
6
- PLATFORMS
7
- ruby
8
-
9
- DEPENDENCIES
10
- minitest (= 5.0.1)
@@ -1,3 +0,0 @@
1
- bundler_require.rb
2
- minitest_propagate_exit_code.rb
3
- minitest_assertions.rb
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "minitest", "5.1.0"
@@ -1,10 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- minitest (5.1.0)
5
-
6
- PLATFORMS
7
- ruby
8
-
9
- DEPENDENCIES
10
- minitest (= 5.1.0)
@@ -1,3 +0,0 @@
1
- bundler_require.rb
2
- minitest_propagate_exit_code.rb
3
- minitest_assertions.rb
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "minitest", "5.2.0"
@@ -1,10 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- minitest (5.2.0)
5
-
6
- PLATFORMS
7
- ruby
8
-
9
- DEPENDENCIES
10
- minitest (= 5.2.0)
@@ -1,3 +0,0 @@
1
- bundler_require.rb
2
- minitest_propagate_exit_code.rb
3
- minitest_assertions.rb
@@ -1 +0,0 @@
1
- source "https://rubygems.org"
@@ -1,8 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
-
5
- PLATFORMS
6
- ruby
7
-
8
- DEPENDENCIES
@@ -1,3 +0,0 @@
1
- bundler_require.rb
2
- require_test_unit.rb
3
-
@@ -1,4 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "rspec", "1.3.2"
4
- gem "diff-lcs"
@@ -1,12 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- diff-lcs (1.2.5)
5
- rspec (1.3.2)
6
-
7
- PLATFORMS
8
- ruby
9
-
10
- DEPENDENCIES
11
- diff-lcs
12
- rspec (= 1.3.2)
@@ -1,3 +0,0 @@
1
- bundler_require.rb
2
- spec_matchers.rb
3
-
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "rspec", "~> 2.14"
@@ -1,18 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- diff-lcs (1.2.5)
5
- rspec (2.14.1)
6
- rspec-core (~> 2.14.0)
7
- rspec-expectations (~> 2.14.0)
8
- rspec-mocks (~> 2.14.0)
9
- rspec-core (2.14.8)
10
- rspec-expectations (2.14.5)
11
- diff-lcs (>= 1.1.3, < 2.0)
12
- rspec-mocks (2.14.6)
13
-
14
- PLATFORMS
15
- ruby
16
-
17
- DEPENDENCIES
18
- rspec (~> 2.14)
@@ -1,3 +0,0 @@
1
- bundler_require.rb
2
- rspec_matchers.rb
3
-
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem 'rspec', '~> 3.0.0.beta'
@@ -1,22 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- diff-lcs (1.2.5)
5
- rspec (3.0.0.beta2)
6
- rspec-core (= 3.0.0.beta2)
7
- rspec-expectations (= 3.0.0.beta2)
8
- rspec-mocks (= 3.0.0.beta2)
9
- rspec-core (3.0.0.beta2)
10
- rspec-support (= 3.0.0.beta2)
11
- rspec-expectations (3.0.0.beta2)
12
- diff-lcs (>= 1.2.0, < 2.0)
13
- rspec-support (= 3.0.0.beta2)
14
- rspec-mocks (3.0.0.beta2)
15
- rspec-support (= 3.0.0.beta2)
16
- rspec-support (3.0.0.beta2)
17
-
18
- PLATFORMS
19
- ruby
20
-
21
- DEPENDENCIES
22
- rspec (~> 3.0.0.beta)
@@ -1,3 +0,0 @@
1
- bundler_require.rb
2
- rspec_matchers.rb
3
-
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "test-unit", "2.4.8"
@@ -1,10 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- test-unit (2.4.8)
5
-
6
- PLATFORMS
7
- ruby
8
-
9
- DEPENDENCIES
10
- test-unit (= 2.4.8)
@@ -1,3 +0,0 @@
1
- bundler_require.rb
2
- require_test_unit.rb
3
- test_unit_assertions.rb
@@ -1,3 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gem "test-unit", "2.4.9"
@@ -1,10 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- test-unit (2.4.9)
5
-
6
- PLATFORMS
7
- ruby
8
-
9
- DEPENDENCIES
10
- test-unit (= 2.4.9)
@@ -1,3 +0,0 @@
1
- bundler_require.rb
2
- require_test_unit.rb
3
- test_unit_assertions.rb
data/test/run DELETED
@@ -1,25 +0,0 @@
1
- #!/bin/bash
2
-
3
- gemfile_dir=$1
4
- scenario=$2
5
- gemfile="$gemfile_dir/Gemfile"
6
-
7
- echo
8
- echo "Testing scenario $scenario with $gemfile..."
9
- export BUNDLE_GEMFILE=$gemfile
10
- bundle install
11
- result="$(bundle exec ruby -I lib $scenario)"
12
-
13
- status=$?
14
- if [[ $result != "" ]]; then
15
- echo
16
- echo "=> FAIL: Expected empty output but was:"
17
- echo "--$result--"
18
- exit 1
19
- fi
20
- if [[ $status -ne 0 ]]; then
21
- echo
22
- echo "=> FAIL: Expected zero exit status"
23
- exit 1
24
- fi
25
- echo "=> PASS"
@@ -1,7 +0,0 @@
1
- # Imagine this is your rails app
2
- Bundler.require
3
-
4
- # Now cucumber loads
5
- require "multi_test"
6
- MultiTest.disable_autorun
7
-
@@ -1,7 +0,0 @@
1
- require "multi_test"
2
-
3
- # Now we create the world
4
- MultiTest.extend_with_best_assertion_library(self)
5
-
6
- # Now we execute a scenario and assert something
7
- assert_equal(1,1)
@@ -1,9 +0,0 @@
1
- # Imagine this is your rails app
2
- require 'minitest/autorun'
3
-
4
- # Now cucumber loads and exits successfully
5
- require "multi_test"
6
- MultiTest.disable_autorun
7
- exit 0
8
-
9
- # Our Minitest hook should propagate that healthy status code
@@ -1,4 +0,0 @@
1
- require 'active_support/testing/autorun'
2
-
3
- require "multi_test"
4
- MultiTest.disable_autorun
@@ -1,6 +0,0 @@
1
- # Imagine this is your rails app
2
- require 'test/unit'
3
-
4
- # Now cucumber loads
5
- require "multi_test"
6
- MultiTest.disable_autorun
@@ -1,7 +0,0 @@
1
- require 'multi_test'
2
- # Now we create the world
3
- MultiTest.extend_with_best_assertion_library(self)
4
-
5
- # Now we execute a scenario and assert something
6
- expect(1).to eq(1)
7
-
@@ -1,7 +0,0 @@
1
- require "multi_test"
2
-
3
- # Now we create the world
4
- MultiTest.extend_with_best_assertion_library(self)
5
-
6
- # Now we execute a scenario and assert something
7
- 1.should == 1
@@ -1,6 +0,0 @@
1
- require "multi_test"
2
- # Now we create the world
3
- MultiTest.extend_with_best_assertion_library(self)
4
-
5
- # Now we execute a scenario and assert something
6
- assert_equal(1,1)