first commit
This commit is contained in:
63
test/calculators/wind_pressure_calculator_test.py
Normal file
63
test/calculators/wind_pressure_calculator_test.py
Normal file
@@ -0,0 +1,63 @@
|
||||
import unittest
|
||||
from unittest.mock import MagicMock
|
||||
|
||||
from nose.tools import assert_almost_equal
|
||||
|
||||
from helix.calculators.wind_pressure_calculator import WindPressureCalculator
|
||||
from helix.constants.exposure_category import ExposureCategory
|
||||
|
||||
|
||||
class WindPressureCalculatorTest(unittest.TestCase):
|
||||
def setUp(self):
|
||||
self.values = MagicMock()
|
||||
self.values.wind_speed.return_value = 110
|
||||
self.values.exposure_category_transition_distance.return_value = 1000
|
||||
self.subject = WindPressureCalculator(self.values)
|
||||
|
||||
def test_kz_with_exposure_BC_and_roof_height_less_than_15_feet(self):
|
||||
assert_almost_equal(self.subject.calculate_k_z(12, ExposureCategory.B_C, 1000), 0.686, 3)
|
||||
|
||||
def test_kz_with_exposure_BC_and_roof_height_greater_than_15_feet(self):
|
||||
assert_almost_equal(self.subject.calculate_k_z(100, ExposureCategory.B_C, 1000), 1.023, 3)
|
||||
|
||||
def test_kz_with_exposure_CB_and_roof_height_less_than_30_feet(self):
|
||||
assert_almost_equal(self.subject.calculate_k_z(25, ExposureCategory.C_B, 1000), 0.856, 3)
|
||||
|
||||
def test_kz_with_exposure_CB_and_roof_height_greater_than_30_feet(self):
|
||||
assert_almost_equal(self.subject.calculate_k_z(100, ExposureCategory.C_B, 1000), 1.139, 3)
|
||||
|
||||
def test_qz_with_exposure_B_and_roof_height_greater_than_30_feet(self):
|
||||
self.values.building_height.return_value = 35
|
||||
self.values.exposure_category.return_value = ExposureCategory.B
|
||||
|
||||
assert_almost_equal(self.subject.q_z(self.subject.K_z()), 19.276, 2)
|
||||
|
||||
def test_qz_with_exposure_B_and_roof_height_less_than_30_feet(self):
|
||||
self.values.building_height.return_value = 12
|
||||
self.values.exposure_category.return_value = ExposureCategory.B
|
||||
|
||||
assert_almost_equal(self.subject.q_z(self.subject.K_z()), 18.430, 2)
|
||||
|
||||
def test_qz_with_exposure_C_and_roof_height_greater_than_15_feet(self):
|
||||
self.values.building_height.return_value = 35
|
||||
self.values.exposure_category.return_value = ExposureCategory.C
|
||||
|
||||
assert_almost_equal(self.subject.q_z(self.subject.K_z()), 26.715, 2)
|
||||
|
||||
def test_qz_with_exposure_C_and_roof_height_less_than_15_feet(self):
|
||||
self.values.building_height.return_value = 12
|
||||
self.values.exposure_category.return_value = ExposureCategory.C
|
||||
|
||||
assert_almost_equal(self.subject.q_z(self.subject.K_z()), 22.35078017, 2)
|
||||
|
||||
def test_qz_with_exposure_D_and_roof_height_greater_than_15_feet(self):
|
||||
self.values.building_height.return_value = 35
|
||||
self.values.exposure_category.return_value = ExposureCategory.D
|
||||
|
||||
assert_almost_equal(self.subject.q_z(self.subject.K_z()), 31.432, 2)
|
||||
|
||||
def test_qz_with_exposure_D_and_roof_height_less_than_15_feet(self):
|
||||
self.values.building_height.return_value = 12
|
||||
self.values.exposure_category.return_value = ExposureCategory.D
|
||||
|
||||
assert_almost_equal(self.subject.q_z(self.subject.K_z()), 27.126, 2)
|
||||
Reference in New Issue
Block a user