UcteNetworkImplTest.java
/**
* Copyright (c) 2017, RTE (http://www.rte-france.com)
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
* SPDX-License-Identifier: MPL-2.0
*/
package com.powsybl.ucte.network;
import org.junit.jupiter.api.Test;
import java.util.Arrays;
import java.util.List;
import static org.junit.jupiter.api.Assertions.*;
/**
* @author Mathieu Bague {@literal <mathieu.bague at rte-france.com>}
*/
public class UcteNetworkImplTest {
@Test
void test() {
UcteNetwork network = UcteNetworkFactory.createNetwork(UcteNetworkImpl::new);
testNetwork(network);
}
protected void testNetwork(UcteNetwork network) {
UcteNodeCode code1 = new UcteNodeCode(UcteCountryCode.XX, "AAAAA", UcteVoltageLevelCode.VL_380, '1');
UcteNodeCode code2 = new UcteNodeCode(UcteCountryCode.XX, "BBBBB", UcteVoltageLevelCode.VL_220, '1');
UcteNodeCode code3 = new UcteNodeCode(UcteCountryCode.XX, "CCCCC", UcteVoltageLevelCode.VL_220, '1');
UcteNodeCode code4 = new UcteNodeCode(UcteCountryCode.XX, "DDDDD", UcteVoltageLevelCode.VL_380, '1');
UcteElementId lineId = new UcteElementId(code2, code3, '1');
UcteElementId transformerId = new UcteElementId(code1, code2, '1');
assertNull(network.getVersion());
network.setVersion(UcteFormatVersion.SECOND);
assertEquals(UcteFormatVersion.SECOND, network.getVersion());
assertEquals(0, network.getComments().size());
assertEquals(3, network.getNodes().size());
List<UcteNodeCode> codes = network.getNodes().stream().map(UcteNode::getCode).toList();
assertTrue(codes.containsAll(Arrays.asList(code1, code2, code3)));
UcteNode node = network.getNode(code1);
assertEquals(1000.0, node.getActivePowerGeneration(), 0.0);
assertNotNull(network.getNode(code1));
assertThrows(UcteException.class, () -> network.getNode(code4), "Node " + code4.toString() + " not found");
assertEquals(1, network.getLines().size());
assertEquals(lineId, network.getLines().iterator().next().getId());
assertNotNull(network.getLine(lineId));
assertThrows(UcteException.class, () -> network.getLine(transformerId), "Line " + transformerId + " not found");
assertEquals(1, network.getTransformers().size());
assertEquals(transformerId, network.getTransformers().iterator().next().getId());
assertNotNull(network.getTransformer(transformerId));
assertThrows(UcteException.class, () -> network.getTransformer(lineId), "Transformer " + lineId + " not found");
assertEquals(1, network.getRegulations().size());
assertEquals(transformerId, network.getRegulations().iterator().next().getTransfoId());
assertNull(network.getRegulation(lineId));
}
}