fix: Fixes failing static pressure tests
This commit is contained in:
@@ -108,11 +108,11 @@ public struct PressureEstimationsView: View {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public var body: some View {
|
public var body: some View {
|
||||||
ScrollView {
|
// ScrollView {
|
||||||
EquipmentSettingsFormView(
|
EquipmentSettingsFormView(
|
||||||
store: store.scope(state: \.equipmentSettings, action: \.equipmentSettings)
|
store: store.scope(state: \.equipmentSettings, action: \.equipmentSettings)
|
||||||
)
|
)
|
||||||
}
|
// }
|
||||||
.navigationTitle("Equipment Settings")
|
.navigationTitle("Equipment Settings")
|
||||||
.toolbar {
|
.toolbar {
|
||||||
NextButton { send(.nextButtonTapped) }
|
NextButton { send(.nextButtonTapped) }
|
||||||
@@ -125,10 +125,10 @@ public struct PressureEstimationsView: View {
|
|||||||
action: \.destination.equipmentMeasurements
|
action: \.destination.equipmentMeasurements
|
||||||
)
|
)
|
||||||
) { measurementStore in
|
) { measurementStore in
|
||||||
ScrollView {
|
// ScrollView {
|
||||||
EquipmentMeasurementFormView(store: measurementStore)
|
EquipmentMeasurementFormView(store: measurementStore)
|
||||||
.navigationTitle("Existing Measurements")
|
.navigationTitle("Existing Measurements")
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -85,13 +85,15 @@ public enum EquipmentMeasurement: Equatable, Sendable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public var externalStaticPressure: Positive<Double> {
|
public var externalStaticPressure: Positive<Double> {
|
||||||
var postFilterAdder = Positive<Double>.zero
|
guard $manufacturersIncludedFilterPressureDrop == .zero else {
|
||||||
if $postFilterPressure > $manufacturersIncludedFilterPressureDrop {
|
return Positive(
|
||||||
postFilterAdder = $postFilterPressure - $manufacturersIncludedFilterPressureDrop
|
($postFilterPressure.positiveValue - $manufacturersIncludedFilterPressureDrop.positiveValue)
|
||||||
|
+ $supplyPlenumPressure.positiveValue
|
||||||
|
)
|
||||||
}
|
}
|
||||||
return $returnPlenumPressure
|
return Positive(
|
||||||
+ postFilterAdder
|
$returnPlenumPressure.positiveValue + $supplyPlenumPressure.positiveValue
|
||||||
+ $supplyPlenumPressure
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,7 +114,6 @@ public enum EquipmentMeasurement: Equatable, Sendable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Needs updated for when forms are using `minmal` values.
|
|
||||||
public struct FlaggedMeasurement: Equatable, Sendable {
|
public struct FlaggedMeasurement: Equatable, Sendable {
|
||||||
public var airflow: Flagged
|
public var airflow: Flagged
|
||||||
public var coilPressureDrop: Flagged
|
public var coilPressureDrop: Flagged
|
||||||
@@ -287,7 +288,11 @@ public enum EquipmentMeasurement: Equatable, Sendable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public var externalStaticPressure: Positive<Double> {
|
public var externalStaticPressure: Positive<Double> {
|
||||||
($postFilterPressure - $manufacturersIncludedFilterPressureDrop) + $preCoilPressure
|
let double = ($postFilterPressure.positiveValue - $manufacturersIncludedFilterPressureDrop.positiveValue)
|
||||||
|
+ $preCoilPressure.positiveValue
|
||||||
|
|
||||||
|
// ($postFilterPressure - $manufacturersIncludedFilterPressureDrop) + $preCoilPressure
|
||||||
|
return Positive(double)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -65,7 +65,38 @@ final class PositiveNumericTests: XCTestCase {
|
|||||||
)
|
)
|
||||||
|
|
||||||
sut = envelope.externalStaticPressure.positiveValue
|
sut = envelope.externalStaticPressure.positiveValue
|
||||||
XCTAssertEqual(round(sut * 10) / 10, 0.7)
|
XCTAssertEqual(round(sut * 10) / 10, 0.5)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
func testExternalStaticPressureWithManufacturersFilterDrop() {
|
||||||
|
var envelope = EquipmentMeasurement.furnaceAndCoil(
|
||||||
|
.init(
|
||||||
|
airflow: 1200,
|
||||||
|
manufacturersIncludedFilterPressureDrop: 0.1,
|
||||||
|
returnPlenumPressure: -0.1,
|
||||||
|
postFilterPressure: -0.2, // here to test it makes positive.
|
||||||
|
preCoilPressure: 0.4,
|
||||||
|
supplyPlenumPressure: 0.1
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
var sut = envelope.externalStaticPressure.positiveValue
|
||||||
|
XCTAssertEqual(round(sut * 10) / 10, 0.5)
|
||||||
|
|
||||||
|
|
||||||
|
envelope = .airHandler(
|
||||||
|
.init(
|
||||||
|
airflow: 1200,
|
||||||
|
manufacturersIncludedFilterPressureDrop: 0.1,
|
||||||
|
returnPlenumPressure: -0.2,
|
||||||
|
postFilterPressure: 0.3,
|
||||||
|
postCoilPressure: 0.5,
|
||||||
|
supplyPlenumPressure: 0.3)
|
||||||
|
)
|
||||||
|
|
||||||
|
sut = envelope.externalStaticPressure.positiveValue
|
||||||
|
XCTAssertEqual(round(sut * 10) / 10, 0.5)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user