fuel_purchase 0.0.8 → 0.0.9
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.
@@ -1,11 +1,81 @@
|
|
1
1
|
Feature: Fuel Purchase Committee Calculations
|
2
2
|
The fuel purchase model should generate correct committee calculations
|
3
3
|
|
4
|
-
Scenario Outline:
|
5
|
-
Given a fuel purchase
|
6
|
-
And
|
7
|
-
When
|
4
|
+
Scenario Outline: State comittee
|
5
|
+
Given a fuel purchase emitter
|
6
|
+
And a characteristic "zip_code.name" of "<zip>"
|
7
|
+
When the "state" committee is calculated
|
8
|
+
Then the conclusion of the committee should have "postal_abbreviation" of "<state>"
|
9
|
+
Examples:
|
10
|
+
| zip | state |
|
11
|
+
| 48915 | MI |
|
12
|
+
| 20191 | VA |
|
13
|
+
|
14
|
+
Scenario Outline: Petroleum Administration for Defense District comittee from state
|
15
|
+
Given a fuel purchase emitter
|
16
|
+
And a characteristic "zip_code.name" of "<zip>"
|
17
|
+
When the "state" committee is calculated
|
18
|
+
And the "petroleum_administration_for_defense_district" committee is calculated
|
19
|
+
Then the conclusion of the committee should have "district_name" of "<district>"
|
20
|
+
And the conclusion of the committee should have "subdistrict_name" of "<subdistrict>"
|
21
|
+
Examples:
|
22
|
+
| zip | district | subdistrict |
|
23
|
+
| 48915 | Midwest | |
|
24
|
+
| 20191 | East Coast | Lower Atlantic |
|
25
|
+
|
26
|
+
Scenario Outline: Price committee from fuel type
|
27
|
+
Given a fuel purchase emitter
|
28
|
+
And a characteristic "fuel_type.name" of "<fuel_type>"
|
29
|
+
When the "price" committee is calculated
|
30
|
+
Then the conclusion of the committee should be "<price>"
|
31
|
+
Examples:
|
32
|
+
| fuel_type | price |
|
33
|
+
| Industrial Coking Coal | 0.1302 |
|
34
|
+
| Residential Natural Gas | 0.4227 |
|
35
|
+
| Kerosene | 0.7059 |
|
36
|
+
| Conventional Motor Gasoline | 0.4922 |
|
37
|
+
|
38
|
+
Scenario Outline: Volume comittee from cost and price
|
39
|
+
Given a fuel purchase emitter
|
40
|
+
And a characteristic "cost" of "<cost>"
|
41
|
+
And a characteristic "price" of "<price>"
|
42
|
+
When the "volume" committee is calculated
|
8
43
|
Then the volume committee should be close to <volume>, +/-1
|
9
44
|
Examples:
|
10
45
|
| cost | price | volume |
|
11
|
-
|
|
46
|
+
| 12.0 | 3.0 | 4.0 |
|
47
|
+
| 0.0 | 1.0 | 0.0 |
|
48
|
+
|
49
|
+
Scenario Outline: Volume comittee from fuel type
|
50
|
+
Given a fuel purchase emitter
|
51
|
+
And a characteristic "fuel_type.name" of "<fuel>"
|
52
|
+
When the "volume" committee is calculated
|
53
|
+
Then the volume committee should be close to <volume>, +/-1
|
54
|
+
Examples:
|
55
|
+
| fuel | volume |
|
56
|
+
| Residential Natural Gas | 6221.98 |
|
57
|
+
|
58
|
+
Scenario Outline: Volume comittee from default
|
59
|
+
Given a fuel purchase emitter
|
60
|
+
When the "volume" committee is calculated
|
61
|
+
Then the volume committee should be close to <volume>, +/-1
|
62
|
+
Examples:
|
63
|
+
| volume |
|
64
|
+
| 100 |
|
65
|
+
|
66
|
+
Scenario Outline: Emission factor committee from fuel type
|
67
|
+
Given a fuel purchase emitter
|
68
|
+
And a characteristic "fuel_type.name" of "<fuel_type>"
|
69
|
+
When the "emission_factor" committee is calculated
|
70
|
+
Then the conclusion of the committee should be "<factor>"
|
71
|
+
Examples:
|
72
|
+
| fuel_type | factor |
|
73
|
+
| Industrial Coking Coal | 2.720 |
|
74
|
+
| Residential Natural Gas | 1.923 |
|
75
|
+
| Kerosene | 2.681 |
|
76
|
+
| Conventional Motor Gasoline | 2.358 |
|
77
|
+
|
78
|
+
Scenario: Emission factor committee from default
|
79
|
+
Given a fuel purchase emitter
|
80
|
+
When the "emission_factor" committee is calculated
|
81
|
+
Then the conclusion of the committee should be "1.0"
|
@@ -1,12 +1,19 @@
|
|
1
1
|
Feature: Fuel Purchase Emissions Calculations
|
2
2
|
The fuel purchase model should generate correct emission calculations
|
3
3
|
|
4
|
-
Scenario Outline: Standard Calculations for fuel purchase classes
|
5
|
-
Given a fuel purchase has "
|
6
|
-
And it has "
|
4
|
+
Scenario Outline: Standard Calculations for fuel purchase classes from fuel type and cost
|
5
|
+
Given a fuel purchase has "fuel_type.name" of "<fuel_type>"
|
6
|
+
And it has "cost" of "<cost>"
|
7
7
|
When emissions are calculated
|
8
8
|
Then the emission value should be within 0.1 kgs of <emission>
|
9
9
|
Examples:
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
| fuel_type | cost | emission |
|
11
|
+
| Industrial Coking Coal | 100.0 | 2089.1 |
|
12
|
+
| Residential Natural Gas | 100.0 | 454.9 |
|
13
|
+
| Kerosene | 100.0 | 379.8 |
|
14
|
+
| Conventional Motor Gasoline | 100.0 | 479.1 |
|
15
|
+
|
16
|
+
Scenario: Default fuel purchase emission
|
17
|
+
Given a fuel purchase has "emission" of ""
|
18
|
+
When emissions are calculated
|
19
|
+
Then the emission value should be within 0.1 kgs of 100
|
data/features/support/env.rb
CHANGED
@@ -5,4 +5,4 @@ require 'cucumber'
|
|
5
5
|
require 'cucumber/formatter/unicode'
|
6
6
|
|
7
7
|
require 'sniff'
|
8
|
-
Sniff.init File.join(File.dirname(__FILE__), '..', '..'), :earth => [:fuel, :locality]
|
8
|
+
Sniff.init File.join(File.dirname(__FILE__), '..', '..'), :earth => [:fuel, :locality], :cucumber => true
|
@@ -30,7 +30,7 @@ module BrighterPlanet
|
|
30
30
|
committee :volume do
|
31
31
|
quorum 'from cost and price', :needs => [:cost, :price] do |characteristics|
|
32
32
|
# dollars dollars / variable unit FIXME TODO should we make prices $ / kJ to avoid unit mismatches?
|
33
|
-
characteristics[:cost]
|
33
|
+
characteristics[:cost] / characteristics[:price]
|
34
34
|
end
|
35
35
|
|
36
36
|
quorum 'from fuel type', :needs => :fuel_type do |characteristics|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fuel_purchase
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 13
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 9
|
10
|
+
version: 0.0.9
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Andy Rossmeissl
|
@@ -19,7 +19,7 @@ autorequire:
|
|
19
19
|
bindir: bin
|
20
20
|
cert_chain: []
|
21
21
|
|
22
|
-
date: 2010-08-
|
22
|
+
date: 2010-08-17 00:00:00 -04:00
|
23
23
|
default_executable:
|
24
24
|
dependencies:
|
25
25
|
- !ruby/object:Gem::Dependency
|
@@ -144,12 +144,12 @@ dependencies:
|
|
144
144
|
requirements:
|
145
145
|
- - "="
|
146
146
|
- !ruby/object:Gem::Version
|
147
|
-
hash:
|
147
|
+
hash: 21
|
148
148
|
segments:
|
149
149
|
- 0
|
150
|
-
-
|
151
|
-
-
|
152
|
-
version: 0.
|
150
|
+
- 1
|
151
|
+
- 7
|
152
|
+
version: 0.1.7
|
153
153
|
requirement: *id008
|
154
154
|
- !ruby/object:Gem::Dependency
|
155
155
|
type: :runtime
|