sniff 0.10.1 → 0.11.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.markdown +5 -5
- data/lib/sniff.rb +1 -1
- data/lib/sniff/database.rb +2 -2
- data/lib/sniff/rake_tasks.rb +5 -5
- data/lib/sniff/version.rb +1 -1
- data/lib/test_support/cucumber/step_definitions/committee_steps.rb +2 -2
- data/lib/test_support/cucumber/step_definitions/{carbon_steps.rb → impact_steps.rb} +9 -9
- data/spec/fixtures/dirigible/lib/dirigible/data.rb +2 -3
- data/spec/fixtures/dirigible/lib/dirigible/{carbon_model.rb → impact_model.rb} +3 -3
- metadata +47 -45
data/README.markdown
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
Development environment for Brighter Planet "emitter" libraries.
|
3
3
|
|
4
4
|
## Background
|
5
|
-
Brighter Planet's
|
5
|
+
Brighter Planet's impact models, such as [`flight`](http://github.com/brighterplanet/flight), inhabit a complex production runtime environment backing the [CM1 web service](http://carbon.brighterplanet.com). Sniff simulates this environment, including representative data, fixtures, and other supporting code, so that developers can test improvements to the emitters before submitting them back to Brighter Planet.
|
6
6
|
|
7
7
|
### Caution
|
8
8
|
The data and other supporting information in the sniff environment is only representative of production data and in many cases is purely fictional, contrived to return predictable results in tests. Emission estimates and other information gleaned from execution within this environment will undoubtedly be--to put it simply--wrong. For real numbers, always use live queries to [CM1](http://carbon.brighterplanet.com).
|
@@ -32,7 +32,7 @@ At the command prompt, do:
|
|
32
32
|
#=> <ZipCode id="...>
|
33
33
|
|
34
34
|
## The emitter
|
35
|
-
An *emitter* is a software model of a real-world
|
35
|
+
An *emitter* is a software model of a real-world impact source, like a flight. Brighter Planet's emitter libraries each comprise an impact model, an attribute curation policy, a persistence schema, and a summarization strategy.
|
36
36
|
|
37
37
|
### Persistence schema
|
38
38
|
Although the production environment does not persist emitter instances, we nevertheless define emitter schemas to ease ActiveRecord assocations. An emitter's schema is defined in `lib/*emitter_name*/data.rb` within an emitter library. For example, here is [flight's schema](http://github.com/brighterplanet/flight/blob/master/lib/flight/data.rb).
|
@@ -40,12 +40,12 @@ Although the production environment does not persist emitter instances, we never
|
|
40
40
|
Schema are defined using a DSL provided by the [data_miner](http://github.com/seamusabshere/data_miner) library.
|
41
41
|
|
42
42
|
### Attribute curation policy
|
43
|
-
This defines how an emitter's attributes (initialized and stored with respect to the schema) are curated and decorated into a snapshot for later use by the
|
43
|
+
This defines how an emitter's attributes (initialized and stored with respect to the schema) are curated and decorated into a snapshot for later use by the impact model. The policy is defined in `lib/*emitter_name*/characterization.rb` within an emitter library. For example, here is [flight's characterization](http://github.com/brighterplanet/flight/blob/master/lib/flight/characterization.rb).
|
44
44
|
|
45
45
|
Characterizations are defined using a DSL provided by the [characterizable](http://github.com/seamusabshere/characterizable) library.
|
46
46
|
|
47
|
-
###
|
48
|
-
An
|
47
|
+
### Impact model
|
48
|
+
An impact estimate is obtained by giving an emitter's curated characteristics as input to an execution of its impact model. The model is defined in `lib/*emitter_name*/characterization.rb` within an emitter library. For example, here is [flight's impact model](http://github.com/brighterplanet/flight/blob/master/lib/flight/impact_model.rb).
|
49
49
|
|
50
50
|
Carbon models are defined using a DSL provided by the [leap](http://github.com/rossmeissl/leap) library.
|
51
51
|
|
data/lib/sniff.rb
CHANGED
data/lib/sniff/database.rb
CHANGED
@@ -100,7 +100,7 @@ module Sniff
|
|
100
100
|
end
|
101
101
|
|
102
102
|
def create_emitter_table
|
103
|
-
emitter_class.
|
103
|
+
emitter_class.auto_upgrade! if emitter_class
|
104
104
|
end
|
105
105
|
|
106
106
|
def read_fixtures
|
@@ -122,7 +122,7 @@ module Sniff
|
|
122
122
|
fixture_file = File.join(fixtures_path, table_name + '.csv')
|
123
123
|
if File.exist? fixture_file
|
124
124
|
log "Loading fixture #{fixture_file}"
|
125
|
-
Fixtures.create_fixtures(fixtures_path, table_name, resource => table_name)
|
125
|
+
ActiveRecord::Fixtures.create_fixtures(fixtures_path, table_name, resource => table_name)
|
126
126
|
end
|
127
127
|
end
|
128
128
|
end
|
data/lib/sniff/rake_tasks.rb
CHANGED
@@ -74,10 +74,10 @@ module Sniff
|
|
74
74
|
|
75
75
|
directory 'docs/'
|
76
76
|
|
77
|
-
Rocco::make 'docs/', "lib/#{gemname}/
|
77
|
+
Rocco::make 'docs/', "lib/#{gemname}/impact_model.rb"
|
78
78
|
|
79
79
|
task :google_analyzed_rocco => ['docs/', :rocco] do
|
80
|
-
source = File.read "docs/lib/#{gemname}/
|
80
|
+
source = File.read "docs/lib/#{gemname}/impact_model.html"
|
81
81
|
unless source =~ /_gaq/
|
82
82
|
source.sub! '</head>', <<-HTML
|
83
83
|
<script type="text/javascript">
|
@@ -111,7 +111,7 @@ module Sniff
|
|
111
111
|
</style>
|
112
112
|
</head>
|
113
113
|
HTML
|
114
|
-
File.open "docs/lib/#{gemname}/
|
114
|
+
File.open "docs/lib/#{gemname}/impact_model.html", 'w' do |f|
|
115
115
|
f.puts source
|
116
116
|
end
|
117
117
|
end
|
@@ -120,10 +120,10 @@ module Sniff
|
|
120
120
|
desc 'Update rocco docs on gh-pages branch'
|
121
121
|
task :pages => ['pages:sync', :google_analyzed_rocco] do
|
122
122
|
rev = `git rev-parse --short HEAD`.strip
|
123
|
-
html = File.read "docs/lib/#{gemname}/
|
123
|
+
html = File.read "docs/lib/#{gemname}/impact_model.html"
|
124
124
|
|
125
125
|
puts `git checkout gh-pages`
|
126
|
-
File.open '
|
126
|
+
File.open 'impact_model.html', 'w' do |f|
|
127
127
|
f.puts html
|
128
128
|
end
|
129
129
|
|
data/lib/sniff/version.rb
CHANGED
@@ -8,9 +8,9 @@ def bless_characteristics(characteristics)
|
|
8
8
|
end
|
9
9
|
end
|
10
10
|
|
11
|
-
When /^the "(.*)" committee
|
11
|
+
When /^the "(.*)" committee reports$/ do |committee_name|
|
12
12
|
@expectations.map(&:call)
|
13
|
-
@decision ||= @activity.decisions[:
|
13
|
+
@decision ||= @activity.decisions[:impact]
|
14
14
|
@committee = @decision.committees.find { |c| c.name.to_s == committee_name }
|
15
15
|
args = [bless_characteristics(@characteristics)]
|
16
16
|
if @timeframe
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'time'
|
2
2
|
require 'timeframe'
|
3
3
|
|
4
|
-
Given %r{^an? (
|
4
|
+
Given %r{^an? (\w+)( impact)?$} do |name, _|
|
5
5
|
name = name.gsub(/\s+/,'_').camelize + 'Record'
|
6
6
|
@activity = name.constantize
|
7
7
|
@characteristics = {}
|
@@ -51,19 +51,19 @@ Given /^it has "(.+)" of "(.*)"$/ do |field, value|
|
|
51
51
|
Given %Q{characteristic "#{field}" of "#{value}"}
|
52
52
|
end
|
53
53
|
|
54
|
-
When /^
|
54
|
+
When /^impacts are calculated$/ do
|
55
55
|
@expectations.map(&:call)
|
56
56
|
Timecop.travel(@current_date || Time.now) do
|
57
57
|
@timeframe ||= Timeframe.this_year
|
58
58
|
@activity_instance = @activity.new @characteristics
|
59
|
-
@
|
59
|
+
@impact = @activity_instance.impact @timeframe
|
60
60
|
end
|
61
|
-
@characteristics = @activity_instance.deliberations[:
|
61
|
+
@characteristics = @activity_instance.deliberations[:impact].characteristics
|
62
62
|
end
|
63
63
|
|
64
|
-
Then /^the
|
65
|
-
@
|
66
|
-
@
|
64
|
+
Then /^the amount of "(.*)" should be within "([\d\.]+)" kgs of "([\d\.]+)"$/ do |substance, cusion, target|
|
65
|
+
@impact.should_not be_nil
|
66
|
+
@impact[substance.to_sym].should be_within(cusion.to_f).of(target.to_f)
|
67
67
|
end
|
68
68
|
|
69
69
|
Then /^the calculation should have used committees "(.*)"$/ do |committee_list|
|
@@ -75,7 +75,7 @@ end
|
|
75
75
|
|
76
76
|
Then /^the calculation should comply with standards? "(.*)"$/ do |standard_list|
|
77
77
|
standards = Set.new standard_list.split(/,\s*/).map(&:to_sym)
|
78
|
-
compliance = Set.new @activity_instance.deliberations[:
|
78
|
+
compliance = Set.new @activity_instance.deliberations[:impact].compliance
|
79
79
|
unless standards.empty?
|
80
80
|
compliance.should_not be_empty, 'Expected calculation to comply with some standards, but it complied with none'
|
81
81
|
end
|
@@ -85,7 +85,7 @@ end
|
|
85
85
|
|
86
86
|
Then /^the calculation should not comply with standards? "(.*)"$/ do |standard_list|
|
87
87
|
standards = Set.new standard_list.split(/,\s*/).map(&:to_sym)
|
88
|
-
compliance = Set.new @activity_instance.deliberations[:
|
88
|
+
compliance = Set.new @activity_instance.deliberations[:impact].compliance
|
89
89
|
unless compliance.empty?
|
90
90
|
diff_list = (standards - compliance) # s - c = set of anything in s that is not in c
|
91
91
|
diff_list.should be(standards), "Calculation should not have complied with #{(standards - diff_list).to_a.inspect}"
|
@@ -2,9 +2,8 @@ module BrighterPlanet
|
|
2
2
|
module Dirigible
|
3
3
|
module Data
|
4
4
|
def self.included(base)
|
5
|
-
base.
|
6
|
-
|
7
|
-
float 'annual_distance_estimate'
|
5
|
+
base.col :fuel_efficiency, :type => :float
|
6
|
+
base.col :annual_distance_estimate, :type => :float
|
8
7
|
end
|
9
8
|
end
|
10
9
|
end
|
@@ -1,9 +1,9 @@
|
|
1
1
|
module BrighterPlanet
|
2
2
|
module Dirigible
|
3
|
-
module
|
3
|
+
module ImpactModel
|
4
4
|
def self.included(base)
|
5
|
-
base.decide :
|
6
|
-
committee :
|
5
|
+
base.decide :impact, :with => :characteristics do
|
6
|
+
committee :carbon do # returns kg CO2
|
7
7
|
quorum 'default' do
|
8
8
|
100.0
|
9
9
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sniff
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.11.0
|
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: 2011-10-
|
12
|
+
date: 2011-10-10 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|
16
|
-
requirement: &
|
16
|
+
requirement: &2159026840 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '3'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2159026840
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: aaronh-chronic
|
27
|
-
requirement: &
|
27
|
+
requirement: &2159025840 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 0.3.9
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2159025840
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: bueller
|
38
|
-
requirement: &
|
38
|
+
requirement: &2159024900 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 0.0.5
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2159024900
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
|
-
name:
|
49
|
-
requirement: &
|
48
|
+
name: mini_record-compat
|
49
|
+
requirement: &2159024520 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2159024520
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: cucumber
|
60
|
-
requirement: &
|
60
|
+
requirement: &2159024060 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2159024060
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: earth
|
71
|
-
requirement: &
|
71
|
+
requirement: &2159023520 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 0.4.5
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *2159023520
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: rake
|
82
|
-
requirement: &
|
82
|
+
requirement: &2159022960 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
version: 0.9.0
|
88
88
|
type: :runtime
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *2159022960
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: rcov
|
93
|
-
requirement: &
|
93
|
+
requirement: &2159022560 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ! '>='
|
@@ -98,10 +98,10 @@ dependencies:
|
|
98
98
|
version: '0'
|
99
99
|
type: :runtime
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *2159022560
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: rdoc
|
104
|
-
requirement: &
|
104
|
+
requirement: &2159022100 !ruby/object:Gem::Requirement
|
105
105
|
none: false
|
106
106
|
requirements:
|
107
107
|
- - ! '>='
|
@@ -109,10 +109,10 @@ dependencies:
|
|
109
109
|
version: '0'
|
110
110
|
type: :runtime
|
111
111
|
prerelease: false
|
112
|
-
version_requirements: *
|
112
|
+
version_requirements: *2159022100
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
114
|
name: dkastner-rocco
|
115
|
-
requirement: &
|
115
|
+
requirement: &2159021640 !ruby/object:Gem::Requirement
|
116
116
|
none: false
|
117
117
|
requirements:
|
118
118
|
- - ! '>='
|
@@ -120,10 +120,10 @@ dependencies:
|
|
120
120
|
version: '0'
|
121
121
|
type: :runtime
|
122
122
|
prerelease: false
|
123
|
-
version_requirements: *
|
123
|
+
version_requirements: *2159021640
|
124
124
|
- !ruby/object:Gem::Dependency
|
125
125
|
name: rspec
|
126
|
-
requirement: &
|
126
|
+
requirement: &2159021140 !ruby/object:Gem::Requirement
|
127
127
|
none: false
|
128
128
|
requirements:
|
129
129
|
- - ~>
|
@@ -131,10 +131,10 @@ dependencies:
|
|
131
131
|
version: '2'
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
|
-
version_requirements: *
|
134
|
+
version_requirements: *2159021140
|
135
135
|
- !ruby/object:Gem::Dependency
|
136
136
|
name: simplecov
|
137
|
-
requirement: &
|
137
|
+
requirement: &2159020720 !ruby/object:Gem::Requirement
|
138
138
|
none: false
|
139
139
|
requirements:
|
140
140
|
- - ! '>='
|
@@ -142,10 +142,10 @@ dependencies:
|
|
142
142
|
version: '0'
|
143
143
|
type: :runtime
|
144
144
|
prerelease: false
|
145
|
-
version_requirements: *
|
145
|
+
version_requirements: *2159020720
|
146
146
|
- !ruby/object:Gem::Dependency
|
147
147
|
name: sqlite3-ruby
|
148
|
-
requirement: &
|
148
|
+
requirement: &2159020180 !ruby/object:Gem::Requirement
|
149
149
|
none: false
|
150
150
|
requirements:
|
151
151
|
- - ! '>='
|
@@ -153,10 +153,10 @@ dependencies:
|
|
153
153
|
version: 1.3.0
|
154
154
|
type: :runtime
|
155
155
|
prerelease: false
|
156
|
-
version_requirements: *
|
156
|
+
version_requirements: *2159020180
|
157
157
|
- !ruby/object:Gem::Dependency
|
158
158
|
name: timecop
|
159
|
-
requirement: &
|
159
|
+
requirement: &2159019260 !ruby/object:Gem::Requirement
|
160
160
|
none: false
|
161
161
|
requirements:
|
162
162
|
- - ! '>='
|
@@ -164,10 +164,10 @@ dependencies:
|
|
164
164
|
version: '0'
|
165
165
|
type: :runtime
|
166
166
|
prerelease: false
|
167
|
-
version_requirements: *
|
167
|
+
version_requirements: *2159019260
|
168
168
|
- !ruby/object:Gem::Dependency
|
169
169
|
name: timeframe
|
170
|
-
requirement: &
|
170
|
+
requirement: &2159016400 !ruby/object:Gem::Requirement
|
171
171
|
none: false
|
172
172
|
requirements:
|
173
173
|
- - ! '>='
|
@@ -175,10 +175,10 @@ dependencies:
|
|
175
175
|
version: 0.0.8
|
176
176
|
type: :runtime
|
177
177
|
prerelease: false
|
178
|
-
version_requirements: *
|
178
|
+
version_requirements: *2159016400
|
179
179
|
- !ruby/object:Gem::Dependency
|
180
180
|
name: watchr
|
181
|
-
requirement: &
|
181
|
+
requirement: &2159014620 !ruby/object:Gem::Requirement
|
182
182
|
none: false
|
183
183
|
requirements:
|
184
184
|
- - ! '>='
|
@@ -186,10 +186,10 @@ dependencies:
|
|
186
186
|
version: '0'
|
187
187
|
type: :runtime
|
188
188
|
prerelease: false
|
189
|
-
version_requirements: *
|
189
|
+
version_requirements: *2159014620
|
190
190
|
- !ruby/object:Gem::Dependency
|
191
191
|
name: sandbox
|
192
|
-
requirement: &
|
192
|
+
requirement: &2159013680 !ruby/object:Gem::Requirement
|
193
193
|
none: false
|
194
194
|
requirements:
|
195
195
|
- - ! '>='
|
@@ -197,10 +197,10 @@ dependencies:
|
|
197
197
|
version: '0'
|
198
198
|
type: :development
|
199
199
|
prerelease: false
|
200
|
-
version_requirements: *
|
200
|
+
version_requirements: *2159013680
|
201
201
|
- !ruby/object:Gem::Dependency
|
202
202
|
name: emitter
|
203
|
-
requirement: &
|
203
|
+
requirement: &2159010700 !ruby/object:Gem::Requirement
|
204
204
|
none: false
|
205
205
|
requirements:
|
206
206
|
- - ! '>='
|
@@ -208,8 +208,9 @@ dependencies:
|
|
208
208
|
version: 0.5.0
|
209
209
|
type: :development
|
210
210
|
prerelease: false
|
211
|
-
version_requirements: *
|
212
|
-
description: Provides development and test environment for
|
211
|
+
version_requirements: *2159010700
|
212
|
+
description: Provides development and test environment for Brighter Planet's impact
|
213
|
+
model libraries.
|
213
214
|
email: derek.kastner@brighterplanet.com
|
214
215
|
executables: []
|
215
216
|
extensions: []
|
@@ -222,8 +223,8 @@ files:
|
|
222
223
|
- lib/sniff/version.rb
|
223
224
|
- lib/sniff/watcher.rb
|
224
225
|
- lib/sniff.rb
|
225
|
-
- lib/test_support/cucumber/step_definitions/carbon_steps.rb
|
226
226
|
- lib/test_support/cucumber/step_definitions/committee_steps.rb
|
227
|
+
- lib/test_support/cucumber/step_definitions/impact_steps.rb
|
227
228
|
- lib/test_support/cucumber/step_definitions/leap_steps.rb
|
228
229
|
- lib/test_support/cucumber/step_definitions/temporal_steps.rb
|
229
230
|
- lib/test_support/cucumber/support/values.rb
|
@@ -250,10 +251,10 @@ files:
|
|
250
251
|
- spec/fixtures/dirigible/features/support/db/fixtures/automobile_size_classes.csv
|
251
252
|
- spec/fixtures/dirigible/features/support/db/fixtures/automobile_variants.csv
|
252
253
|
- spec/fixtures/dirigible/features/support/dirigible_record.rb
|
253
|
-
- spec/fixtures/dirigible/lib/dirigible/carbon_model.rb
|
254
254
|
- spec/fixtures/dirigible/lib/dirigible/characterization.rb
|
255
255
|
- spec/fixtures/dirigible/lib/dirigible/data.rb
|
256
256
|
- spec/fixtures/dirigible/lib/dirigible/fallback.rb
|
257
|
+
- spec/fixtures/dirigible/lib/dirigible/impact_model.rb
|
257
258
|
- spec/fixtures/dirigible/lib/dirigible/relationships.rb
|
258
259
|
- spec/fixtures/dirigible/lib/dirigible/summarization.rb
|
259
260
|
- spec/fixtures/dirigible/lib/dirigible.rb
|
@@ -277,7 +278,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
277
278
|
version: '0'
|
278
279
|
segments:
|
279
280
|
- 0
|
280
|
-
hash:
|
281
|
+
hash: 2886137388542734836
|
281
282
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
282
283
|
none: false
|
283
284
|
requirements:
|
@@ -289,7 +290,8 @@ rubyforge_project:
|
|
289
290
|
rubygems_version: 1.8.5
|
290
291
|
signing_key:
|
291
292
|
specification_version: 3
|
292
|
-
summary:
|
293
|
+
summary: Provides development and test environment for Brighter Planet's impact model
|
294
|
+
libraries.
|
293
295
|
test_files:
|
294
296
|
- spec/db/emitter_data.sqlite3
|
295
297
|
- spec/db/schema_output
|
@@ -302,10 +304,10 @@ test_files:
|
|
302
304
|
- spec/fixtures/dirigible/features/support/db/fixtures/automobile_size_classes.csv
|
303
305
|
- spec/fixtures/dirigible/features/support/db/fixtures/automobile_variants.csv
|
304
306
|
- spec/fixtures/dirigible/features/support/dirigible_record.rb
|
305
|
-
- spec/fixtures/dirigible/lib/dirigible/carbon_model.rb
|
306
307
|
- spec/fixtures/dirigible/lib/dirigible/characterization.rb
|
307
308
|
- spec/fixtures/dirigible/lib/dirigible/data.rb
|
308
309
|
- spec/fixtures/dirigible/lib/dirigible/fallback.rb
|
310
|
+
- spec/fixtures/dirigible/lib/dirigible/impact_model.rb
|
309
311
|
- spec/fixtures/dirigible/lib/dirigible/relationships.rb
|
310
312
|
- spec/fixtures/dirigible/lib/dirigible/summarization.rb
|
311
313
|
- spec/fixtures/dirigible/lib/dirigible.rb
|