Skip to content

Commit 19b2c46

Browse files
committed
add test
Signed-off-by: Clement Philipot <[email protected]>
1 parent ba7d80d commit 19b2c46

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

iidm/iidm-impl/src/test/java/com/powsybl/iidm/network/impl/ReactiveCapabilityCurveImplTest.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,20 @@
77
*/
88
package com.powsybl.iidm.network.impl;
99

10+
import com.powsybl.iidm.network.Generator;
11+
import com.powsybl.iidm.network.Network;
12+
import com.powsybl.iidm.network.ReactiveCapabilityCurve;
1013
import com.powsybl.iidm.network.ReactiveCapabilityCurve.Point;
1114
import com.powsybl.iidm.network.impl.ReactiveCapabilityCurveImpl.PointImpl;
15+
import com.powsybl.iidm.network.test.FictitiousSwitchFactory;
16+
import org.junit.jupiter.api.BeforeEach;
1217
import org.junit.jupiter.api.Test;
1318
import org.junit.jupiter.params.ParameterizedTest;
1419
import org.junit.jupiter.params.provider.ValueSource;
1520

1621
import java.util.TreeMap;
1722

23+
import static com.powsybl.iidm.network.ReactiveLimitsKind.CURVE;
1824
import static org.junit.jupiter.api.Assertions.assertEquals;
1925
/**
2026
*
@@ -53,6 +59,32 @@ void testReactiveCapabilityCurve() {
5359
assertEquals(400.0, curve.getMaxQ(1000.0), 0.0);
5460
}
5561

62+
@Test
63+
void testReactiveCapabilityCurveWithInvertedMinQMaxQ() {
64+
65+
Network network = FictitiousSwitchFactory.create();
66+
Generator generator = network.getGenerator("CB");
67+
68+
ReactiveCapabilityCurve reactiveCapabilityCurve = generator.newReactiveCapabilityCurve()
69+
.beginPoint()
70+
.setP(1.0)
71+
.setMaxQ(5.0)
72+
.setMinQ(1.0)
73+
.endPoint()
74+
.beginPoint()
75+
.setP(100.0)
76+
.setMaxQ(2.0) // minQ > maxQ : this is incorrect
77+
.setMinQ(10.0)
78+
.endPoint()
79+
.add();
80+
81+
assertEquals(1.0, reactiveCapabilityCurve.getMinQ(1.0), 0.0);
82+
assertEquals(5.0, reactiveCapabilityCurve.getMaxQ(1.0), 0.0);
83+
//minQ and maxQ have been put in the right order :
84+
assertEquals(2.0, reactiveCapabilityCurve.getMinQ(100.0), 0.0);
85+
assertEquals(10.0, reactiveCapabilityCurve.getMaxQ(100.0), 0.0);
86+
}
87+
5688
@ParameterizedTest
5789
@ValueSource(booleans = {true, false})
5890
void testReactiveCapabilityCurveWithReactiveLimitsExtrapolation(boolean extrapolate) {

0 commit comments

Comments
 (0)