leap 0.4.3 → 0.4.4

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.
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source :rubygems
2
+
3
+ gemspec :path => '.'
@@ -0,0 +1,26 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ leap (0.4.3)
5
+ activesupport (>= 3.0.0.beta2)
6
+ blockenspiel (>= 0.3.2)
7
+
8
+ GEM
9
+ remote: http://rubygems.org/
10
+ specs:
11
+ activesupport (3.0.1)
12
+ blockenspiel (0.4.1)
13
+ characterizable (0.0.17)
14
+ activesupport (>= 2.3.5)
15
+ blockenspiel (>= 0.3.2)
16
+ shoulda (2.11.3)
17
+
18
+ PLATFORMS
19
+ ruby
20
+
21
+ DEPENDENCIES
22
+ activesupport (>= 3.0.0.beta2)
23
+ blockenspiel (>= 0.3.2)
24
+ characterizable (>= 0.0.11)
25
+ leap!
26
+ shoulda
data/Rakefile CHANGED
@@ -10,10 +10,12 @@ begin
10
10
  gem.email = "andy@rossmeissl.net"
11
11
  gem.homepage = "http://github.com/rossmeissl/leap"
12
12
  gem.authors = ["Andy Rossmeissl", "Seamus Abshere"]
13
- gem.add_development_dependency "shoulda", ">= 0"
14
13
  gem.add_development_dependency "characterizable", ">=0.0.11"
14
+ gem.add_development_dependency "shoulda", ">= 0"
15
+ gem.add_development_dependency "jeweler", ">= 0"
15
16
  gem.add_dependency 'blockenspiel', '>=0.3.2'
16
- gem.add_dependency 'activesupport', '>=3.0.0.beta2'
17
+ gem.add_dependency 'activesupport', '~> 3.0.0'
18
+ gem.add_dependency 'builder', '~> 2.1.2'
17
19
  end
18
20
  Jeweler::GemcutterTasks.new
19
21
  rescue LoadError
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.3
1
+ 0.4.4
@@ -1,71 +1,86 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in rakefile, and run the gemspec command
4
- # -*- encoding: utf-8 -*-
5
-
6
- Gem::Specification.new do |s|
7
- s.name = %q{leap}
8
- s.version = "0.4.3"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Andy Rossmeissl", "Seamus Abshere"]
12
- s.date = %q{2010-08-12}
13
- s.description = %q{Leap to conclusions}
14
- s.email = %q{andy@rossmeissl.net}
15
- s.extra_rdoc_files = [
16
- "LICENSE",
17
- "README.rdoc"
18
- ]
19
- s.files = [
20
- ".document",
21
- ".gitignore",
22
- "LICENSE",
23
- "README.rdoc",
24
- "Rakefile",
25
- "VERSION",
26
- "leap.gemspec",
27
- "lib/leap.rb",
28
- "lib/leap/committee.rb",
29
- "lib/leap/core_ext.rb",
30
- "lib/leap/decision.rb",
31
- "lib/leap/deliberation.rb",
32
- "lib/leap/implicit_attributes.rb",
33
- "lib/leap/quorum.rb",
34
- "lib/leap/report.rb",
35
- "lib/leap/subject.rb",
36
- "test/helper.rb",
37
- "test/test_leap.rb"
38
- ]
39
- s.homepage = %q{http://github.com/rossmeissl/leap}
40
- s.rdoc_options = ["--charset=UTF-8"]
41
- s.require_paths = ["lib"]
42
- s.rubygems_version = %q{1.3.6}
43
- s.summary = %q{A heuristics engine for your Ruby objects}
44
- s.test_files = [
45
- "test/helper.rb",
46
- "test/test_leap.rb"
47
- ]
48
-
49
- if s.respond_to? :specification_version then
50
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
51
- s.specification_version = 3
52
-
53
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
54
- s.add_development_dependency(%q<shoulda>, [">= 0"])
55
- s.add_development_dependency(%q<characterizable>, [">= 0.0.11"])
56
- s.add_runtime_dependency(%q<blockenspiel>, [">= 0.3.2"])
57
- s.add_runtime_dependency(%q<activesupport>, [">= 3.0.0.beta2"])
58
- else
59
- s.add_dependency(%q<shoulda>, [">= 0"])
60
- s.add_dependency(%q<characterizable>, [">= 0.0.11"])
61
- s.add_dependency(%q<blockenspiel>, [">= 0.3.2"])
62
- s.add_dependency(%q<activesupport>, [">= 3.0.0.beta2"])
63
- end
64
- else
65
- s.add_dependency(%q<shoulda>, [">= 0"])
66
- s.add_dependency(%q<characterizable>, [">= 0.0.11"])
67
- s.add_dependency(%q<blockenspiel>, [">= 0.3.2"])
68
- s.add_dependency(%q<activesupport>, [">= 3.0.0.beta2"])
69
- end
70
- end
71
-
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{leap}
8
+ s.version = "0.4.4"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Andy Rossmeissl", "Seamus Abshere"]
12
+ s.date = %q{2010-10-28}
13
+ s.description = %q{Leap to conclusions}
14
+ s.email = %q{andy@rossmeissl.net}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".gitignore",
22
+ "Gemfile",
23
+ "Gemfile.lock",
24
+ "LICENSE",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "leap.gemspec",
29
+ "lib/leap.rb",
30
+ "lib/leap/committee.rb",
31
+ "lib/leap/core_ext.rb",
32
+ "lib/leap/decision.rb",
33
+ "lib/leap/deliberation.rb",
34
+ "lib/leap/implicit_attributes.rb",
35
+ "lib/leap/quorum.rb",
36
+ "lib/leap/report.rb",
37
+ "lib/leap/subject.rb",
38
+ "lib/leap/xml_serializer.rb",
39
+ "test/helper.rb",
40
+ "test/leap/test_committee.rb",
41
+ "test/leap/test_quorum.rb",
42
+ "test/leap/test_report.rb",
43
+ "test/test_leap.rb"
44
+ ]
45
+ s.homepage = %q{http://github.com/rossmeissl/leap}
46
+ s.rdoc_options = ["--charset=UTF-8"]
47
+ s.require_paths = ["lib"]
48
+ s.rubygems_version = %q{1.3.7}
49
+ s.summary = %q{A heuristics engine for your Ruby objects}
50
+ s.test_files = [
51
+ "test/leap/test_report.rb",
52
+ "test/leap/test_committee.rb",
53
+ "test/leap/test_quorum.rb",
54
+ "test/test_leap.rb",
55
+ "test/helper.rb"
56
+ ]
57
+
58
+ if s.respond_to? :specification_version then
59
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
60
+ s.specification_version = 3
61
+
62
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
63
+ s.add_development_dependency(%q<characterizable>, [">= 0.0.11"])
64
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
65
+ s.add_development_dependency(%q<jeweler>, [">= 0"])
66
+ s.add_runtime_dependency(%q<blockenspiel>, [">= 0.3.2"])
67
+ s.add_runtime_dependency(%q<activesupport>, ["~> 3.0.0"])
68
+ s.add_runtime_dependency(%q<builder>, ["~> 2.1.2"])
69
+ else
70
+ s.add_dependency(%q<characterizable>, [">= 0.0.11"])
71
+ s.add_dependency(%q<shoulda>, [">= 0"])
72
+ s.add_dependency(%q<jeweler>, [">= 0"])
73
+ s.add_dependency(%q<blockenspiel>, [">= 0.3.2"])
74
+ s.add_dependency(%q<activesupport>, ["~> 3.0.0"])
75
+ s.add_dependency(%q<builder>, ["~> 2.1.2"])
76
+ end
77
+ else
78
+ s.add_dependency(%q<characterizable>, [">= 0.0.11"])
79
+ s.add_dependency(%q<shoulda>, [">= 0"])
80
+ s.add_dependency(%q<jeweler>, [">= 0"])
81
+ s.add_dependency(%q<blockenspiel>, [">= 0.3.2"])
82
+ s.add_dependency(%q<activesupport>, ["~> 3.0.0"])
83
+ s.add_dependency(%q<builder>, ["~> 2.1.2"])
84
+ end
85
+ end
86
+
@@ -9,6 +9,7 @@ end if ActiveSupport::VERSION::MAJOR == 3
9
9
  require 'blockenspiel'
10
10
 
11
11
  require 'leap/core_ext'
12
+ require 'leap/xml_serializer'
12
13
  require 'leap/subject'
13
14
  require 'leap/committee'
14
15
  require 'leap/quorum'
@@ -23,4 +24,4 @@ module Leap
23
24
  end
24
25
 
25
26
  class NoSolutionError < ArgumentError; end
26
- end
27
+ end
@@ -1,5 +1,7 @@
1
1
  module Leap
2
2
  class Committee
3
+ include XmlSerializer
4
+
3
5
  attr_reader :name, :quorums
4
6
 
5
7
  def initialize(name)
@@ -15,6 +17,22 @@ module Leap
15
17
  end
16
18
  end
17
19
  end
20
+
21
+ def as_json(*)
22
+ {
23
+ 'name' => name.to_s,
24
+ 'quorums' => quorums.map(&:as_json)
25
+ }
26
+ end
27
+
28
+ def to_xml(options = {})
29
+ super options do |xml|
30
+ xml.committee do |committee_block|
31
+ committee_block.name name.to_s, :type => 'string'
32
+ array_to_xml(committee_block, :quorums, quorums)
33
+ end
34
+ end
35
+ end
18
36
 
19
37
  include ::Blockenspiel::DSL
20
38
  def quorum(name, options = {}, &blk)
@@ -1,7 +1,7 @@
1
1
  module Leap
2
2
  module ImplicitAttributes
3
3
  def _leap_implicit_attributes
4
- Hash[*instance_variables.map { |variable| variable.delete('@').to_sym }.zip(instance_variables.map { |variable| instance_variable_get variable }).flatten]
4
+ Hash[*instance_variables.map { |variable| variable.to_s.delete('@').to_sym }.zip(instance_variables.map { |variable| instance_variable_get variable }).flatten]
5
5
  end
6
6
  end
7
7
  end
@@ -1,5 +1,7 @@
1
1
  module Leap
2
2
  class Quorum
3
+ include XmlSerializer
4
+
3
5
  attr_reader :name, :requirements, :supplements, :process, :compliance
4
6
  def initialize(name, options, blk)
5
7
  @name = name
@@ -25,5 +27,25 @@ module Leap
25
27
  def characteristics
26
28
  requirements + supplements
27
29
  end
30
+
31
+ def as_json(*)
32
+ {
33
+ 'name' => name.to_s,
34
+ 'requirements' => requirements.map(&:to_s),
35
+ 'appreciates' => supplements.map(&:to_s),
36
+ 'complies' => compliance.map(&:to_s)
37
+ }
38
+ end
39
+
40
+ def to_xml(options = {})
41
+ super options do |xml|
42
+ xml.quorum do |quorum_block|
43
+ quorum_block.name name.to_s, :type => 'string'
44
+ array_to_xml(quorum_block, :requirements, requirements)
45
+ array_to_xml(quorum_block, :appreciates, supplements, 'supplement')
46
+ array_to_xml(quorum_block, :complies, compliance, 'compliance')
47
+ end
48
+ end
49
+ end
28
50
  end
29
51
  end
@@ -1,5 +1,7 @@
1
1
  module Leap
2
2
  class Report
3
+ include XmlSerializer
4
+
3
5
  attr_reader :committee, :conclusion, :quorum
4
6
 
5
7
  def initialize(committee, report)
@@ -8,5 +10,23 @@ module Leap
8
10
  raise ArgumentError, 'Please report with quorum => conclusion' unless report.is_a?(Hash) and report.length == 1
9
11
  @quorum, @conclusion = report.first
10
12
  end
13
+
14
+ def as_json(*)
15
+ {
16
+ 'committee' => committee.as_json,
17
+ 'conclusion' => conclusion,
18
+ 'quorum' => quorum.as_json
19
+ }
20
+ end
21
+
22
+ def to_xml(options = {})
23
+ super options do |xml|
24
+ xml.report do |report_block|
25
+ committee.to_xml(options.merge :skip_instruct => true, :builder => report_block)
26
+ report_block.conclusion conclusion, :type => conclusion.class.to_s.downcase
27
+ quorum.to_xml(options.merge :skip_instruct => true, :builder => report_block)
28
+ end
29
+ end
30
+ end
11
31
  end
12
32
  end
@@ -0,0 +1,27 @@
1
+ require 'builder'
2
+ require 'active_support/inflector'
3
+
4
+ module Leap
5
+ module XmlSerializer
6
+ def to_xml(options = {})
7
+ options[:indent] ||= 2
8
+ xml = options[:builder] ||= Builder::XmlMarkup.new(options)
9
+ xml.instruct! unless options[:skip_instruct]
10
+ yield xml
11
+ xml.to_s
12
+ end
13
+
14
+ def array_to_xml(xml, name, array, singular_name = name.to_s.singularize)
15
+ xml.send name, :type => 'array' do |subblock|
16
+ array.each do |item|
17
+ if item.is_a? Symbol or !item.respond_to?(:to_xml)
18
+ item = item.to_s if item.is_a?(Symbol)
19
+ subblock.send singular_name, item, :type => 'string'
20
+ else
21
+ item.to_xml(:builder => subblock, :skip_instruct => true)
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,42 @@
1
+ require 'helper'
2
+
3
+ class Leap::CommitteeTest < Test::Unit::TestCase
4
+ context 'to_xml' do
5
+ should 'serialize to xml' do
6
+ committee = Leap::Committee.new 'Senate Committee on Chocolate Cookies'
7
+ committee.instance_variable_set :@quorums, [
8
+ Leap::Quorum.new('with chocolate chips', {}, Proc.new {}),
9
+ Leap::Quorum.new('with macadamia nuts', {}, Proc.new {})
10
+ ]
11
+
12
+ output = ''
13
+ committee.to_xml(:target => output)
14
+ assert_equal(<<XML, output)
15
+ <?xml version=\"1.0\" encoding=\"UTF-8\"?>
16
+ <committee>
17
+ <name type="string">Senate Committee on Chocolate Cookies</name>
18
+ <quorums type="array">
19
+ <quorum>
20
+ <name type="string">with chocolate chips</name>
21
+ <requirements type="array">
22
+ </requirements>
23
+ <appreciates type="array">
24
+ </appreciates>
25
+ <complies type="array">
26
+ </complies>
27
+ </quorum>
28
+ <quorum>
29
+ <name type="string">with macadamia nuts</name>
30
+ <requirements type="array">
31
+ </requirements>
32
+ <appreciates type="array">
33
+ </appreciates>
34
+ <complies type="array">
35
+ </complies>
36
+ </quorum>
37
+ </quorums>
38
+ </committee>
39
+ XML
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,31 @@
1
+ require 'helper'
2
+
3
+ class Leap::QuorumTest < Test::Unit::TestCase
4
+ context 'to_xml' do
5
+ should 'serialize to xml' do
6
+ quorum = Leap::Quorum.new(
7
+ 'roll call',
8
+ { :needs => :count, :complies => :rules_of_endearment, :appreciates => [:adulation, :confirmation] },
9
+ Proc.new {})
10
+
11
+ output = ''
12
+ quorum.to_xml(:target => output)
13
+ assert_equal(<<XML, output)
14
+ <?xml version=\"1.0\" encoding=\"UTF-8\"?>
15
+ <quorum>
16
+ <name type="string">roll call</name>
17
+ <requirements type="array">
18
+ <requirement type="string">count</requirement>
19
+ </requirements>
20
+ <appreciates type="array">
21
+ <supplement type="string">adulation</supplement>
22
+ <supplement type="string">confirmation</supplement>
23
+ </appreciates>
24
+ <complies type="array">
25
+ <compliance type="string">rules_of_endearment</compliance>
26
+ </complies>
27
+ </quorum>
28
+ XML
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,55 @@
1
+ require 'helper'
2
+
3
+ class Leap::ReportTest < Test::Unit::TestCase
4
+ context 'to_xml' do
5
+ should 'serialize to xml' do
6
+ choc = Leap::Quorum.new('with chocolate chips', {}, Proc.new {})
7
+ mac = Leap::Quorum.new('with macadamia nuts', {}, Proc.new {})
8
+ committee = Leap::Committee.new 'Senate Committee on Chocolate Cookies'
9
+ committee.instance_variable_set :@quorums, [choc, mac]
10
+
11
+ report = Leap::Report.new committee, choc => 'good'
12
+
13
+ output = ''
14
+ report.to_xml(:target => output)
15
+ assert_equal(<<XML, output)
16
+ <?xml version=\"1.0\" encoding=\"UTF-8\"?>
17
+ <report>
18
+ <committee>
19
+ <name type="string">Senate Committee on Chocolate Cookies</name>
20
+ <quorums type="array">
21
+ <quorum>
22
+ <name type="string">with chocolate chips</name>
23
+ <requirements type="array">
24
+ </requirements>
25
+ <appreciates type="array">
26
+ </appreciates>
27
+ <complies type="array">
28
+ </complies>
29
+ </quorum>
30
+ <quorum>
31
+ <name type="string">with macadamia nuts</name>
32
+ <requirements type="array">
33
+ </requirements>
34
+ <appreciates type="array">
35
+ </appreciates>
36
+ <complies type="array">
37
+ </complies>
38
+ </quorum>
39
+ </quorums>
40
+ </committee>
41
+ <conclusion type="string">good</conclusion>
42
+ <quorum>
43
+ <name type="string">with chocolate chips</name>
44
+ <requirements type="array">
45
+ </requirements>
46
+ <appreciates type="array">
47
+ </appreciates>
48
+ <complies type="array">
49
+ </complies>
50
+ </quorum>
51
+ </report>
52
+ XML
53
+ end
54
+ end
55
+ end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 4
8
- - 3
9
- version: 0.4.3
8
+ - 4
9
+ version: 0.4.4
10
10
  platform: ruby
11
11
  authors:
12
12
  - Andy Rossmeissl
@@ -15,39 +15,55 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-08-12 00:00:00 -05:00
18
+ date: 2010-10-28 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: shoulda
22
+ name: characterizable
23
23
  prerelease: false
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
25
26
  requirements:
26
27
  - - ">="
27
28
  - !ruby/object:Gem::Version
28
29
  segments:
29
30
  - 0
30
- version: "0"
31
+ - 0
32
+ - 11
33
+ version: 0.0.11
31
34
  type: :development
32
35
  version_requirements: *id001
33
36
  - !ruby/object:Gem::Dependency
34
- name: characterizable
37
+ name: shoulda
35
38
  prerelease: false
36
39
  requirement: &id002 !ruby/object:Gem::Requirement
40
+ none: false
37
41
  requirements:
38
42
  - - ">="
39
43
  - !ruby/object:Gem::Version
40
44
  segments:
41
45
  - 0
42
- - 0
43
- - 11
44
- version: 0.0.11
46
+ version: "0"
45
47
  type: :development
46
48
  version_requirements: *id002
47
49
  - !ruby/object:Gem::Dependency
48
- name: blockenspiel
50
+ name: jeweler
49
51
  prerelease: false
50
52
  requirement: &id003 !ruby/object:Gem::Requirement
53
+ none: false
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ segments:
58
+ - 0
59
+ version: "0"
60
+ type: :development
61
+ version_requirements: *id003
62
+ - !ruby/object:Gem::Dependency
63
+ name: blockenspiel
64
+ prerelease: false
65
+ requirement: &id004 !ruby/object:Gem::Requirement
66
+ none: false
51
67
  requirements:
52
68
  - - ">="
53
69
  - !ruby/object:Gem::Version
@@ -57,22 +73,37 @@ dependencies:
57
73
  - 2
58
74
  version: 0.3.2
59
75
  type: :runtime
60
- version_requirements: *id003
76
+ version_requirements: *id004
61
77
  - !ruby/object:Gem::Dependency
62
78
  name: activesupport
63
79
  prerelease: false
64
- requirement: &id004 !ruby/object:Gem::Requirement
80
+ requirement: &id005 !ruby/object:Gem::Requirement
81
+ none: false
65
82
  requirements:
66
- - - ">="
83
+ - - ~>
67
84
  - !ruby/object:Gem::Version
68
85
  segments:
69
86
  - 3
70
87
  - 0
71
88
  - 0
72
- - beta2
73
- version: 3.0.0.beta2
89
+ version: 3.0.0
74
90
  type: :runtime
75
- version_requirements: *id004
91
+ version_requirements: *id005
92
+ - !ruby/object:Gem::Dependency
93
+ name: builder
94
+ prerelease: false
95
+ requirement: &id006 !ruby/object:Gem::Requirement
96
+ none: false
97
+ requirements:
98
+ - - ~>
99
+ - !ruby/object:Gem::Version
100
+ segments:
101
+ - 2
102
+ - 1
103
+ - 2
104
+ version: 2.1.2
105
+ type: :runtime
106
+ version_requirements: *id006
76
107
  description: Leap to conclusions
77
108
  email: andy@rossmeissl.net
78
109
  executables: []
@@ -85,6 +116,8 @@ extra_rdoc_files:
85
116
  files:
86
117
  - .document
87
118
  - .gitignore
119
+ - Gemfile
120
+ - Gemfile.lock
88
121
  - LICENSE
89
122
  - README.rdoc
90
123
  - Rakefile
@@ -99,7 +132,11 @@ files:
99
132
  - lib/leap/quorum.rb
100
133
  - lib/leap/report.rb
101
134
  - lib/leap/subject.rb
135
+ - lib/leap/xml_serializer.rb
102
136
  - test/helper.rb
137
+ - test/leap/test_committee.rb
138
+ - test/leap/test_quorum.rb
139
+ - test/leap/test_report.rb
103
140
  - test/test_leap.rb
104
141
  has_rdoc: true
105
142
  homepage: http://github.com/rossmeissl/leap
@@ -111,6 +148,7 @@ rdoc_options:
111
148
  require_paths:
112
149
  - lib
113
150
  required_ruby_version: !ruby/object:Gem::Requirement
151
+ none: false
114
152
  requirements:
115
153
  - - ">="
116
154
  - !ruby/object:Gem::Version
@@ -118,6 +156,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
118
156
  - 0
119
157
  version: "0"
120
158
  required_rubygems_version: !ruby/object:Gem::Requirement
159
+ none: false
121
160
  requirements:
122
161
  - - ">="
123
162
  - !ruby/object:Gem::Version
@@ -127,10 +166,13 @@ required_rubygems_version: !ruby/object:Gem::Requirement
127
166
  requirements: []
128
167
 
129
168
  rubyforge_project:
130
- rubygems_version: 1.3.6
169
+ rubygems_version: 1.3.7
131
170
  signing_key:
132
171
  specification_version: 3
133
172
  summary: A heuristics engine for your Ruby objects
134
173
  test_files:
135
- - test/helper.rb
174
+ - test/leap/test_report.rb
175
+ - test/leap/test_committee.rb
176
+ - test/leap/test_quorum.rb
136
177
  - test/test_leap.rb
178
+ - test/helper.rb