multi_test 0.0.1

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 032098e797d45f7278842d5e2756ec54f12055e2
4
+ data.tar.gz: 8c09d73f2c82d71460ff1254b86595ad772a64c9
5
+ SHA512:
6
+ metadata.gz: 5db5d69f68dad56340219caad252cdfcd740106489723d1b852674416e79c87f4453d4ce0a72836f3f5e705491c0029d52214bceaf0c64dde01b4da103e327b4
7
+ data.tar.gz: 028057f88a5946bc507881ba1c7aaf3f1ad51ff1c6882e316f3748578bd16f97fa51233be4054be3b9e13f628e760f4aebbcc30315dff0a581127c350b0397a1
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ rvm:
2
+ - 1.9.3
3
+ - 2.0.0
4
+ script: make
data/Makefile ADDED
@@ -0,0 +1,7 @@
1
+ GEMFILES=$(shell ls ./gemfiles/**/Gemfile)
2
+
3
+ all:
4
+ ./test/all
5
+
6
+ clean:
7
+ rm -f gemfiles/**/*.lock
data/README.md ADDED
@@ -0,0 +1,14 @@
1
+ [![Build Status](https://travis-ci.org/cucumber/multi_test.png?branch=master)](https://travis-ci.org/cucumber/multi_test)
2
+
3
+ This project gives you a uniform interface onto whatever testing library has been
4
+ loaded into a running Ruby process.
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.
8
+
9
+ Example:
10
+ ~~~ruby
11
+ require 'multi_test'
12
+ MultiTest.disable_autorun
13
+ ~~~
14
+
data/Rakefile ADDED
@@ -0,0 +1,9 @@
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
@@ -0,0 +1,3 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem "minitest", "5.0.1"
@@ -0,0 +1 @@
1
+ test/bundler_require.rb
@@ -0,0 +1 @@
1
+ source "https://rubygems.org"
@@ -0,0 +1,3 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem "test-unit", "2.4.8"
@@ -0,0 +1,3 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem "test-unit", "2.4.9"
data/lib/multi_test.rb ADDED
@@ -0,0 +1,7 @@
1
+ module MultiTest
2
+ def self.disable_autorun
3
+ if defined?(Test::Unit::Runner)
4
+ Test::Unit::Runner.module_eval("@@stop_auto_run = true")
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,21 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
3
+ require "cucumber/platform"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = 'multi_test'
7
+ s.version = '0.0.1'
8
+ s.authors = ["Matt Wynne", "Steve Tooke"]
9
+ s.description = 'Wafter-thin gem to help us control rogue test/unit requires'
10
+ s.summary = "multi-test-#{s.version}"
11
+ s.email = 'cukes@googlegroups.com'
12
+ s.homepage = "http://cukes.info"
13
+
14
+ s.platform = Gem::Platform::RUBY
15
+
16
+ s.rubygems_version = ">= 1.6.1"
17
+ s.files = `git ls-files`.split("\n").reject {|path| path =~ /\.gitignore$/ }
18
+ s.test_files = `git ls-files -- {gemfiles,test}/*`.split("\n")
19
+ s.rdoc_options = ["--charset=UTF-8"]
20
+ s.require_path = "lib"
21
+ end
data/test/all ADDED
@@ -0,0 +1,30 @@
1
+ #!/bin/bash
2
+ exit_status=0
3
+ gemfile_dirs=$(ls -d -- gemfiles/*)
4
+ echo $gemfile_dirs
5
+ for gemfile_dir in $gemfile_dirs
6
+ do
7
+ if [ -a $gemfile_dir/scenarios ]
8
+ then
9
+ scenarios=$(cat $gemfile_dir/scenarios)
10
+ else
11
+ scenarios=$(ls test/*.rb)
12
+ fi
13
+ echo $scenarios
14
+ for scenario in $scenarios
15
+ do
16
+ gemfile="$gemfile_dir/Gemfile"
17
+ echo
18
+ echo "Testing scenario $scenario with $gemfile..."
19
+ export BUNDLE_GEMFILE=$gemfile
20
+ bundle install
21
+ ./test/run $gemfile_dir $scenario
22
+ if [ $? -ne 0 ]
23
+ then
24
+ exit_status=1
25
+ fi
26
+ done
27
+ done
28
+
29
+ exit $exit_status
30
+
@@ -0,0 +1,7 @@
1
+ # Imagine this is your rails app
2
+ Bundler.require
3
+
4
+ # Now cucumber loads
5
+ require_relative "../lib/multi_test"
6
+ MultiTest.disable_autorun
7
+
@@ -0,0 +1,7 @@
1
+ # Imagine this is your rails app
2
+ require 'test/unit'
3
+
4
+ # Now cucumber loads
5
+ require_relative "../lib/multi_test"
6
+ MultiTest.disable_autorun
7
+
data/test/run ADDED
@@ -0,0 +1,15 @@
1
+ #!/bin/bash
2
+ result="$(bundle exec ruby -I$1 $2)"
3
+ status=$?
4
+ if [[ $result != "" ]]; then
5
+ echo
6
+ echo "=> FAIL: Expected empty output but was:"
7
+ echo "--$result--"
8
+ exit 1
9
+ fi
10
+ if [[ $status -ne 0 ]]; then
11
+ echo
12
+ echo "=> FAIL: Expected zero exit status"
13
+ exit 1
14
+ fi
15
+ echo "=> PASS"
metadata ADDED
@@ -0,0 +1,69 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: multi_test
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Matt Wynne
8
+ - Steve Tooke
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-06-03 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: Wafter-thin gem to help us control rogue test/unit requires
15
+ email: cukes@googlegroups.com
16
+ executables: []
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - .travis.yml
21
+ - Makefile
22
+ - README.md
23
+ - Rakefile
24
+ - gemfiles/minitest-5.0.1/Gemfile
25
+ - gemfiles/minitest-5.0.1/scenarios
26
+ - gemfiles/plain-ruby/Gemfile
27
+ - gemfiles/test-unit-2.4.8/Gemfile
28
+ - gemfiles/test-unit-2.4.9/Gemfile
29
+ - lib/multi_test.rb
30
+ - multi_test.gemspec
31
+ - test/all
32
+ - test/bundler_require.rb
33
+ - test/require_test_unit.rb
34
+ - test/run
35
+ homepage: http://cukes.info
36
+ licenses: []
37
+ metadata: {}
38
+ post_install_message:
39
+ rdoc_options:
40
+ - --charset=UTF-8
41
+ require_paths:
42
+ - lib
43
+ required_ruby_version: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ required_rubygems_version: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - '>='
51
+ - !ruby/object:Gem::Version
52
+ version: '0'
53
+ requirements: []
54
+ rubyforge_project:
55
+ rubygems_version: 2.0.0
56
+ signing_key:
57
+ specification_version: 4
58
+ summary: multi-test-0.0.1
59
+ test_files:
60
+ - gemfiles/minitest-5.0.1/Gemfile
61
+ - gemfiles/minitest-5.0.1/scenarios
62
+ - gemfiles/plain-ruby/Gemfile
63
+ - gemfiles/test-unit-2.4.8/Gemfile
64
+ - gemfiles/test-unit-2.4.9/Gemfile
65
+ - test/all
66
+ - test/bundler_require.rb
67
+ - test/require_test_unit.rb
68
+ - test/run
69
+ has_rdoc: