option 0.0.2 → 0.0.3

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.
@@ -8,3 +8,5 @@ rvm:
8
8
  - rbx-19mode
9
9
  - ruby-head
10
10
  - jruby-head
11
+ - 1.8.7
12
+ - ree
@@ -105,6 +105,7 @@ class NoneClass < OptionClass
105
105
  end
106
106
 
107
107
  None = NoneClass.new
108
+ Some = SomeClass
108
109
 
109
110
  def Some(value)
110
111
  SomeClass.new(value)
@@ -1,3 +1,3 @@
1
1
  module Option
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -16,6 +16,5 @@ Gem::Specification.new do |gem|
16
16
  gem.version = Option::VERSION
17
17
 
18
18
  gem.add_development_dependency "rake", "= 0.9.2.2"
19
- gem.add_development_dependency "rr", "= 1.0.4"
20
19
  gem.add_development_dependency "minitest", "= 3.4.0"
21
20
  end
@@ -1,13 +1,8 @@
1
1
  require "minitest/autorun"
2
2
  require "minitest/spec"
3
3
 
4
- require "rr"
5
- require "rr/adapters/rr_methods"
6
-
7
4
  require "option"
8
5
 
9
- include RR::Adapters::RRMethods
10
-
11
6
  def value
12
7
  12
13
8
  end
@@ -27,12 +22,10 @@ describe NoneClass do
27
22
  end
28
23
 
29
24
  it "#foreach does not execute the block" do
30
- blk = proc {}
31
- dont_allow(blk).call
25
+ expected = nil
26
+ None.foreach { |v| expected = v }
32
27
 
33
- None.foreach(&blk)
34
-
35
- RR.verify
28
+ expected.must_be_nil
36
29
  end
37
30
 
38
31
  it "#or_nil should return nil" do
@@ -75,12 +68,10 @@ describe SomeClass do
75
68
  end
76
69
 
77
70
  it "#get_or_else does not execute the block;" do
78
- blk = proc { value }
79
- dont_allow(blk).call
80
-
81
- Some(value).get_or_else(&blk)
71
+ expected = nil
72
+ Some(value).get_or_else { expected = true }
82
73
 
83
- RR.verify
74
+ expected.must_be_nil
84
75
  end
85
76
 
86
77
  it "#get_or_else returns the value" do
@@ -88,12 +79,10 @@ describe SomeClass do
88
79
  end
89
80
 
90
81
  it "#foreach executes the block passing the inner value" do
91
- blk = proc {}
92
- mock(blk).call(value)
82
+ expected = nil
83
+ Some(value).foreach { |v| expected = v }
93
84
 
94
- Some(value).foreach(&blk)
95
-
96
- RR.verify
85
+ expected.must_equal(value)
97
86
  end
98
87
 
99
88
  it "#or_nil should return the inner value" do
@@ -133,11 +122,11 @@ describe SomeClass do
133
122
  end
134
123
 
135
124
  it "should wrap the creation of a Some" do
136
- mock(SomeClass).new(value)
137
-
138
- Some(value)
125
+ Some(value).must_be_instance_of(SomeClass)
126
+ end
139
127
 
140
- RR.verify
128
+ it "should be aliased to Some" do
129
+ Some.new(value).must_equal(Some(value))
141
130
  end
142
131
  end
143
132
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: option
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-13 00:00:00.000000000 Z
12
+ date: 2012-09-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
- requirement: &70192629393660 !ruby/object:Gem::Requirement
16
+ requirement: &70272275046440 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - =
@@ -21,21 +21,10 @@ dependencies:
21
21
  version: 0.9.2.2
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70192629393660
25
- - !ruby/object:Gem::Dependency
26
- name: rr
27
- requirement: &70192629393160 !ruby/object:Gem::Requirement
28
- none: false
29
- requirements:
30
- - - =
31
- - !ruby/object:Gem::Version
32
- version: 1.0.4
33
- type: :development
34
- prerelease: false
35
- version_requirements: *70192629393160
24
+ version_requirements: *70272275046440
36
25
  - !ruby/object:Gem::Dependency
37
26
  name: minitest
38
- requirement: &70192629392700 !ruby/object:Gem::Requirement
27
+ requirement: &70272275062320 !ruby/object:Gem::Requirement
39
28
  none: false
40
29
  requirements:
41
30
  - - =
@@ -43,7 +32,7 @@ dependencies:
43
32
  version: 3.4.0
44
33
  type: :development
45
34
  prerelease: false
46
- version_requirements: *70192629392700
35
+ version_requirements: *70272275062320
47
36
  description: Ruby port of Scala's Option Monad
48
37
  email:
49
38
  - rob.ares@gmail.com