multi_test 0.1.2 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. checksums.yaml +7 -0
  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 -2
  10. data/README.md +5 -5
  11. data/VERSION +1 -0
  12. data/lib/multi_test.rb +0 -27
  13. data/multi_test.gemspec +6 -3
  14. data/test-all +7 -0
  15. data/test-gemfile +32 -0
  16. metadata +22 -115
  17. data/.travis.yml +0 -9
  18. data/History.md +0 -20
  19. data/Rakefile +0 -9
  20. data/test/README.md +0 -9
  21. data/test/all +0 -20
  22. data/test/gemfiles/activesupport-4.0.0/Gemfile +0 -3
  23. data/test/gemfiles/activesupport-4.0.0/Gemfile.lock +0 -22
  24. data/test/gemfiles/activesupport-4.0.0/scenarios +0 -3
  25. data/test/gemfiles/activesupport-4.1.0/Gemfile +0 -3
  26. data/test/gemfiles/activesupport-4.1.0/Gemfile.lock +0 -23
  27. data/test/gemfiles/activesupport-4.1.0/scenarios +0 -2
  28. data/test/gemfiles/minitest-5.0.1/Gemfile +0 -3
  29. data/test/gemfiles/minitest-5.0.1/Gemfile.lock +0 -10
  30. data/test/gemfiles/minitest-5.0.1/scenarios +0 -3
  31. data/test/gemfiles/minitest-5.1.0/Gemfile +0 -3
  32. data/test/gemfiles/minitest-5.1.0/Gemfile.lock +0 -10
  33. data/test/gemfiles/minitest-5.1.0/scenarios +0 -3
  34. data/test/gemfiles/minitest-5.2.0/Gemfile +0 -3
  35. data/test/gemfiles/minitest-5.2.0/Gemfile.lock +0 -10
  36. data/test/gemfiles/minitest-5.2.0/scenarios +0 -3
  37. data/test/gemfiles/plain-ruby/Gemfile +0 -1
  38. data/test/gemfiles/plain-ruby/Gemfile.lock +0 -8
  39. data/test/gemfiles/plain-ruby/scenarios +0 -3
  40. data/test/gemfiles/rspec-1.3.2/Gemfile +0 -4
  41. data/test/gemfiles/rspec-1.3.2/Gemfile.lock +0 -12
  42. data/test/gemfiles/rspec-1.3.2/scenarios +0 -3
  43. data/test/gemfiles/rspec-2.14/Gemfile +0 -3
  44. data/test/gemfiles/rspec-2.14/Gemfile.lock +0 -18
  45. data/test/gemfiles/rspec-2.14/scenarios +0 -3
  46. data/test/gemfiles/rspec-3.0/Gemfile +0 -3
  47. data/test/gemfiles/rspec-3.0/Gemfile.lock +0 -22
  48. data/test/gemfiles/rspec-3.0/scenarios +0 -3
  49. data/test/gemfiles/rspec-3.1/Gemfile +0 -3
  50. data/test/gemfiles/rspec-3.1/Gemfile.lock +0 -22
  51. data/test/gemfiles/rspec-3.1/scenarios +0 -3
  52. data/test/gemfiles/test-unit-2.4.8/Gemfile +0 -3
  53. data/test/gemfiles/test-unit-2.4.8/Gemfile.lock +0 -10
  54. data/test/gemfiles/test-unit-2.4.8/scenarios +0 -3
  55. data/test/gemfiles/test-unit-2.4.9/Gemfile +0 -3
  56. data/test/gemfiles/test-unit-2.4.9/Gemfile.lock +0 -10
  57. data/test/gemfiles/test-unit-2.4.9/scenarios +0 -3
  58. data/test/run +0 -25
  59. data/test/scenarios/bundler_require.rb +0 -7
  60. data/test/scenarios/minitest_assertions.rb +0 -7
  61. data/test/scenarios/minitest_propagate_exit_code.rb +0 -9
  62. data/test/scenarios/no_assertion_library.rb +0 -11
  63. data/test/scenarios/require_activesupport_testing_autorun.rb +0 -4
  64. data/test/scenarios/require_test_unit.rb +0 -6
  65. data/test/scenarios/rspec_matchers.rb +0 -7
  66. data/test/scenarios/spec_matchers.rb +0 -7
  67. data/test/scenarios/test_unit_assertions.rb +0 -6
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 9bf367ba6889bb0f2a47168e857a773f5c7749f2f4b41e9cad7a20a7981dafac
4
+ data.tar.gz: 2506bc7ff22e1a38b87f98a2bb9595dde03179d40ffa7a7b87b60e09d4ebc10d
5
+ SHA512:
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,5 +1,7 @@
1
1
  all:
2
- ./test/all
2
+ ./test-all
3
+ .PHONY: all
3
4
 
4
5
  clean:
5
- 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
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.2'
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,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multi_test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
5
- prerelease:
4
+ version: 1.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Matt Wynne
@@ -10,7 +9,7 @@ authors:
10
9
  autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2015-02-12 00:00:00.000000000 Z
12
+ date: 2022-05-05 00:00:00.000000000 Z
14
13
  dependencies: []
15
14
  description: Wafter-thin gem to help control rogue test/unit/autorun requires
16
15
  email: cukes@googlegroups.com
@@ -18,137 +17,45 @@ executables: []
18
17
  extensions: []
19
18
  extra_rdoc_files: []
20
19
  files:
21
- - .travis.yml
22
- - 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
23
27
  - LICENSE
24
28
  - Makefile
25
29
  - README.md
26
- - Rakefile
30
+ - VERSION
27
31
  - lib/multi_test.rb
28
32
  - lib/multi_test/assertion_library.rb
29
33
  - lib/multi_test/minitest_world.rb
30
34
  - multi_test.gemspec
31
- - test/README.md
32
- - test/all
33
- - test/gemfiles/activesupport-4.0.0/Gemfile
34
- - test/gemfiles/activesupport-4.0.0/Gemfile.lock
35
- - test/gemfiles/activesupport-4.0.0/scenarios
36
- - test/gemfiles/activesupport-4.1.0/Gemfile
37
- - test/gemfiles/activesupport-4.1.0/Gemfile.lock
38
- - test/gemfiles/activesupport-4.1.0/scenarios
39
- - test/gemfiles/minitest-5.0.1/Gemfile
40
- - test/gemfiles/minitest-5.0.1/Gemfile.lock
41
- - test/gemfiles/minitest-5.0.1/scenarios
42
- - test/gemfiles/minitest-5.1.0/Gemfile
43
- - test/gemfiles/minitest-5.1.0/Gemfile.lock
44
- - test/gemfiles/minitest-5.1.0/scenarios
45
- - test/gemfiles/minitest-5.2.0/Gemfile
46
- - test/gemfiles/minitest-5.2.0/Gemfile.lock
47
- - test/gemfiles/minitest-5.2.0/scenarios
48
- - test/gemfiles/plain-ruby/Gemfile
49
- - test/gemfiles/plain-ruby/Gemfile.lock
50
- - test/gemfiles/plain-ruby/scenarios
51
- - test/gemfiles/rspec-1.3.2/Gemfile
52
- - test/gemfiles/rspec-1.3.2/Gemfile.lock
53
- - test/gemfiles/rspec-1.3.2/scenarios
54
- - test/gemfiles/rspec-2.14/Gemfile
55
- - test/gemfiles/rspec-2.14/Gemfile.lock
56
- - test/gemfiles/rspec-2.14/scenarios
57
- - test/gemfiles/rspec-3.0/Gemfile
58
- - test/gemfiles/rspec-3.0/Gemfile.lock
59
- - test/gemfiles/rspec-3.0/scenarios
60
- - test/gemfiles/rspec-3.1/Gemfile
61
- - test/gemfiles/rspec-3.1/Gemfile.lock
62
- - test/gemfiles/rspec-3.1/scenarios
63
- - test/gemfiles/test-unit-2.4.8/Gemfile
64
- - test/gemfiles/test-unit-2.4.8/Gemfile.lock
65
- - test/gemfiles/test-unit-2.4.8/scenarios
66
- - test/gemfiles/test-unit-2.4.9/Gemfile
67
- - test/gemfiles/test-unit-2.4.9/Gemfile.lock
68
- - test/gemfiles/test-unit-2.4.9/scenarios
69
- - test/run
70
- - test/scenarios/bundler_require.rb
71
- - test/scenarios/minitest_assertions.rb
72
- - test/scenarios/minitest_propagate_exit_code.rb
73
- - test/scenarios/no_assertion_library.rb
74
- - test/scenarios/require_activesupport_testing_autorun.rb
75
- - test/scenarios/require_test_unit.rb
76
- - test/scenarios/rspec_matchers.rb
77
- - test/scenarios/spec_matchers.rb
78
- - test/scenarios/test_unit_assertions.rb
35
+ - test-all
36
+ - test-gemfile
79
37
  homepage: http://cukes.info
80
38
  licenses:
81
39
  - MIT
40
+ metadata: {}
82
41
  post_install_message:
83
42
  rdoc_options:
84
- - --charset=UTF-8
43
+ - "--charset=UTF-8"
85
44
  require_paths:
86
45
  - lib
87
46
  required_ruby_version: !ruby/object:Gem::Requirement
88
- none: false
89
47
  requirements:
90
- - - ! '>='
48
+ - - ">="
91
49
  - !ruby/object:Gem::Version
92
- version: '0'
50
+ version: '2.0'
93
51
  required_rubygems_version: !ruby/object:Gem::Requirement
94
- none: false
95
52
  requirements:
96
- - - ! '>='
53
+ - - ">="
97
54
  - !ruby/object:Gem::Version
98
- version: '0'
55
+ version: 1.6.1
99
56
  requirements: []
100
- rubyforge_project:
101
- rubygems_version: 1.8.23
57
+ rubygems_version: 3.2.33
102
58
  signing_key:
103
- specification_version: 3
104
- summary: multi-test-0.1.2
105
- test_files:
106
- - test/README.md
107
- - test/all
108
- - test/gemfiles/activesupport-4.0.0/Gemfile
109
- - test/gemfiles/activesupport-4.0.0/Gemfile.lock
110
- - test/gemfiles/activesupport-4.0.0/scenarios
111
- - test/gemfiles/activesupport-4.1.0/Gemfile
112
- - test/gemfiles/activesupport-4.1.0/Gemfile.lock
113
- - test/gemfiles/activesupport-4.1.0/scenarios
114
- - test/gemfiles/minitest-5.0.1/Gemfile
115
- - test/gemfiles/minitest-5.0.1/Gemfile.lock
116
- - test/gemfiles/minitest-5.0.1/scenarios
117
- - test/gemfiles/minitest-5.1.0/Gemfile
118
- - test/gemfiles/minitest-5.1.0/Gemfile.lock
119
- - test/gemfiles/minitest-5.1.0/scenarios
120
- - test/gemfiles/minitest-5.2.0/Gemfile
121
- - test/gemfiles/minitest-5.2.0/Gemfile.lock
122
- - test/gemfiles/minitest-5.2.0/scenarios
123
- - test/gemfiles/plain-ruby/Gemfile
124
- - test/gemfiles/plain-ruby/Gemfile.lock
125
- - test/gemfiles/plain-ruby/scenarios
126
- - test/gemfiles/rspec-1.3.2/Gemfile
127
- - test/gemfiles/rspec-1.3.2/Gemfile.lock
128
- - test/gemfiles/rspec-1.3.2/scenarios
129
- - test/gemfiles/rspec-2.14/Gemfile
130
- - test/gemfiles/rspec-2.14/Gemfile.lock
131
- - test/gemfiles/rspec-2.14/scenarios
132
- - test/gemfiles/rspec-3.0/Gemfile
133
- - test/gemfiles/rspec-3.0/Gemfile.lock
134
- - test/gemfiles/rspec-3.0/scenarios
135
- - test/gemfiles/rspec-3.1/Gemfile
136
- - test/gemfiles/rspec-3.1/Gemfile.lock
137
- - test/gemfiles/rspec-3.1/scenarios
138
- - test/gemfiles/test-unit-2.4.8/Gemfile
139
- - test/gemfiles/test-unit-2.4.8/Gemfile.lock
140
- - test/gemfiles/test-unit-2.4.8/scenarios
141
- - test/gemfiles/test-unit-2.4.9/Gemfile
142
- - test/gemfiles/test-unit-2.4.9/Gemfile.lock
143
- - test/gemfiles/test-unit-2.4.9/scenarios
144
- - test/run
145
- - test/scenarios/bundler_require.rb
146
- - test/scenarios/minitest_assertions.rb
147
- - test/scenarios/minitest_propagate_exit_code.rb
148
- - test/scenarios/no_assertion_library.rb
149
- - test/scenarios/require_activesupport_testing_autorun.rb
150
- - test/scenarios/require_test_unit.rb
151
- - test/scenarios/rspec_matchers.rb
152
- - test/scenarios/spec_matchers.rb
153
- - test/scenarios/test_unit_assertions.rb
154
- has_rdoc:
59
+ specification_version: 4
60
+ summary: multi-test-1.0.0
61
+ test_files: []
data/.travis.yml DELETED
@@ -1,9 +0,0 @@
1
- rvm:
2
- - 1.9.3
3
- - 2.0.0
4
- - 2.1.3
5
- - 2.2.0
6
- - jruby
7
- script: make
8
- before_install:
9
- gem install bundler -v 1.5.1
data/History.md DELETED
@@ -1,20 +0,0 @@
1
- ## [v0.1.2](https://github.com/cucumber/multi_test/compare/v0.1.1...v0.1.2)
2
-
3
- * Ensure that detecting assetion library doesn't fail if no test framework
4
- included. Ruby 2.2 removed minitest from standard library. (@tooky, @jmoody)
5
-
6
- ## [v0.1.1](https://github.com/cucumber/multi_test/compare/v0.1.0...v0.1.1)
7
-
8
- * Remove incompatibility with ruby 1.8.7
9
-
10
- ## [v0.1.0](https://github.com/cucumber/multi_test/compare/v0.0.3...v0.1.0)
11
-
12
- * Detect best available assertion library for cucumber (@tooky)
13
-
14
- ## [v0.0.3](https://github.com/cucumber/multi_test/compare/v0.0.2...v0.0.3)
15
-
16
- * Fix for Rails 4.1, Minitest 5.x ([#4](https://github.com/cucumber/multi_test/pull/4) Andy Lindeman)
17
-
18
- ## [v0.0.2](https://github.com/cucumber/multi_test/compare/bae4b700eb63cfb4e95f7acc35e25683f697905a...v0.0.2)
19
-
20
- * 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,9 +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:
8
- 1. nothing was written to standard output
9
- 2. the Ruby script exited with status 0 (i.e. no exception was raised)
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
- no_assertion_library.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'
@@ -1,22 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- diff-lcs (1.2.5)
5
- rspec (3.0.0)
6
- rspec-core (~> 3.0.0)
7
- rspec-expectations (~> 3.0.0)
8
- rspec-mocks (~> 3.0.0)
9
- rspec-core (3.0.4)
10
- rspec-support (~> 3.0.0)
11
- rspec-expectations (3.0.4)
12
- diff-lcs (>= 1.2.0, < 2.0)
13
- rspec-support (~> 3.0.0)
14
- rspec-mocks (3.0.4)
15
- rspec-support (~> 3.0.0)
16
- rspec-support (3.0.4)
17
-
18
- PLATFORMS
19
- ruby
20
-
21
- DEPENDENCIES
22
- rspec (~> 3.0.0)
@@ -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.1.0'
@@ -1,22 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- diff-lcs (1.2.5)
5
- rspec (3.1.0)
6
- rspec-core (~> 3.1.0)
7
- rspec-expectations (~> 3.1.0)
8
- rspec-mocks (~> 3.1.0)
9
- rspec-core (3.1.7)
10
- rspec-support (~> 3.1.0)
11
- rspec-expectations (3.1.2)
12
- diff-lcs (>= 1.2.0, < 2.0)
13
- rspec-support (~> 3.1.0)
14
- rspec-mocks (3.1.3)
15
- rspec-support (~> 3.1.0)
16
- rspec-support (3.1.2)
17
-
18
- PLATFORMS
19
- ruby
20
-
21
- DEPENDENCIES
22
- rspec (~> 3.1.0)
@@ -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,11 +0,0 @@
1
- require "multi_test"
2
-
3
- begin
4
- MultiTest.extend_with_best_assertion_library(self)
5
- rescue NoMethodError => e
6
- if e.message =~ /extend_world/
7
- raise 'no assertion library detected'
8
- else
9
- raise e
10
- end
11
- end
@@ -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)