qor_test 1.0.0 → 1.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 +4 -4
- data/README.md +30 -9
- data/lib/qor_test/cli.rb +2 -2
- data/lib/qor_test/version.rb +1 -1
- data/test/gem_test.rb +14 -5
- data/test/screenshot.png +0 -0
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0f96d4a2d55e742beea56c201532e16d011c2f8b
|
4
|
+
data.tar.gz: b19cbf4c02bc074807ff11cb49e90aacded0c16b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ad70acebd90012e83931a32d63d5cb6576f53125f549711a481df7de904eef7e42095191eaaf90a88af9c5cad251429f2428c79cc5d2781f0c8772e9f300e39
|
7
|
+
data.tar.gz: 1c0c8793a71db4267fa5596c49aeed5beb5f767015e5ed0d5abf65f9f26e98010669cd9631485d195702e6f34d04f89f879e003205de021a2945798d29e6c215
|
data/README.md
CHANGED
@@ -1,8 +1,6 @@
|
|
1
|
-
# Qor Test
|
1
|
+
# Qor Test - Make it easy to discovery compatibility issues!
|
2
2
|
|
3
|
-
Qor Test is
|
4
|
-
|
5
|
-
Make it easy to discovery compatibility issues!
|
3
|
+
Qor Test is a tool to test your projects against different versions of gem dependencies and rubies (through rbenv or rvm)
|
6
4
|
|
7
5
|
[](http://travis-ci.org/qor/qor_test)
|
8
6
|
[](https://gemnasium.com/qor/qor_test)
|
@@ -27,7 +25,7 @@
|
|
27
25
|
gem 'rails', [3.1, 3.2]
|
28
26
|
end
|
29
27
|
|
30
|
-
With
|
28
|
+
With above configuration, Qor Test will generate 5 test scenes.
|
31
29
|
|
32
30
|
1, Test your project with Rails 3.1 and Ruby 2.0
|
33
31
|
2, Test your project with Rails 3.2 and Ruby 2.0
|
@@ -39,13 +37,13 @@
|
|
39
37
|
|
40
38
|
qor_test
|
41
39
|
|
42
|
-
Of course, you could specify
|
40
|
+
Of course, you could specify one scene when test your project, for example, use `qor_test -e '2.0'` to test your project only under ruby 2.0.
|
43
41
|
|
44
42
|
## Advanced Usage
|
45
43
|
|
46
44
|
\* Dependencies defined outside would be shared in all scenes:
|
47
45
|
|
48
|
-
So you could
|
46
|
+
So you could use below configuration to test your project with rails 3.1, 3.2 under ruby 1.8, 1.9, 2.0. (6 scenes)
|
49
47
|
|
50
48
|
# config/qor/test.rb
|
51
49
|
gem 'rails', [3.1, 3.2]
|
@@ -59,7 +57,7 @@
|
|
59
57
|
gem 'factory_girl_rails', '1.3.0'
|
60
58
|
end
|
61
59
|
|
62
|
-
\* Gemfile options `git`, `branch`, `path` and so on
|
60
|
+
\* Gemfile options `git`, `branch`, `path` and so on are supported by Qor Test
|
63
61
|
|
64
62
|
# config/qor/test.rb
|
65
63
|
ruby ['2.0', '1.9.3', '1.8.7']
|
@@ -70,10 +68,33 @@
|
|
70
68
|
|
71
69
|
Qor Test will invoke `rake spec` to run tests for rspec projects.
|
72
70
|
|
73
|
-
And you could even specify a test command by passing environment variable 'COMMAND'.
|
71
|
+
And you could even specify a test command by passing environment variable 'COMMAND'. e.g:
|
74
72
|
|
75
73
|
COMMAND='ruby test/xxxx.rb' qor_test
|
76
74
|
|
75
|
+
\* Specify a configuration file
|
76
|
+
|
77
|
+
You can do it by passing environment variable `QOR_TEST_CONFIG`. e.g:
|
78
|
+
|
79
|
+
QOR_TEST_CONFIG=~/test.rb qor_test
|
80
|
+
|
81
|
+
|
82
|
+
## Test Qor Test with Qor Test
|
83
|
+
|
84
|
+
#### Configuration
|
85
|
+
|
86
|
+
# config/qor/test.rb
|
87
|
+
env '1.9+' do
|
88
|
+
ruby ['1.9.3', '2.0']
|
89
|
+
end
|
90
|
+
|
91
|
+
env '1.8.7' do
|
92
|
+
ruby '1.8.7'
|
93
|
+
gem 'minitest', '4.3'
|
94
|
+
end
|
95
|
+
|
96
|
+
#### Screenshot
|
97
|
+
[](https://raw.github.com/qor/qor_test/master/test/screenshot.png)
|
77
98
|
|
78
99
|
## Contributing
|
79
100
|
|
data/lib/qor_test/cli.rb
CHANGED
@@ -34,8 +34,8 @@ module Qor
|
|
34
34
|
|
35
35
|
def run_with_gemfile(file)
|
36
36
|
$case_num += 1
|
37
|
-
scripts << "echo -n '\n\e[01;31m[ENV #{gemfile.group_name}] \e[0m'"
|
38
|
-
scripts << "echo -n '\e[31mRunning case #{$case_num} with
|
37
|
+
scripts << "echo -n '\n\e[01;31m[ENV #{gemfile.group_name}] \e[0m'" unless gemfile.group_name.nil?
|
38
|
+
scripts << "echo -n '\e[31mRunning case #{$case_num} with '$(ruby -v)', '$[$total_cases_num-#{$case_num}]' cases left\e[0m\n'"
|
39
39
|
|
40
40
|
lock_file = "#{file}.lock"
|
41
41
|
temp_file = "QorTest_" + File.basename(file)
|
data/lib/qor_test/version.rb
CHANGED
data/test/gem_test.rb
CHANGED
@@ -26,7 +26,10 @@ describe Gem do
|
|
26
26
|
end
|
27
27
|
|
28
28
|
Qor::Test::Gem.parse(config.first("gem")).length.must_equal 2
|
29
|
-
|
29
|
+
# Don't test below case with ruby 1.8 due to hash is not ordered in 1.8
|
30
|
+
if RUBY_VERSION !~ /1.8/
|
31
|
+
Qor::Test::Gem.parse(config.first("gem"))[0].to_s.must_equal 'gem "nokogiri", {:git=>"git://github.com/tenderlove/nokogiri.git", :branch=>"1.4"}'
|
32
|
+
end
|
30
33
|
Qor::Test::Gem.parse(config.first("gem"))[1].to_s.must_equal 'gem "nokogiri", {:git=>"git://github.com/tenderlove/nokogiri.git"}'
|
31
34
|
|
32
35
|
# case 4
|
@@ -35,7 +38,9 @@ describe Gem do
|
|
35
38
|
end
|
36
39
|
|
37
40
|
Qor::Test::Gem.parse(config.first("gem")).length.must_equal 1
|
38
|
-
|
41
|
+
if RUBY_VERSION !~ /1.8/
|
42
|
+
Qor::Test::Gem.parse(config.first("gem"))[0].to_s.must_equal 'gem "nokogiri", {:git=>"git://github.com/tenderlove/nokogiri.git", :branch=>"1.4"}'
|
43
|
+
end
|
39
44
|
|
40
45
|
# case 5
|
41
46
|
config = Qor::Test::Configuration.load(nil, :force => true) do
|
@@ -63,7 +68,9 @@ describe Gem do
|
|
63
68
|
end
|
64
69
|
|
65
70
|
Qor::Test::Gem.parse(config.deep_find("gem")[0]).length.must_equal 1
|
66
|
-
|
71
|
+
if RUBY_VERSION !~ /1.8/
|
72
|
+
Qor::Test::Gem.parse(config.deep_find("gem")[0])[0].to_s.must_equal 'gem "nokogiri", {:git=>"git://github.com/tenderlove/nokogiri.git", :branch=>"1.4"}'
|
73
|
+
end
|
67
74
|
|
68
75
|
# case 8
|
69
76
|
config = Qor::Test::Configuration.load(nil, :force => true) do
|
@@ -92,7 +99,9 @@ describe Gem do
|
|
92
99
|
end
|
93
100
|
|
94
101
|
Qor::Test::Gem.parse(config.deep_find("gem")[0]).length.must_equal 2
|
95
|
-
|
96
|
-
|
102
|
+
if RUBY_VERSION !~ /1.8/
|
103
|
+
Qor::Test::Gem.parse(config.deep_find("gem")[0])[0].to_s.must_equal 'gem "nokogiri", {:git=>"git://github.com/tenderlove/nokogiri.git", :branch=>"1.4"}'
|
104
|
+
Qor::Test::Gem.parse(config.deep_find("gem")[0])[1].to_s.must_equal 'gem "nokogiri", {:git=>"git://github.com/tenderlove/nokogiri.git", :branch=>"2.0"}'
|
105
|
+
end
|
97
106
|
end
|
98
107
|
end
|
data/test/screenshot.png
ADDED
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: qor_test
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jinzhu
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-08-
|
11
|
+
date: 2013-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: qor_dsl
|
@@ -40,6 +40,7 @@ files:
|
|
40
40
|
- README.md
|
41
41
|
- Rakefile
|
42
42
|
- bin/qor_test.rb
|
43
|
+
- config/qor/test.rb
|
43
44
|
- ext/qor_test/extconf.rb
|
44
45
|
- ext/qor_test/qor_test
|
45
46
|
- ext/qor_test/qor_test.c
|
@@ -52,6 +53,7 @@ files:
|
|
52
53
|
- lib/qor_test/version.rb
|
53
54
|
- qor_test.gemspec
|
54
55
|
- test/gem_test.rb
|
56
|
+
- test/screenshot.png
|
55
57
|
homepage: ''
|
56
58
|
licenses: []
|
57
59
|
metadata: {}
|
@@ -77,3 +79,4 @@ specification_version: 4
|
|
77
79
|
summary: 'Qor Test: Make it easy to discovery compatibility issues!'
|
78
80
|
test_files:
|
79
81
|
- test/gem_test.rb
|
82
|
+
- test/screenshot.png
|