lodging 0.0.12 → 0.0.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. data/.document +5 -0
  2. data/.gitignore +26 -0
  3. data/Gemfile +9 -0
  4. data/LICENSE-PREAMBLE +52 -0
  5. data/Rakefile +8 -0
  6. data/VERSION +1 -0
  7. data/certification_changelog.markdown +11 -0
  8. data/dot.rvmrc +9 -0
  9. data/features/lodging_committees.feature +356 -171
  10. data/features/lodging_impacts.feature +74 -0
  11. data/features/support/db/fixtures/census_divisions.csv +2 -0
  12. data/features/support/db/fixtures/climate_divisions.csv +2 -0
  13. data/features/support/db/fixtures/commercial_building_energy_consumption_survey_responses.csv +11 -0
  14. data/features/support/db/fixtures/countries.csv +4 -0
  15. data/features/support/db/fixtures/egrid_countries.csv +2 -0
  16. data/features/support/db/fixtures/egrid_regions.csv +2 -0
  17. data/features/support/db/fixtures/egrid_subregions.csv +3 -0
  18. data/features/support/db/fixtures/fuel_years.csv +2 -0
  19. data/features/support/db/fixtures/fuels.csv +4 -0
  20. data/features/support/db/fixtures/lodging_classes.csv +4 -0
  21. data/features/support/db/fixtures/lodging_properties.csv +5 -0
  22. data/features/support/db/fixtures/states.csv +2 -0
  23. data/features/support/db/fixtures/zip_codes.csv +4 -0
  24. data/features/support/env.rb +18 -1
  25. data/features/support/lodging_property.rb +26 -0
  26. data/{lib/test_support → features/support}/lodging_record.rb +1 -4
  27. data/lib/lodging.rb +1 -0
  28. data/lib/lodging/cbecs.rb +31 -0
  29. data/lib/lodging/characterization.rb +19 -3
  30. data/lib/lodging/data.rb +22 -8
  31. data/lib/lodging/impact_model.rb +544 -0
  32. data/lib/lodging/relationships.rb +3 -1
  33. data/lib/lodging/version.rb +5 -0
  34. data/lodging.gemspec +31 -0
  35. data/todo.txt +5 -0
  36. metadata +76 -119
  37. data/features/lodging_emissions.feature +0 -53
  38. data/lib/lodging/carbon_model.rb +0 -265
  39. data/lib/lodging/fallback.rb +0 -10
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
@@ -0,0 +1,26 @@
1
+ ## MAC OS
2
+ .DS_Store
3
+
4
+ ## TEXTMATE
5
+ *.tmproj
6
+ tmtags
7
+
8
+ ## EMACS
9
+ *~
10
+ \#*
11
+ .\#*
12
+
13
+ ## VIM
14
+ *.swp
15
+
16
+ ## DOCUMENTATION
17
+ docs
18
+
19
+ ## PROJECT::GENERAL
20
+ coverage
21
+ rdoc
22
+ pkg
23
+ log
24
+
25
+ ## PROJECT::SPECIFIC
26
+ Gemfile.lock
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ ENV.each do |name, value|
2
+ if /^LOCAL_(.+)/.match(name)
3
+ gem $1.downcase, :path => value
4
+ end
5
+ end
6
+
7
+ source :rubygems
8
+
9
+ gemspec :path => '.'
@@ -0,0 +1,52 @@
1
+ BRIGHTER PLANET ADDITIONAL PREAMBLE TO THE GNU AFFERO GENERAL PUBLIC LICENSE
2
+ January 7, 2011
3
+
4
+ This preamble is meant to help the licensee understand exactly what
5
+ software is being received under the license and set expectations as to
6
+ what is not covered.
7
+
8
+ IDENTITY OF THE SOFTWARE MODULE COVERED BY LICENSE:
9
+
10
+ This license covers the Brighter Planet carbon model referred to as
11
+ 'Lodging,' officially distributed from
12
+ https://github.com/brighterplanet/lodging.
13
+
14
+ SCOPE OF THE SOFTWARE MODULE COVERED BY LICENSE:
15
+
16
+ The scope of the license includes only those files included in the
17
+ official Brighter Planet distribution package for the particular carbon
18
+ model identified above, including only the carbon model execution files,
19
+ reference data classes, input characterization, fallbacks, summarization
20
+ helpers, tests, and test fixtures.
21
+
22
+ WHAT IS NOT COVERED BY LICENSE:
23
+
24
+ This license does not extend to the following:
25
+
26
+ * Any element of any Brighter Planet website, including but not
27
+ limited the copyrights, trademarks, graphic design, text,
28
+ documentation, method of interaction with clients, runtime
29
+ environment, technical infrastructure, and software code associated
30
+ therewith;
31
+
32
+ * Any element of any Brighter Planet website user interface, including
33
+ but not limited to the copyrights, trademarks, graphic design, text,
34
+ documentation, method of interaction with clients, runtime
35
+ environment, technical infrastructure, and software code associated
36
+ therewith;
37
+
38
+ * Any element of other software modules licensed under any form of
39
+ license including but not limited to other forms of open source
40
+ license, commercial license, and the like;
41
+
42
+ * Any element of any Brighter Planet Carbon Middleware web service,
43
+ including but not limited to the copyrights, trademarks, graphic
44
+ design, text, documentation, method of interaction with clients,
45
+ runtime environment, technical infrastructure, and software code, is
46
+ not covered by the license; and
47
+
48
+ * Any aspect or use of http://carbon.brighterplanet.com.
49
+
50
+ If you have any questions, please contact licensing@brighterplanet.com
51
+
52
+ Copyright 2010, 2011 Brighter Planet, Inc.
@@ -0,0 +1,8 @@
1
+ require 'bundler'
2
+ Bundler.setup
3
+
4
+ require 'sniff'
5
+ require 'sniff/rake_tasks'
6
+ Sniff::RakeTasks.define_tasks do |t|
7
+ t.earth_domains = [:hospitality, :fuel, :locality]
8
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.0.12
@@ -0,0 +1,11 @@
1
+ # Material changes
2
+
3
+ # Immaterial changes
4
+ Duration changed from nights to seconds (2874bea2f413418385409e9fec754b55cdc52e11)
5
+
6
+ # Latest 3rd-party review
7
+ f2055675984f46286d85619cab496d8266203503
8
+
9
+ - - -
10
+
11
+ **Certification only applies if using a certified version of Earth**
@@ -0,0 +1,9 @@
1
+ rvm 1.8.7
2
+ project=`basename \`pwd\``
3
+ if rvm gemset list | grep $project
4
+ then
5
+ rvm 1.8.7@$project
6
+ else
7
+ rvm gemset create $project
8
+ rvm gemset use $project
9
+ fi
@@ -1,200 +1,385 @@
1
1
  Feature: Lodging Committee Calculations
2
2
  The lodging model should generate correct committee calculations
3
3
 
4
+ Background:
5
+ Given a Lodging
6
+
7
+ Scenario: Date committee from timeframe
8
+ Given a characteristic "timeframe" of "2009-06-06/2010-01-01"
9
+ When the "date" committee reports
10
+ Then the committee should have used quorum "from timeframe"
11
+ And the conclusion of the committee should be "2009-06-06"
12
+ And the conclusion should comply with standards "ghg_protocol_scope_3, iso"
13
+
4
14
  Scenario: Rooms committee from default
5
- Given a lodging emitter
6
- When the "rooms" committee is calculated
15
+ When the "rooms" committee reports
7
16
  Then the committee should have used quorum "default"
8
- And the conclusion of the committee should be "1"
17
+ And the conclusion of the committee should be "1.0"
9
18
 
10
19
  Scenario: Duration committee from default
11
- Given a lodging emitter
12
- When the "duration" committee is calculated
20
+ When the "duration" committee reports
13
21
  Then the committee should have used quorum "default"
22
+ And the conclusion of the committee should be "86400"
23
+
24
+ Scenario: Room nights committee from default
25
+ Given a characteristic "timeframe" of "2009-06-06/2010-01-01"
26
+ When the "date" committee reports
27
+ And the "rooms" committee reports
28
+ And the "duration" committee reports
29
+ And the "room_nights" committee reports
30
+ Then the committee should have used quorum "from rooms, duration, date, and timeframe"
14
31
  And the conclusion of the committee should be "1"
15
32
 
33
+ Scenario Outline: Room nights committee from rooms, duration, date, and timeframe
34
+ Given characteristic "date" of "<date>"
35
+ And a characteristic "timeframe" of "<timeframe>"
36
+ And a characteristic "rooms" of "<rooms>"
37
+ And a characteristic "duration" of "<duration>"
38
+ When the "room_nights" committee reports
39
+ Then the committee should have used quorum "from rooms, duration, date, and timeframe"
40
+ And the conclusion of the committee should be "<room_nights>"
41
+ Examples:
42
+ | date | timeframe | rooms | duration | room_nights |
43
+ | 2009-01-15 | 2009-01-01/2009-02-01 | 2 | 172800 | 4 |
44
+ | 2009-02-15 | 2009-01-01/2009-02-01 | 2 | 172800 | 0 |
45
+
46
+ # Scenario: Zip code committee from postcode that is zip code
47
+ # Given a characteristic "postcode" of "94122"
48
+ # When the "zip_code" committee reports
49
+ # Then the committee should have used quorum "from postcode"
50
+ # And the conclusion of the committee should have "name" of "94122"
51
+ #
52
+ # Scenario: Zip code committee from postcode that is zip+4
53
+ # Given a characteristic "postcode" of "94122-1234"
54
+ # When the "zip_code" committee reports
55
+ # Then the committee should have used quorum "from postcode"
56
+ # And the conclusion of the committee should have "name" of "94122"
57
+ #
58
+ # Scenario: Zip code committee from postcode that is not zip code
59
+ # Given a characteristic "postcode" of "38000"
60
+ # When the "zip_code" committee reports
61
+ # Then the conclusion of the committee should be nil
62
+
63
+ Scenario: Climate division from zip code
64
+ Given a characteristic "zip_code.name" of "94122"
65
+ When the "climate_division" committee reports
66
+ Then the committee should have used quorum "from zip code"
67
+ And the conclusion of the committee should have "name" of "CA4"
68
+
69
+ Scenario: Climate division from zip code missing climate division
70
+ Given a characteristic "zip_code.name" of "94133"
71
+ When the "climate_division" committee reports
72
+ Then the conclusion of the committee should be nil
73
+
74
+ Scenario: City committee from zip code
75
+ Given a characteristic "zip_code.name" of "94122"
76
+ When the "city" committee reports
77
+ Then the committee should have used quorum "from zip code"
78
+ And the conclusion of the committee should be "San Francisco"
79
+
16
80
  Scenario: State committee from zip code
17
- Given a lodging emitter
18
- And a characteristic "zip_code.name" of "94122"
19
- When the "state" committee is calculated
81
+ Given a characteristic "zip_code.name" of "94122"
82
+ When the "state" committee reports
20
83
  Then the committee should have used quorum "from zip code"
21
84
  And the conclusion of the committee should have "postal_abbreviation" of "CA"
22
85
 
23
- Scenario: Census division committee from state
24
- Given a lodging emitter
25
- And a characteristic "state.postal_abbreviation" of "CA"
26
- When the "census_division" committee is calculated
86
+ Scenario: Country committee from state
87
+ Given a characteristic "state.postal_abbreviation" of "CA"
88
+ When the "country" committee reports
27
89
  Then the committee should have used quorum "from state"
28
- And the conclusion of the committee should have "number" of "9"
29
-
30
- Scenario: eGRID subregion from nothing
31
- Given a lodging emitter
32
- When the "egrid_subregion" committee is calculated
33
- Then the committee should have used quorum "default"
34
- And the conclusion of the committee should have "abbreviation" of "US"
90
+ And the conclusion of the committee should have "iso_3166_code" of "US"
35
91
 
36
92
  Scenario: eGRID subregion from zip code
37
- Given a lodging emitter
38
- And a characteristic "zip_code.name" of "94122"
39
- When the "egrid_subregion" committee is calculated
93
+ Given a characteristic "zip_code.name" of "94122"
94
+ When the "egrid_subregion" committee reports
40
95
  Then the committee should have used quorum "from zip code"
41
96
  And the conclusion of the committee should have "abbreviation" of "CAMX"
42
97
 
43
- Scenario: eGRID region from nothing
44
- Given a lodging emitter
45
- When the "egrid_subregion" committee is calculated
46
- And the "egrid_region" committee is calculated
47
- Then the committee should have used quorum "from eGRID subregion"
48
- And the conclusion of the committee should have "name" of "US"
98
+ Scenario: Cooling degree days committee from country
99
+ Given a characteristic "country.iso_3166_code" of "US"
100
+ When the "cooling_degree_days" committee reports
101
+ Then the committee should have used quorum "from country"
102
+ And the conclusion of the committee should be "880"
49
103
 
50
- Scenario: eGRID region from zip code
51
- Given a lodging emitter
52
- And a characteristic "zip_code.name" of "94122"
53
- When the "egrid_subregion" committee is calculated
54
- And the "egrid_region" committee is calculated
55
- Then the committee should have used quorum "from eGRID subregion"
56
- And the conclusion of the committee should have "name" of "W"
104
+ Scenario: Cooling degree days committee from climate division
105
+ Given a characteristic "climate_division.name" of "CA4"
106
+ When the "cooling_degree_days" committee reports
107
+ Then the committee should have used quorum "from climate division"
108
+ And the conclusion of the committee should be "150"
57
109
 
58
- Scenario: Lodging class committee from nothing
59
- Given a lodging emitter
60
- When the "lodging_class" committee is calculated
61
- Then the committee should have used quorum "default"
62
- And the conclusion of the committee should have "name" of "Average"
63
-
64
- Scenario: District heat intensity committee from nothing
65
- Given a lodging emitter
66
- When the "lodging_class" committee is calculated
67
- And the "district_heat_intensity" committee is calculated
68
- Then the committee should have used quorum "from lodging class"
69
- And the conclusion of the committee should be "10000000"
70
-
71
- Scenario: District heat intensity committee from lodging class
72
- Given a lodging emitter
73
- And a characteristic "lodging_class.name" of "Luxury Hotel"
74
- When the "district_heat_intensity" committee is calculated
75
- Then the committee should have used quorum "from lodging class"
76
- And the conclusion of the committee should be "20000000"
77
-
78
- Scenario: District heat intensity committee from census division
79
- Given a lodging emitter
80
- And a characteristic "census_division.number" of "9"
81
- When the "district_heat_intensity" committee is calculated
82
- Then the committee should have used quorum "from census division"
83
- And the conclusion of the committee should be "1000"
84
-
85
- Scenario: Electricity intensity committee from nothing
86
- Given a lodging emitter
87
- When the "lodging_class" committee is calculated
88
- And the "electricity_intensity" committee is calculated
89
- Then the committee should have used quorum "from lodging class"
90
- And the conclusion of the committee should be "5"
91
-
92
- Scenario: Electricity intensity committee from lodging class
93
- Given a lodging emitter
94
- And a characteristic "lodging_class.name" of "Luxury Hotel"
95
- When the "electricity_intensity" committee is calculated
96
- Then the committee should have used quorum "from lodging class"
97
- And the conclusion of the committee should be "10"
98
-
99
- Scenario: Electricity intensity committee from census division
100
- Given a lodging emitter
101
- And a characteristic "census_division.number" of "9"
102
- When the "electricity_intensity" committee is calculated
103
- Then the committee should have used quorum "from census division"
110
+ Scenario: Heating degree days committee from country
111
+ Given a characteristic "country.iso_3166_code" of "US"
112
+ When the "heating_degree_days" committee reports
113
+ Then the committee should have used quorum "from country"
114
+ And the conclusion of the committee should be "2200"
115
+
116
+ Scenario: Heating degree days committee from climate division
117
+ Given a characteristic "climate_division.name" of "CA4"
118
+ When the "heating_degree_days" committee reports
119
+ Then the committee should have used quorum "from climate division"
120
+ And the conclusion of the committee should be "1350"
121
+
122
+ Scenario: Floors
123
+ Given a characteristic "property.northstar_id" of "1"
124
+ When the "floors" committee reports
125
+ Then the committee should have used quorum "from property"
104
126
  And the conclusion of the committee should be "3"
105
127
 
106
- Scenario: Fuel oil intensity committee from nothing
107
- Given a lodging emitter
108
- When the "lodging_class" committee is calculated
109
- And the "fuel_oil_intensity" committee is calculated
110
- Then the committee should have used quorum "from lodging class"
128
+ Scenario: Construction year
129
+ Given a characteristic "property.northstar_id" of "1"
130
+ When the "construction_year" committee reports
131
+ Then the committee should have used quorum "from property"
132
+ And the conclusion of the committee should be "1993"
133
+
134
+ Scenario: AC coverage
135
+ Given a characteristic "property.northstar_id" of "1"
136
+ When the "ac_coverage" committee reports
137
+ Then the committee should have used quorum "from property"
111
138
  And the conclusion of the committee should be "0.5"
112
139
 
113
- Scenario: Fuel oil intensity committee from lodging class
114
- Given a lodging emitter
115
- And a characteristic "lodging_class.name" of "Luxury Hotel"
116
- When the "fuel_oil_intensity" committee is calculated
117
- Then the committee should have used quorum "from lodging class"
118
- And the conclusion of the committee should be "1"
140
+ Scenario Outline: Refrigerator coverage
141
+ Given a characteristic "property.northstar_id" of "<id>"
142
+ When the "refrigerator_coverage" committee reports
143
+ Then the committee should have used quorum "from property"
144
+ And the conclusion of the committee should be "<coverage>"
145
+ Examples:
146
+ | id | coverage |
147
+ | 1 | 0.6 |
148
+ | 2 | 0.5 |
149
+ | 3 | 0.5 |
150
+ | 4 | 0.6 |
119
151
 
120
- Scenario: Fuel oil intensity committee from census division
121
- Given a lodging emitter
122
- And a characteristic "census_division.number" of "9"
123
- When the "fuel_oil_intensity" committee is calculated
124
- Then the committee should have used quorum "from census division"
125
- And the conclusion of the committee should be "2"
126
-
127
- Scenario: Natural gas intensity committee from nothing
128
- Given a lodging emitter
129
- When the "lodging_class" committee is calculated
130
- And the "natural_gas_intensity" committee is calculated
131
- Then the committee should have used quorum "from lodging class"
132
- And the conclusion of the committee should be "1"
152
+ Scenario Outline: Hot tubs
153
+ Given a characteristic "property.hot_tubs" of "<tubs>"
154
+ When the "hot_tubs" committee reports
155
+ Then the committee should have used quorum "from property"
156
+ And the conclusion of the committee should be "<count>"
157
+ Examples:
158
+ | tubs | count |
159
+ | 0 | 0 |
160
+ | 1 | 1 |
161
+ | 6 | 6 |
133
162
 
134
- Scenario: Natural gas intensity committee from lodging class
135
- Given a lodging emitter
136
- And a characteristic "lodging_class.name" of "Luxury Hotel"
137
- When the "natural_gas_intensity" committee is calculated
138
- Then the committee should have used quorum "from lodging class"
139
- And the conclusion of the committee should be "2"
140
-
141
- Scenario: Natural gas intensity committee from census division
142
- Given a lodging emitter
143
- And a characteristic "census_division.number" of "9"
144
- When the "natural_gas_intensity" committee is calculated
145
- Then the committee should have used quorum "from census division"
146
- And the conclusion of the committee should be "1"
163
+ Scenario Outline: Indoor pools
164
+ Given a characteristic "property.pools_indoor" of "<pools>"
165
+ When the "indoor_pools" committee reports
166
+ Then the committee should have used quorum "from property"
167
+ And the conclusion of the committee should be "<count>"
168
+ Examples:
169
+ | pools | count |
170
+ | 0 | 0 |
171
+ | 1 | 1 |
172
+ | 5 | 5 |
173
+ | 6 | 5 |
174
+
175
+ Scenario Outline: Outdoor pools
176
+ Given a characteristic "property.pools_outdoor" of "<pools>"
177
+ When the "outdoor_pools" committee reports
178
+ Then the committee should have used quorum "from property"
179
+ And the conclusion of the committee should be "<count>"
180
+ Examples:
181
+ | pools | count |
182
+ | 0 | 0 |
183
+ | 1 | 1 |
184
+ | 5 | 5 |
185
+ | 6 | 5 |
186
+
187
+ Scenario Outline: Occupancy rate
188
+ Given a characteristic "country.iso_3166_code" of "<country>"
189
+ When the "occupancy_rate" committee reports
190
+ Then the committee should have used quorum "<quorum>"
191
+ And the conclusion of the committee should be "<rate>"
192
+ Examples:
193
+ | country | quorum | rate |
194
+ | US | from country | 0.6 |
195
+ | GB | from country | 0.5 |
196
+ | | default | 0.6 |
197
+
198
+ Scenario: Fuel intensities committee from default
199
+ When the "fuel_intensities" committee reports
200
+ Then the committee should have used quorum "default"
201
+ And the conclusion of the committee should include a key of "natural_gas" and value "2.0"
202
+ And the conclusion of the committee should include a key of "fuel_oil" and value "0.4"
203
+ And the conclusion of the committee should include a key of "electricity" and value "33.9"
204
+ And the conclusion of the committee should include a key of "district_heat" and value "1.8"
205
+
206
+ Scenario Outline: Fuel intensities committee should not run unless both hdd and cdd are present
207
+ Given a characteristic "<dd_characteristic>" of "500"
208
+ And a characteristic "occupancy_rate" of "0.6"
209
+ When the "fuel_intensities" committee reports
210
+ Then the committee should have used quorum "default"
211
+ Examples:
212
+ | dd_characteristic |
213
+ | heating_degree_days |
214
+ | cooling_degree_days |
215
+
216
+ Scenario Outline: Fuel intensities committee from fuzzy weighting
217
+ Given a characteristic "heating_degree_days" of "<hdd>"
218
+ And a characteristic "cooling_degree_days" of "<cdd>"
219
+ And a characteristic "property_rooms" of "<rooms>"
220
+ And a characteristic "floors" of "<floors>"
221
+ And a characteristic "construction_year" of "<year>"
222
+ And a characteristic "ac_coverage" of "<ac>"
223
+ When the "occupancy_rate" committee reports
224
+ And the "fuel_intensities" committee reports
225
+ Then the committee should have used quorum "from degree days, occupancy rate, and user inputs"
226
+ And the conclusion of the committee should include a key of "natural_gas" and value "<gas>"
227
+ And the conclusion of the committee should include a key of "fuel_oil" and value "<oil>"
228
+ And the conclusion of the committee should include a key of "electricity" and value "<elec>"
229
+ And the conclusion of the committee should include a key of "district_heat" and value "<steam>"
230
+ Examples:
231
+ | hdd | cdd | rooms | floors | year | ac | gas | oil | elec | steam | notes |
232
+ | 1350 | 150 | | | | | 1.10187 | 2.90728 | 31.32292 | 14.80000 | CA hdd/cdd |
233
+ | 1350 | 150 | 100 | | | | 0.85612 | 2.96930 | 28.21736 | 13.57824 | CA hdd/cdd |
234
+ | 1350 | 150 | | 3 | | | 0.83468 | 3.04853 | 27.88175 | 13.76680 | CA hdd/cdd |
235
+ | 1350 | 150 | | | 1993 | | 1.23045 | 0.77795 | 40.53607 | 4.15725 | CA hdd/cdd |
236
+ | 1350 | 150 | | | | 0.5 | 0.42758 | 1.12817 | 26.43368 | 5.74312 | CA hdd/cdd |
237
+ | 1350 | 150 | 100 | 3 | 1993 | 0.5 | 0.08723 | 0.13344 | 25.02442 | 0.76500 | CA hdd/cdd |
238
+ | 10000 | 0 | | | | | 0.23482 | 3.52029 | 22.33470 | 1.98967 | extreme hdd |
239
+ | 2200 | 880 | | | | | 0.96884 | 0.82078 | 44.47599 | 7.70066 | us hdd/cdd |
240
+ | 2200 | 880 | 25 | | | | 0.01922 | 0.91159 | 34.86144 | 0.37174 | |
241
+ | 0 | 4000 | | | | | 4.33735 | 0.65661 | 60.84568 | 63.33742 | extreme cdd |
242
+ | 1350 | 150 | 1 | | | | 0.77635 | 3.02573 | 27.72495 | 13.32596 | extreme rooms |
243
+ | 1350 | 150 | 5000 | | | | 1.82944 | 2.74889 | 38.73677 | 15.59486 | extreme rooms |
244
+ | 1350 | 150 | | 1 | | | 0.82413 | 3.14038 | 28.48186 | 13.77581 | extreme floors |
245
+ | 1350 | 150 | | 100 | | | 1.97743 | 2.57705 | 40.83635 | 19.22833 | extreme floors |
246
+ | 1350 | 150 | | | 1200 | | 0.86163 | 3.04800 | 27.19855 | 13.25471 | extreme year |
247
+ | 1350 | 150 | | | 2012 | | 1.25202 | 0.65488 | 41.13082 | 4.08640 | extreme year |
248
+ | 1350 | 150 | | | | 0.0 | 0.06504 | 4.59438 | 17.82449 | 0.87348 | extreme ac |
249
+ | 1350 | 150 | | | | 1.0 | 2.32907 | 1.29925 | 46.77370 | 31.28316 | extreme ac |
250
+
251
+ Scenario Outline: Refrigerator adjustment
252
+ Given a characteristic "refrigerator_coverage" of "<coverage>"
253
+ And a characteristic "occupancy_rate" of "0.6"
254
+ And the "refrigerator_adjustment" committee reports
255
+ Then the committee should have used quorum "from refrigerator coverage and occupancy rate"
256
+ And the conclusion of the committee should include a key of "electricity" and value "<adjustment>"
257
+ Examples:
258
+ | coverage | adjustment |
259
+ | 0 | -1.18 |
260
+ | 1 | 0.78667 |
261
+
262
+ Scenario Outline: Hot tub adjustment
263
+ Given a characteristic "hot_tubs" of "<hot_tubs>"
264
+ And a characteristic "property_rooms" of "10"
265
+ And a characteristic "occupancy_rate" of "0.6"
266
+ When the "hot_tub_adjustment" committee reports
267
+ Then the committee should have used quorum "from hot tubs, property rooms, and occupancy rate"
268
+ And the conclusion of the committee should include a key of "electricity" and value "<adjustment>"
269
+ Examples:
270
+ | hot_tubs | adjustment |
271
+ | 0 | -0.315 |
272
+ | 1 | 0.735 |
147
273
 
148
- Scenario: Emission factor committee from nothing
149
- Given a lodging emitter
150
- When the "egrid_subregion" committee is calculated
151
- And the "egrid_region" committee is calculated
152
- And the "lodging_class" committee is calculated
153
- And the "district_heat_intensity" committee is calculated
154
- And the "electricity_intensity" committee is calculated
155
- And the "fuel_oil_intensity" committee is calculated
156
- And the "natural_gas_intensity" committee is calculated
157
- And the "emission_factor" committee is calculated
158
- Then the committee should have used quorum "from fuel intensities and eGRID"
159
- And the conclusion of the committee should be "13.74496"
160
-
161
- Scenario: Emission factor committee from lodging class
162
- Given a lodging emitter
163
- And a characteristic "lodging_class.name" of "Luxury Hotel"
164
- When the "egrid_subregion" committee is calculated
165
- And the "egrid_region" committee is calculated
166
- And the "district_heat_intensity" committee is calculated
167
- And the "electricity_intensity" committee is calculated
168
- And the "fuel_oil_intensity" committee is calculated
169
- And the "natural_gas_intensity" committee is calculated
170
- And the "emission_factor" committee is calculated
171
- Then the committee should have used quorum "from fuel intensities and eGRID"
172
- And the conclusion of the committee should be "27.48991"
173
-
174
- Scenario: Emission factor committee from census division
175
- Given a lodging emitter
176
- And a characteristic "census_division.number" of "9"
177
- When the "egrid_subregion" committee is calculated
178
- And the "egrid_region" committee is calculated
179
- And the "district_heat_intensity" committee is calculated
180
- And the "electricity_intensity" committee is calculated
181
- And the "fuel_oil_intensity" committee is calculated
182
- And the "natural_gas_intensity" committee is calculated
183
- And the "emission_factor" committee is calculated
184
- Then the committee should have used quorum "from fuel intensities and eGRID"
185
- And the conclusion of the committee should be "10.00002"
186
-
187
- Scenario: Emission factor committee from zip code
188
- Given a lodging emitter
189
- And a characteristic "zip_code.name" of "94122"
190
- When the "state" committee is calculated
191
- And the "census_division" committee is calculated
192
- And the "egrid_subregion" committee is calculated
193
- And the "egrid_region" committee is calculated
194
- And the "district_heat_intensity" committee is calculated
195
- And the "electricity_intensity" committee is calculated
196
- And the "fuel_oil_intensity" committee is calculated
197
- And the "natural_gas_intensity" committee is calculated
198
- And the "emission_factor" committee is calculated
199
- Then the committee should have used quorum "from fuel intensities and eGRID"
200
- And the conclusion of the committee should be "5.83336"
274
+ Scenario Outline: Indoor pool adjustment
275
+ Given a characteristic "indoor_pools" of "<pools>"
276
+ And a characteristic "property_rooms" of "10"
277
+ And a characteristic "occupancy_rate" of "0.6"
278
+ When the "indoor_pool_adjustment" committee reports
279
+ Then the committee should have used quorum "from indoor pools, property rooms, and occupancy rate"
280
+ And the conclusion of the committee should include a key of "pool_energy" and value "<adjustment>"
281
+ Examples:
282
+ | pools | adjustment |
283
+ | 0 | -146.17493 |
284
+ | 1 | 341.07483 |
285
+ | 5 | 2290.07388 |
286
+
287
+ Scenario Outline: Outdoor pool adjustment
288
+ Given a characteristic "outdoor_pools" of "<pools>"
289
+ And a characteristic "property_rooms" of "10"
290
+ And a characteristic "occupancy_rate" of "0.6"
291
+ When the "outdoor_pool_adjustment" committee reports
292
+ Then the committee should have used quorum "from outdoor pools, property rooms, and occupancy rate"
293
+ And the conclusion of the committee should include a key of "pool_energy" and value "<adjustment>"
294
+ Examples:
295
+ | pools | adjustment |
296
+ | 0 | -34.80809 |
297
+ | 1 | 23.20539 |
298
+ | 5 | 255.25930 |
299
+
300
+ Scenario Outline: Adjusted fuel intensities committee from fuel intensities, pool adjustment, and refrigerator adjustment
301
+ Given a characteristic "heating_degree_days" of "2200"
302
+ And a characteristic "cooling_degree_days" of "880"
303
+ And a characteristic "property_rooms" of "25"
304
+ And a characteristic "occupancy_rate" of "0.6"
305
+ And a characteristic "refrigerator_coverage" of "<refrigerators>"
306
+ And a characteristic "hot_tubs" of "<tubs>"
307
+ And a characteristic "indoor_pools" of "<indoor_pools>"
308
+ And a characteristic "outdoor_pools" of "<outdoor_pools>"
309
+ When the "fuel_intensities" committee reports
310
+ And the "refrigerator_adjustment" committee reports
311
+ And the "hot_tub_adjustment" committee reports
312
+ And the "indoor_pool_adjustment" committee reports
313
+ And the "outdoor_pool_adjustment" committee reports
314
+ And the "adjusted_fuel_intensities" committee reports
315
+ Then the committee should have used quorum "from fuel intensities and amenity adjustments"
316
+ And the conclusion of the committee should include a key of "natural_gas" and value "<gas>"
317
+ And the conclusion of the committee should include a key of "fuel_oil" and value "<oil>"
318
+ And the conclusion of the committee should include a key of "electricity" and value "<elec>"
319
+ And the conclusion of the committee should include a key of "district_heat" and value "<steam>"
320
+ Examples:
321
+ | refrigerators | tubs | indoor_pools | outdoor_pools | gas | oil | elec | steam |
322
+ | | | | | 0.01922 | 0.91159 | 34.86144 | 0.37174 |
323
+ | 0 | | | | 0.01922 | 0.91159 | 33.68144 | 0.37174 |
324
+ | 1 | | | | 0.01922 | 0.91159 | 35.64811 | 0.37174 |
325
+ | | 0 | | | 0.01922 | 0.91159 | 34.73544 | 0.37174 |
326
+ | | 1 | | | 0.01922 | 0.91159 | 35.15544 | 0.37174 |
327
+ | | | 0 | | 0.0 | 0.0 | 34.86144 | 0.37174 |
328
+ | | | 1 | | 3.60948 | 0.91159 | 34.86144 | 0.37174 |
329
+ | | | | 0 | 0.0 | 0.59747 | 34.86144 | 0.37174 |
330
+ | | | | 1 | 0.26349 | 0.91159 | 34.86144 | 0.37174 |
331
+
332
+ Scenario: District heat use committee
333
+ Given a characteristic "room_nights" of "4"
334
+ When the "fuel_intensities" committee reports
335
+ And the "adjusted_fuel_intensities" committee reports
336
+ And the "district_heat_use" committee reports
337
+ Then the committee should have used quorum "from adjusted fuel intensities and room nights"
338
+ And the conclusion of the committee should be "7.2"
339
+
340
+ Scenario: Electricity use committee
341
+ Given a characteristic "room_nights" of "4"
342
+ When the "fuel_intensities" committee reports
343
+ And the "adjusted_fuel_intensities" committee reports
344
+ And the "electricity_use" committee reports
345
+ Then the committee should have used quorum "from adjusted fuel intensities and room nights"
346
+ And the conclusion of the committee should be "135.6"
347
+
348
+ Scenario: Fuel oil use committee
349
+ Given a characteristic "room_nights" of "4"
350
+ When the "fuel_intensities" committee reports
351
+ And the "adjusted_fuel_intensities" committee reports
352
+ And the "fuel_oil_use" committee reports
353
+ Then the committee should have used quorum "from adjusted fuel intensities and room nights"
354
+ And the conclusion of the committee should be "1.6"
355
+
356
+ Scenario: Natural gas use committee
357
+ Given a characteristic "room_nights" of "4"
358
+ When the "fuel_intensities" committee reports
359
+ And the "adjusted_fuel_intensities" committee reports
360
+ And the "natural_gas_use" committee reports
361
+ Then the committee should have used quorum "from adjusted fuel intensities and room nights"
362
+ And the conclusion of the committee should be "8.0"
363
+
364
+ Scenario: Electricity emission factor committee from default
365
+ When the "electricity_emission_factor" committee reports
366
+ Then the committee should have used quorum "default"
367
+ And the conclusion of the committee should be "0.69258"
368
+
369
+ Scenario: Electricity emission factor committee from country missing emission factor
370
+ Given a characteristic "country.iso_3166_code" of "VI"
371
+ When the "electricity_emission_factor" committee reports
372
+ Then the committee should have used quorum "default"
373
+ And the conclusion of the committee should be "0.69258"
374
+
375
+ Scenario: Electricity emission factor committee from country with emission factor
376
+ Given a characteristic "country.iso_3166_code" of "US"
377
+ When the "electricity_emission_factor" committee reports
378
+ Then the committee should have used quorum "from country"
379
+ And the conclusion of the committee should be "0.62783"
380
+
381
+ Scenario: Electricity emission factor committee from eGRID subregion
382
+ Given a characteristic "egrid_subregion.abbreviation" of "CAMX"
383
+ When the "electricity_emission_factor" committee reports
384
+ Then the committee should have used quorum "from eGRID subregion"
385
+ And the conclusion of the committee should be "0.32632"