rspec-with-args 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 363d298854a03c2ec3babea22fcaa61f31652744
4
- data.tar.gz: 2e2de1d3f2325526ce3d2b3556e0934e1843f667
3
+ metadata.gz: a1530585271d82b26e8b660bd8e8410d662fc783
4
+ data.tar.gz: cfcb88f4968e0cfebcd0178fec8f71b4731d9232
5
5
  SHA512:
6
- metadata.gz: 64130abd4d1d03f683d36815190896fdf330333f27c129d52b0cd1ba537408e5a403183923a6207e6cea57f83f6941c6c5559393e078072596465327c49ab0da
7
- data.tar.gz: b5a2daf772518389537c75c0e0ead6995a10f2063d73a5df8d222e21e87aafcaad1d308b5951c48d95871bcab9013b50e8720f370f7ea3d2bc8db3582ab315aa
6
+ metadata.gz: 3277d4f28ffc138c798df1bfc9ce5f5086da802636055a634616a0d88a9bd0ad0899f2b7f9745a6ce3718a5ba5b97fefc8df6c9952911daf343c9ea182eda359
7
+ data.tar.gz: 4c67292d2063091a9b4a44a8076028c7f943e2572045294a67426bb05bc41b0c2769073830e2f3893280c3ad1071ee340d4992e8aa02c8ed3eb2120d9cffb408
@@ -7,7 +7,12 @@ module RSpec::WithArgs
7
7
 
8
8
  module CommonInstanceMethods
9
9
  def subject_args
10
- metadata.fetch(:with_args,[])
10
+ args = metadata.fetch(:with_args,[])
11
+ if args.is_a?(Array)
12
+ args
13
+ else
14
+ Array.new
15
+ end
11
16
  end
12
17
 
13
18
  def metadata
@@ -50,7 +55,12 @@ module RSpec::WithArgs
50
55
  end
51
56
 
52
57
  def initialization_args
53
- metadata[:initialization_args]
58
+ args = metadata[:initialization_args]
59
+ if args.is_a?(Array)
60
+ args
61
+ else
62
+ Array.new
63
+ end
54
64
  end
55
65
  end
56
66
 
@@ -1,5 +1,23 @@
1
1
  require 'rspec-with-args'
2
2
 
3
+ RSpec.configure do |c|
4
+ c.treat_symbols_as_metadata_keys_with_true_values = true
5
+ end
6
+
7
+ class Bar
8
+ def foo
9
+ "bar"
10
+ end
11
+ end
12
+
13
+ describe Bar, :with_args do
14
+ context "instance methods with no args" do
15
+ describe "#foo" do
16
+ it { should eq "bar" }
17
+ end
18
+ end
19
+ end
20
+
3
21
  class Foo < Struct.new(:arg1, :arg2)
4
22
  def foo(m_arg1)
5
23
  m_arg1 + arg1
metadata CHANGED
@@ -1,15 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-with-args
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kelly Stannard
8
8
  - Kelly Stannard
9
+ - Kelly Stannard
9
10
  autorequire:
10
11
  bindir: bin
11
12
  cert_chain: []
12
- date: 2013-09-02 00:00:00.000000000 Z
13
+ date: 2013-10-09 00:00:00.000000000 Z
13
14
  dependencies: []
14
15
  description: |
15
16
  rspec-with-args attempts to cut out having to explicitly write the subject of your example group when trying to call methods or add arguments to methods. It works by reading the conventional description syntax to determine what the subject is. Then allowing you to explicitly state what variables will be passed in as arguments.