Skip to content

Commit 8788950

Browse files
authored
Merge pull request #808 from pivotal-energy-solutions/feature/env-var-test-dirs
Support `OS_ERI_TEST_BASE_DIR` environment variable for test isolation
2 parents 9d7f612 + f455178 commit 8788950

8 files changed

Lines changed: 41 additions & 32 deletions

File tree

workflow/tests/es_denh_test.rb

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,12 @@
99

1010
class ESDENHTest < Minitest::Test
1111
def setup
12+
@test_base_dir = ENV['OS_ERI_TEST_BASE_DIR'] || File.dirname(__FILE__)
1213
@root_path = File.absolute_path(File.join(File.dirname(__FILE__), '..', '..'))
1314
@sample_files_path = File.join(@root_path, 'workflow', 'sample_files')
14-
@test_results_dir = File.join(File.dirname(__FILE__), 'test_results')
15+
@test_results_dir = File.join(@test_base_dir, 'test_results')
1516
FileUtils.mkdir_p @test_results_dir
16-
@test_files_dir = File.join(File.dirname(__FILE__), 'test_files')
17+
@test_files_dir = File.join(@test_base_dir, 'test_files')
1718
FileUtils.mkdir_p @test_files_dir
1819
end
1920

workflow/tests/real_homes_test.rb

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,10 @@
1313

1414
class RealHomesTest < Minitest::Test
1515
def setup
16-
@test_results_dir = File.join(File.dirname(__FILE__), 'test_results')
16+
@test_base_dir = ENV['OS_ERI_TEST_BASE_DIR'] || File.dirname(__FILE__)
17+
@test_results_dir = File.join(@test_base_dir, 'test_results')
1718
FileUtils.mkdir_p @test_results_dir
18-
@test_files_dir = File.join(File.dirname(__FILE__), 'test_files')
19+
@test_files_dir = File.join(@test_base_dir, 'test_files')
1920
FileUtils.mkdir_p @test_files_dir
2021
end
2122

@@ -26,7 +27,7 @@ def test_real_homes
2627

2728
# Run simulations
2829
all_results = {}
29-
xmldir = "#{File.dirname(__FILE__)}/../real_homes"
30+
xmldir = File.join(File.dirname(__FILE__), '..', 'real_homes')
3031
Dir["#{xmldir}/*.xml"].sort.each do |xml|
3132
rundir, _hpxmls, csvs = _run_workflow(xml, test_name, diagnostic_output: true)
3233
all_results[File.basename(xml)] = _get_csv_results([csvs[:eri_results],

workflow/tests/resnet_hers_test.rb

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,12 @@
1212

1313
class RESNETTest < Minitest::Test
1414
def setup
15-
@test_results_dir = File.join(File.dirname(__FILE__), 'test_results')
15+
@test_base_dir = ENV['OS_ERI_TEST_BASE_DIR'] || File.dirname(__FILE__)
16+
@test_results_dir = File.join(@test_base_dir, 'test_results')
1617
FileUtils.mkdir_p @test_results_dir
17-
@test_files_dir = File.join(File.dirname(__FILE__), 'test_files')
18+
@test_files_dir = File.join(@test_base_dir, 'test_files')
1819
FileUtils.mkdir_p @test_files_dir
20+
@resnet_tests_dir = File.join(@test_base_dir, 'RESNET_Tests')
1921
end
2022

2123
def test_resnet_ashrae_140
@@ -24,7 +26,7 @@ def test_resnet_ashrae_140
2426
File.delete(test_results_csv) if File.exist? test_results_csv
2527

2628
# Run simulations
27-
xmldir = File.join(File.dirname(__FILE__), 'RESNET_Tests/4.1_Standard_140')
29+
xmldir = File.join(@resnet_tests_dir, '4.1_Standard_140')
2830
all_results = {}
2931
Dir["#{xmldir}/*.xml"].sort.each do |xml|
3032
csv_path = _run_simulation(xml, test_name)
@@ -52,7 +54,7 @@ def test_resnet_ashrae_140
5254
def test_resnet_hers_reference_home_auto_generation
5355
version = '2022C' # Latest version that caused changes to results
5456
all_results = _test_resnet_hers_reference_home_auto_generation('RESNET_Test_4.2_HERS_AutoGen_Reference_Home',
55-
'RESNET_Tests/4.2_HERS_AutoGen_Reference_Home',
57+
'4.2_HERS_AutoGen_Reference_Home',
5658
version)
5759

5860
# Check results
@@ -65,7 +67,7 @@ def test_resnet_hers_reference_home_auto_generation
6567
def test_resnet_hers_method
6668
version = '2019A' # Latest version that caused changes to results
6769
all_results = _test_resnet_hers_method('RESNET_Test_4.3_HERS_Method',
68-
'RESNET_Tests/4.3_HERS_Method')
70+
'4.3_HERS_Method')
6971

7072
# Check results
7173
all_results.each do |xml, results|
@@ -80,7 +82,7 @@ def test_resnet_hvac
8082
File.delete(test_results_csv) if File.exist? test_results_csv
8183

8284
# Run simulations
83-
xmldir = File.join(File.dirname(__FILE__), 'RESNET_Tests/4.4_HVAC')
85+
xmldir = File.join(@resnet_tests_dir, '4.4_HVAC')
8486
all_results = {}
8587
Dir["#{xmldir}/*.xml"].sort.each do |xml|
8688
csv_path = _run_simulation(xml, test_name)
@@ -112,7 +114,7 @@ def test_resnet_dse
112114
File.delete(test_results_csv) if File.exist? test_results_csv
113115

114116
# Run simulations
115-
xmldir = File.join(File.dirname(__FILE__), 'RESNET_Tests/4.5_DSE')
117+
xmldir = File.join(@resnet_tests_dir, '4.5_DSE')
116118
all_results = {}
117119
Dir["#{xmldir}/*.xml"].sort.each do |xml|
118120
csv_path = _run_simulation(xml, test_name)
@@ -142,7 +144,7 @@ def test_resnet_hot_water
142144

143145
# Run simulations
144146
all_results = {}
145-
xmldir = File.join(File.dirname(__FILE__), 'RESNET_Tests/4.6_Hot_Water')
147+
xmldir = File.join(@resnet_tests_dir, '4.6_Hot_Water')
146148
Dir["#{xmldir}/*.xml"].sort.each do |xml|
147149
csv_path = _run_simulation(xml, test_name)
148150

workflow/tests/resnet_other_test.rb

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,18 @@
1212

1313
class RESNETOtherTest < Minitest::Test
1414
def setup
15-
@test_results_dir = File.join(File.dirname(__FILE__), 'test_results')
15+
@test_base_dir = ENV['OS_ERI_TEST_BASE_DIR'] || File.dirname(__FILE__)
16+
@test_results_dir = File.join(@test_base_dir, 'test_results')
1617
FileUtils.mkdir_p @test_results_dir
17-
@test_files_dir = File.join(File.dirname(__FILE__), 'test_files')
18+
@test_files_dir = File.join(@test_base_dir, 'test_files')
1819
FileUtils.mkdir_p @test_files_dir
20+
@resnet_tests_dir = File.join(@test_base_dir, 'RESNET_Tests')
1921
end
2022

2123
def test_resnet_hers_reference_home_auto_generation_301_2019_pre_addendum_a
2224
version = '2019'
2325
all_results = _test_resnet_hers_reference_home_auto_generation('RESNET_Test_Other_HERS_AutoGen_Reference_Home_301_2019_PreAddendumA',
24-
'RESNET_Tests/Other_HERS_AutoGen_Reference_Home_301_2019_PreAddendumA',
26+
'Other_HERS_AutoGen_Reference_Home_301_2019_PreAddendumA',
2527
version)
2628

2729
# Check results
@@ -35,7 +37,7 @@ def test_resnet_hers_reference_home_auto_generation_301_2014
3537
# Older test w/ 301-2014 mechanical ventilation acceptance criteria
3638
version = '2014'
3739
all_results = _test_resnet_hers_reference_home_auto_generation('RESNET_Test_Other_HERS_AutoGen_Reference_Home_301_2014',
38-
'RESNET_Tests/Other_HERS_AutoGen_Reference_Home_301_2014',
40+
'Other_HERS_AutoGen_Reference_Home_301_2014',
3941
version)
4042

4143
# Check results
@@ -52,7 +54,7 @@ def test_resnet_hers_iad_home_auto_generation
5254

5355
# Run simulations
5456
all_results = {}
55-
xmldir = File.join(File.dirname(__FILE__), 'RESNET_Tests/Other_HERS_AutoGen_IAD_Home')
57+
xmldir = File.join(@resnet_tests_dir, 'Other_HERS_AutoGen_IAD_Home')
5658
Dir["#{xmldir}/*.xml"].sort.each do |xml|
5759
_rundir, hpxmls, _csvs = _run_workflow(xml, test_name, skip_simulation: true)
5860
test_num = File.basename(xml)[0, 2].to_i
@@ -87,7 +89,7 @@ def test_resnet_hers_iad_home_auto_generation
8789

8890
def test_resnet_hers_method_301_2019_pre_addendum_a
8991
all_results = _test_resnet_hers_method('RESNET_Test_Other_HERS_Method_301_2019_PreAddendumA',
90-
'RESNET_Tests/Other_HERS_Method_301_2019_PreAddendumA')
92+
'Other_HERS_Method_301_2019_PreAddendumA')
9193

9294
# Check results
9395
all_results.each do |xml, results|
@@ -99,7 +101,7 @@ def test_resnet_hers_method_301_2019_pre_addendum_a
99101
def test_resnet_hers_method_301_2014_pre_addendum_e
100102
# Tests before 301-2019 Addendum E (IAF) was in place
101103
all_results = _test_resnet_hers_method('RESNET_Test_Other_HERS_Method_301_2014_PreAddendumE',
102-
'RESNET_Tests/Other_HERS_Method_301_2014_PreAddendumE')
104+
'Other_HERS_Method_301_2014_PreAddendumE')
103105

104106
# Check results
105107
all_results.each do |xml, results|
@@ -116,7 +118,7 @@ def test_resnet_hot_water_301_2019_pre_addendum_a
116118

117119
# Run simulations
118120
all_results = {}
119-
xmldir = File.join(File.dirname(__FILE__), 'RESNET_Tests/Other_Hot_Water_301_2019_PreAddendumA')
121+
xmldir = File.join(@resnet_tests_dir, 'Other_Hot_Water_301_2019_PreAddendumA')
120122
Dir["#{xmldir}/*.xml"].sort.each do |xml|
121123
csv_path = _run_simulation(xml, test_name)
122124

@@ -140,7 +142,7 @@ def test_resnet_hot_water_301_2014_pre_addendum_a
140142

141143
# Run simulations
142144
all_results = {}
143-
xmldir = File.join(File.dirname(__FILE__), 'RESNET_Tests/Other_Hot_Water_301_2014_PreAddendumA')
145+
xmldir = File.join(@resnet_tests_dir, 'Other_Hot_Water_301_2014_PreAddendumA')
144146
Dir["#{xmldir}/*.xml"].sort.each do |xml|
145147
csv_path = _run_simulation(xml, test_name)
146148

workflow/tests/sample_files1_test.rb

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,10 @@
1313

1414
class SampleFilesTest1 < Minitest::Test
1515
def setup
16-
@test_results_dir = File.join(File.dirname(__FILE__), 'test_results')
16+
@test_base_dir = ENV['OS_ERI_TEST_BASE_DIR'] || File.dirname(__FILE__)
17+
@test_results_dir = File.join(@test_base_dir, 'test_results')
1718
FileUtils.mkdir_p @test_results_dir
18-
@test_files_dir = File.join(File.dirname(__FILE__), 'test_files')
19+
@test_files_dir = File.join(@test_base_dir, 'test_files')
1920
FileUtils.mkdir_p @test_files_dir
2021
end
2122

@@ -27,7 +28,7 @@ def test_sample_files
2728
# Run simulations
2829
files = 'base*.xml'
2930
all_results = {}
30-
xmldir = "#{File.dirname(__FILE__)}/../sample_files"
31+
xmldir = File.join(File.dirname(__FILE__), '..', 'sample_files')
3132
Dir["#{xmldir}/#{files}"].sort.each do |xml|
3233
break if xml.include? 'base-hvac-air-to-air-heat-pump-1-speed.xml' # Run first half of the sample files
3334

workflow/tests/sample_files2_test.rb

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,10 @@
1313

1414
class SampleFilesTest1 < Minitest::Test
1515
def setup
16-
@test_results_dir = File.join(File.dirname(__FILE__), 'test_results')
16+
@test_base_dir = ENV['OS_ERI_TEST_BASE_DIR'] || File.dirname(__FILE__)
17+
@test_results_dir = File.join(@test_base_dir, 'test_results')
1718
FileUtils.mkdir_p @test_results_dir
18-
@test_files_dir = File.join(File.dirname(__FILE__), 'test_files')
19+
@test_files_dir = File.join(@test_base_dir, 'test_files')
1920
FileUtils.mkdir_p @test_files_dir
2021
end
2122

@@ -27,7 +28,7 @@ def test_sample_files
2728
# Run simulations
2829
files = 'base*.xml'
2930
all_results = {}
30-
xmldir = "#{File.dirname(__FILE__)}/../sample_files"
31+
xmldir = File.join(File.dirname(__FILE__), '..', 'sample_files')
3132
start = false
3233
Dir["#{xmldir}/#{files}"].sort.each do |xml|
3334
start = true if xml.include? 'base-hvac-air-to-air-heat-pump-1-speed.xml'

workflow/tests/util.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -321,7 +321,7 @@ def _test_resnet_hers_reference_home_auto_generation(test_name, dir_name, versio
321321

322322
# Run simulations
323323
all_results = {}
324-
xmldir = File.join(File.dirname(__FILE__), dir_name)
324+
xmldir = File.join(@resnet_tests_dir, dir_name)
325325
Dir["#{xmldir}/*.xml"].sort.each do |xml|
326326
_rundir, hpxmls, _csvs = _run_workflow(xml, test_name, skip_simulation: true)
327327

@@ -391,7 +391,7 @@ def _test_resnet_hers_method(test_name, dir_name)
391391

392392
# Run simulations
393393
all_results = {}
394-
xmldir = File.join(File.dirname(__FILE__), dir_name)
394+
xmldir = File.join(@resnet_tests_dir, dir_name)
395395
Dir["#{xmldir}/*.xml"].sort.each do |xml|
396396
_rundir, _hpxmls, csvs = _run_workflow(xml, test_name)
397397
results = _get_csv_results([csvs[:eri_results]])

workflow/tests/workflow_test.rb

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@
88

99
class WorkflowTest < Minitest::Test
1010
def setup
11-
@test_results_dir = File.join(File.dirname(__FILE__), 'test_results')
11+
@test_base_dir = ENV['OS_ERI_TEST_BASE_DIR'] || File.dirname(__FILE__)
12+
@test_results_dir = File.join(@test_base_dir, 'test_results')
1213
FileUtils.mkdir_p @test_results_dir
13-
@test_files_dir = File.join(File.dirname(__FILE__), 'test_files')
14+
@test_files_dir = File.join(@test_base_dir, 'test_files')
1415
FileUtils.mkdir_p @test_files_dir
1516
end
1617

0 commit comments

Comments
 (0)