TestCaseGroundDisconnector.java
/**
* Copyright (c) 2023, 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.sld.iidm;
import com.powsybl.diagram.test.Networks;
import com.powsybl.iidm.network.Network;
import com.powsybl.sld.builders.NetworkGraphBuilder;
import com.powsybl.sld.library.ComponentLibrary;
import com.powsybl.sld.library.ConvergenceComponentLibrary;
import com.powsybl.sld.library.FlatDesignLibrary;
import com.powsybl.sld.model.graphs.VoltageLevelGraph;
import com.powsybl.sld.svg.styles.iidm.TopologicalStyleProvider;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.Arguments;
import org.junit.jupiter.params.provider.MethodSource;
import java.util.List;
import static org.junit.jupiter.api.Assertions.assertEquals;
/**
* @author Sophie Frasnedo {@literal <sophie.frasnedo at rte-france.com>}
*/
class TestCaseGroundDisconnector extends AbstractTestCaseIidm {
@BeforeEach
public void setUp() {
}
@ParameterizedTest(name = "{1}")
@MethodSource("provideTestData")
void test(Network network, String resourceName, ComponentLibrary componentLibrary) {
// Create network
this.network = network;
// Build graph
graphBuilder = new NetworkGraphBuilder(network);
VoltageLevelGraph g = graphBuilder.buildVoltageLevelGraph("vl");
// Run layout
voltageLevelGraphLayout(g);
// Write svg and compare to reference
assertEquals(toString(resourceName), toSVG(g, resourceName, componentLibrary, layoutParameters, svgParameters,
getDefaultDiagramLabelProvider(), new TopologicalStyleProvider(network)));
}
private static List<Arguments> provideTestData() {
return List.of(
Arguments.of(Networks.createNetworkGroundDisconnector(), "/GroundDisconnectorsAndGround.svg", new ConvergenceComponentLibrary()),
Arguments.of(Networks.createNetworkGroundsBusBreaker(), "/GroundsBusBreaker.svg", new ConvergenceComponentLibrary()),
Arguments.of(Networks.createNetworkGroundDisconnector(), "/GroundDisconnectorsAndGroundFlat.svg", new FlatDesignLibrary()),
Arguments.of(Networks.createNetworkGroundsBusBreaker(), "/GroundsBusBreakerFlat.svg", new FlatDesignLibrary())
);
}
}