Skip to content

Commit

Permalink
add tests
Browse files Browse the repository at this point in the history
Signed-off-by: RALAMBOTIANA MIORA <miora.ralambotiana@rte-france.com>
  • Loading branch information
miovd committed Mar 23, 2020
1 parent c5238aa commit 9b23d71
Showing 1 changed file with 69 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,8 @@
*/
package com.powsybl.iidm.mergingview;

import com.powsybl.iidm.network.Network;
import com.powsybl.iidm.network.ShuntCompensator;
import com.powsybl.iidm.network.Terminal;
import com.powsybl.iidm.network.ShuntCompensatorLinearModel;
import com.powsybl.iidm.network.*;
import com.powsybl.iidm.network.test.EurostagTutorialExample1Factory;
import com.powsybl.iidm.network.test.HvdcTestNetwork;
import org.junit.Before;
import org.junit.Test;
Expand Down Expand Up @@ -84,5 +82,72 @@ public void testSetterGetter() {
// Not implemented yet !
TestUtil.notImplemented(shuntCActual::remove);
}

@Test
public void testCreateLinear() {
createNetwork();

// Linear shunt
ShuntCompensatorAdder adder = mergingView.getVoltageLevel("VLLOAD")
.newShuntCompensator()
.setId("linear")
.setConnectableBus("NLOAD")
.setCurrentSectionCount(0)
.newLinearModel()
.setbPerSection(1.0)
.setMaximumSectionCount(2)
.add();
assertTrue(adder instanceof ShuntCompensatorAdderAdapter);
assertTrue(adder.add() instanceof ShuntCompensatorAdapter);

ShuntCompensator shunt = mergingView.getShuntCompensator("linear");
assertEquals(0, shunt.getCurrentSectionCount());
assertEquals(2, shunt.getMaximumSectionCount());

ShuntCompensatorLinearModel model = shunt.getModel(ShuntCompensatorLinearModel.class);
assertEquals(1.0, model.getbPerSection(), 0.0);
assertTrue(Double.isNaN(model.getgPerSection()));
}

@Test
public void testCreateNonLinear() {
createNetwork();

// Non linear shunt
ShuntCompensatorAdder adder = mergingView.getVoltageLevel("VLLOAD")
.newShuntCompensator()
.setId("nonLinear")
.setConnectableBus("NLOAD")
.setCurrentSectionCount(0)
.newNonLinearModel()
.beginSection()
.setSectionNum(0)
.setB(1.0)
.endSection()
.beginSection()
.setSectionNum(1)
.setB(2.0)
.endSection()
.add();
assertTrue(adder instanceof ShuntCompensatorAdderAdapter);
assertTrue(adder.add() instanceof ShuntCompensatorAdapter);

ShuntCompensator shunt = mergingView.getShuntCompensator("nonLinear");
assertEquals(0, shunt.getCurrentSectionCount());
assertEquals(1, shunt.getMaximumSectionCount());

ShuntCompensatorNonLinearModel model = shunt.getModel(ShuntCompensatorNonLinearModel.class);
assertEquals(2, model.getSections().size());
assertEquals(1.0, model.getB(0), 0.0);
assertTrue(Double.isNaN(model.getG(0)));
assertEquals(2.0, model.getB(1), 0.0);
assertTrue(Double.isNaN(model.getG(1)));
}

private void createNetwork() {
Network network = EurostagTutorialExample1Factory.create();
network.getLoad("LOAD").remove();
mergingView.merge(network);
}
}
//pour les méthodes setComponentNumber de BusExt je peux les remonter dans Bus

0 comments on commit 9b23d71

Please sign in to comment.