rspec-parameterized 0.1.3 → 0.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f5665bc5a51fe3cd88914ac6c60338ea1ffad169
4
- data.tar.gz: a80fbc9f7c762afc8708935ab9e0b78169275322
3
+ metadata.gz: aff30f7544b6df92c5886fa92c44d40f49c602ce
4
+ data.tar.gz: 31b86112cf15b6540876b2d31f2c5a84ef701889
5
5
  SHA512:
6
- metadata.gz: fd46dfbed36ff3124150e5bb56c1c965a38bc8fa12264b26b189a2b4c7e35e1cab2dbe98d23934d07fe4a58454bb0c91203c5c00d9c6193fa47511f0fbe24d65
7
- data.tar.gz: 862cdb822391d181e49402eab8da5f064659de6346c9436e617308308947e764556f1d711840cdc62541ce8a507bb6aec31e69f318dff655c919e588e49c467f
6
+ metadata.gz: 5edaf41862d9f151f14364f981ea9c44423b1134956ee788e1675ce9f3902a2932ddced532d6a588a59be3527c9212114910d144d29588a494a40a39edfefa39
7
+ data.tar.gz: f51339e6c2bf33e5d579f044199515bb92600043a8975ea981512d4ceb3f32969d9eff12d12d63af810524f9a589305915093806e39cff28462734927228fdde
data/.travis.yml CHANGED
@@ -1,6 +1,5 @@
1
1
  sudo: false
2
2
  rvm:
3
- - 2.0
4
3
  - 2.1
5
4
  - 2.2
6
5
 
@@ -8,7 +7,4 @@ gemfile:
8
7
  - gemfiles/rspec2.gemfile
9
8
  - gemfiles/rspec3.gemfile
10
9
  - gemfiles/rspec3.2.gemfile
11
-
12
- matrix:
13
- allow_failures:
14
- - rvm: 1.9.3
10
+ - gemfiles/rspec3.3.gemfile
data/README.md CHANGED
@@ -3,6 +3,7 @@
3
3
  Support simple parameterized test syntax in rspec.
4
4
 
5
5
  ```ruby
6
+ # Nested Array Style
6
7
  describe "plus" do
7
8
  where(:a, :b, :answer) do
8
9
  [
@@ -14,11 +15,40 @@ describe "plus" do
14
15
 
15
16
  with_them do
16
17
  it "should do additions" do
17
- (a + b).should == answer
18
+ expect(a + b).to eq answer
18
19
  end
19
20
  end
20
21
  end
21
22
 
23
+ # Hash and Array Style
24
+ # Given parameters is each value combinations
25
+ # On this case
26
+ # [
27
+ # [1, 5, 2],
28
+ # [1, 5, 4],
29
+ # [1, 7, 2],
30
+ # [1, 7, 4],
31
+ # [1, 9, 2],
32
+ # [1, 9, 4],
33
+ # [3, 5, 2],
34
+ # [3, 5, 4],
35
+ # [3, 7, 2],
36
+ # [3, 7, 4],
37
+ # [3, 9, 2],
38
+ # [3, 9, 4]
39
+ # ]
40
+ describe "Hash arguments" do
41
+ where(a: [1, 3], b: [5, 7, 9], c: [2, 4])
42
+
43
+ with_them do
44
+ it "sums is even" do
45
+ expect(a + b + c).to be_even
46
+ end
47
+ end
48
+ end
49
+
50
+ # Table Syntax Style (like Groovy spock)
51
+ # Need ruby-2.1 or later
22
52
  describe "plus" do
23
53
  using RSpec::Parameterized::TableSyntax
24
54
 
@@ -30,7 +60,7 @@ describe "plus" do
30
60
 
31
61
  with_them do
32
62
  it "should do additions" do
33
- (a + b).should == answer
63
+ expect(a + b).to eq answer
34
64
  end
35
65
  end
36
66
  end
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem "rspec", "~> 3.3.0"
4
+
5
+ gemspec path: "../"
@@ -38,7 +38,17 @@ module RSpec
38
38
  # end
39
39
  #
40
40
  def where(*args, &b)
41
- set_parameters(args, false, &b)
41
+
42
+ if args.size == 1 && args[0].instance_of?(Hash)
43
+ params = args[0]
44
+ first, *rest = params.values
45
+
46
+ set_parameters(params.keys, false) {
47
+ first.product(*rest)
48
+ }
49
+ else
50
+ set_parameters(args, false, &b)
51
+ end
42
52
  end
43
53
 
44
54
  # Set parameters to be bound in specs under this example group.
@@ -53,6 +63,8 @@ module RSpec
53
63
  # end
54
64
  #
55
65
  def where_table(*args, &b)
66
+ warn "deprecated: `where_table` method is deprecated. Please use `using RSpec::Parameterized::TableSyntax`"
67
+ warn caller.first
56
68
  set_parameters(args, true, &b)
57
69
  end
58
70
 
@@ -1,5 +1,5 @@
1
1
  module RSpec
2
2
  module Parameterized
3
- VERSION = "0.1.3"
3
+ VERSION = "0.2.0"
4
4
  end
5
5
  end
@@ -50,6 +50,16 @@ describe RSpec::Parameterized do
50
50
  end
51
51
  end
52
52
 
53
+ describe "Hash arguments" do
54
+ where(a: [1, 3], b: [5, 7, 9], c: [2, 4])
55
+
56
+ with_them do
57
+ it "sums is even" do
58
+ expect(a + b + c).to be_even
59
+ end
60
+ end
61
+ end
62
+
53
63
  describe "table separated with pipe" do
54
64
  where_table(:a, :b, :answer) do
55
65
  1 | 2 | 3
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-parameterized
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - tomykaira
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-13 00:00:00.000000000 Z
11
+ date: 2015-09-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -116,6 +116,7 @@ files:
116
116
  - Rakefile
117
117
  - gemfiles/rspec2.gemfile
118
118
  - gemfiles/rspec3.2.gemfile
119
+ - gemfiles/rspec3.3.gemfile
119
120
  - gemfiles/rspec3.gemfile
120
121
  - lib/rspec-parameterized.rb
121
122
  - lib/rspec/parameterized.rb
@@ -144,7 +145,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
144
145
  version: '0'
145
146
  requirements: []
146
147
  rubyforge_project:
147
- rubygems_version: 2.2.2
148
+ rubygems_version: 2.4.8
148
149
  signing_key:
149
150
  specification_version: 4
150
151
  summary: RSpec::Parameterized supports simple parameterized test syntax in rspec.