venny 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.0
1
+ 1.0.1
@@ -26,7 +26,7 @@ class Set
26
26
  protected
27
27
  def recursive_cartesian_product(*enums)
28
28
  return Set.new([Set.new]) if enums.empty?
29
- raise ArgumentError, 'all arguments must be enumerable' unless enums.inject(true) { |acc, element| element.is_a? Enumerable }
29
+ raise ArgumentError, 'all arguments must be enumerable' unless enums.inject(true) { |acc, element| (acc || !element.is_a?(Enumerable)) }
30
30
  enums = enums.map { |element| element.to_a }.sort { |a, b| b.length <=> a.length }
31
31
  combos = Set.new
32
32
  enums.shift.each do |element|
data/spec/venny_spec.rb CHANGED
@@ -103,6 +103,10 @@ describe Set do
103
103
  -> { set.cartesian_product(1) }.should raise_error
104
104
  end
105
105
 
106
+ it 'should throw an error with any non-Enumerable argument' do
107
+ -> { set.cartesian_product([1,2,3],1,[:a,:b,:c]) }.should raise_error
108
+ end
109
+
106
110
  it 'should throw an error if no argument(s) are supplied' do
107
111
  -> { set.cartesian_product }.should raise_error
108
112
  end
data/venny.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{venny}
8
- s.version = "1.0.0"
8
+ s.version = "1.0.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jeremy Holland"]
12
- s.date = %q{2011-04-28}
12
+ s.date = %q{2011-04-29}
13
13
  s.description = %q{Extends the standard library Set object, adding methods for cartesian products, power sets, and complements}
14
14
  s.email = %q{jeremy@jeremypholland.com}
15
15
  s.extra_rdoc_files = [
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 1
7
7
  - 0
8
- - 0
9
- version: 1.0.0
8
+ - 1
9
+ version: 1.0.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - Jeremy Holland
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2011-04-28 00:00:00 -05:00
17
+ date: 2011-04-29 00:00:00 -05:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -113,7 +113,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
113
113
  requirements:
114
114
  - - ">="
115
115
  - !ruby/object:Gem::Version
116
- hash: -3201819793253962275
116
+ hash: -4231136223501847886
117
117
  segments:
118
118
  - 0
119
119
  version: "0"