StandardElementaryCreationContextTest.java
/*
* Copyright (c) 2024, 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/.
*/
package com.powsybl.openrao.data.crac.io.commons.api;
import org.junit.jupiter.api.Test;
import java.util.Set;
import static org.ejml.UtilEjml.assertTrue;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNull;
/**
* @author Thomas Bouquet {@literal <thomas.bouquet at rte-france.com>}
*/
class StandardElementaryCreationContextTest {
@Test
void testInitWithComprehensiveData() {
StandardElementaryCreationContext context = new StandardElementaryCreationContext("nativeId", "nativeName", "createdId", ImportStatus.IMPORTED, "", false);
assertTrue(context.isImported());
assertEquals("nativeId", context.getNativeObjectId());
assertEquals("nativeName", context.getNativeObjectName());
assertEquals("createdId", context.getCreatedObjectId());
assertEquals(Set.of("createdId"), context.getCreatedObjectsIds());
assertFalse(context.isAltered());
assertEquals(ImportStatus.IMPORTED, context.getImportStatus());
assertEquals("", context.getImportStatusDetail());
}
@Test
void testInitWithoutNativeName() {
StandardElementaryCreationContext context = new StandardElementaryCreationContext("nativeId", null, "createdId", ImportStatus.IMPORTED, "Details.", true);
assertTrue(context.isImported());
assertEquals("nativeId", context.getNativeObjectId());
assertEquals("nativeId", context.getNativeObjectName());
assertEquals("createdId", context.getCreatedObjectId());
assertEquals(Set.of("createdId"), context.getCreatedObjectsIds());
assertTrue(context.isAltered());
assertEquals(ImportStatus.IMPORTED, context.getImportStatus());
assertEquals("Details.", context.getImportStatusDetail());
}
@Test
void testImported() {
StandardElementaryCreationContext context = StandardElementaryCreationContext.imported("nativeId", "nativeName", "createdId", true, "Details.");
assertTrue(context.isImported());
assertEquals("nativeId", context.getNativeObjectId());
assertEquals("nativeName", context.getNativeObjectName());
assertEquals("createdId", context.getCreatedObjectId());
assertEquals(Set.of("createdId"), context.getCreatedObjectsIds());
assertTrue(context.isAltered());
assertEquals(ImportStatus.IMPORTED, context.getImportStatus());
assertEquals("Details.", context.getImportStatusDetail());
}
@Test
void testNotImported() {
StandardElementaryCreationContext context = StandardElementaryCreationContext.notImported("nativeId", "nativeName", ImportStatus.NOT_FOR_RAO, "Details.");
assertFalse(context.isImported());
assertEquals("nativeId", context.getNativeObjectId());
assertEquals("nativeName", context.getNativeObjectName());
assertNull(context.getCreatedObjectId());
assertTrue(context.getCreatedObjectsIds().isEmpty());
assertFalse(context.isAltered());
assertEquals(ImportStatus.NOT_FOR_RAO, context.getImportStatus());
assertEquals("Details.", context.getImportStatusDetail());
}
}