Skip to content

Commit 1405c9b

Browse files
committed
add tests
Signed-off-by: basseche <bassel.el-cheikh_externe@rte-france.com>
1 parent 4184351 commit 1405c9b

File tree

1 file changed

+61
-0
lines changed

1 file changed

+61
-0
lines changed

src/test/java/org/gridsuite/filter/globalfilter/GlobalFilterUtilsTest.java

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import java.util.stream.Collectors;
3030
import java.util.stream.Stream;
3131

32+
import static org.junit.jupiter.api.Assertions.assertEquals;
3233
import static org.junit.jupiter.api.Assertions.assertTrue;
3334
import static org.mockito.ArgumentMatchers.*;
3435
import static org.mockito.Mockito.when;
@@ -69,6 +70,66 @@ private static <T extends AbstractExpertRule> void testVariableOrCombinationRule
6970
}
7071
}
7172

73+
@Nested
74+
@DisplayName("filterEquipmentTypes(...)")
75+
class FilterEquipmentTypes {
76+
77+
@Test
78+
void testNoGenericFilters() {
79+
final FilterLoader loader = Mockito.mock(FilterLoader.class);
80+
List<EquipmentType> equipmentTypes = List.of(EquipmentType.LINE, EquipmentType.SUBSTATION);
81+
List<UUID> genericFiltersUuids = Collections.emptyList();
82+
83+
List<EquipmentType> result = GlobalFilterUtils.filterEquipmentTypes(equipmentTypes, genericFiltersUuids, loader);
84+
85+
// Expect all equipment types to be returned
86+
assertEquals(equipmentTypes, result);
87+
}
88+
89+
@Test
90+
void testSubstationAndVoltageLevelFilters() {
91+
final FilterLoader loader = Mockito.mock(FilterLoader.class);
92+
List<EquipmentType> equipmentTypes = List.of(EquipmentType.LINE, EquipmentType.TWO_WINDINGS_TRANSFORMER);
93+
List<UUID> genericFiltersUuids = List.of(UUID.randomUUID(), UUID.randomUUID());
94+
95+
// Mock the return values for your generic filters
96+
final AbstractFilter subStationFilter = Mockito.mock(AbstractFilter.class);
97+
Mockito.when(subStationFilter.getEquipmentType()).thenReturn(EquipmentType.SUBSTATION);
98+
final AbstractFilter voltageLevelfilter = Mockito.mock(AbstractFilter.class);
99+
Mockito.when(voltageLevelfilter.getEquipmentType()).thenReturn(EquipmentType.VOLTAGE_LEVEL);
100+
101+
Mockito.when(loader.getFilters(genericFiltersUuids)).thenReturn(List.of(
102+
subStationFilter, voltageLevelfilter));
103+
104+
List<EquipmentType> result = GlobalFilterUtils.filterEquipmentTypes(equipmentTypes, genericFiltersUuids, loader);
105+
106+
// Expect all equipment types to be returned
107+
assertEquals(equipmentTypes, result);
108+
}
109+
110+
@Test
111+
void testFiltersOnOtherEquipmentTypes() {
112+
final FilterLoader loader = Mockito.mock(FilterLoader.class);
113+
List<EquipmentType> equipmentTypes = List.of(EquipmentType.LINE, EquipmentType.TWO_WINDINGS_TRANSFORMER);
114+
List<UUID> genericFiltersUuids = List.of(UUID.randomUUID(), UUID.randomUUID());
115+
116+
// Mock the return values for your generic filters
117+
final AbstractFilter lineFilter = Mockito.mock(AbstractFilter.class);
118+
Mockito.when(lineFilter.getEquipmentType()).thenReturn(EquipmentType.LINE);
119+
120+
final AbstractFilter voltageLevelFilter = Mockito.mock(AbstractFilter.class);
121+
Mockito.when(voltageLevelFilter.getEquipmentType()).thenReturn(EquipmentType.VOLTAGE_LEVEL);
122+
123+
Mockito.when(loader.getFilters(genericFiltersUuids)).thenReturn(List.of(
124+
lineFilter, voltageLevelFilter));
125+
126+
List<EquipmentType> result = GlobalFilterUtils.filterEquipmentTypes(equipmentTypes, genericFiltersUuids, loader);
127+
128+
// Expect only TYPE_A to be returned
129+
assertEquals(List.of(EquipmentType.LINE), result);
130+
}
131+
}
132+
72133
/** Trick Java to create generic array */
73134
@SafeVarargs
74135
private static <T> ThrowingConsumer<T>[] createAssertArray(final ThrowingConsumer<T>... assertions) {

0 commit comments

Comments
 (0)