41 lines
1.2 KiB
Java
41 lines
1.2 KiB
Java
|
|
package eu.dnetlib.pace.util;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
import static org.junit.jupiter.api.Assertions.assertNull;
|
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
public class IncrementalConnectedComponentsTest {
|
|
|
|
@Test
|
|
public void transitiveClosureTest() {
|
|
IncrementalConnectedComponents icc = new IncrementalConnectedComponents(10);
|
|
|
|
icc.connect(0, 1);
|
|
icc.connect(0, 2);
|
|
icc.connect(0, 3);
|
|
|
|
icc.connect(1, 2);
|
|
icc.connect(1, 4);
|
|
icc.connect(1, 5);
|
|
|
|
icc.connect(6, 7);
|
|
icc.connect(6, 9);
|
|
|
|
assertEquals(icc.getConnections(0).toString(), "{0, 1, 2, 3, 4, 5}");
|
|
assertEquals(icc.getConnections(1).toString(), "{0, 1, 2, 3, 4, 5}");
|
|
assertEquals(icc.getConnections(2).toString(), "{0, 1, 2, 3, 4, 5}");
|
|
assertEquals(icc.getConnections(3).toString(), "{0, 1, 2, 3, 4, 5}");
|
|
assertEquals(icc.getConnections(4).toString(), "{0, 1, 2, 3, 4, 5}");
|
|
assertEquals(icc.getConnections(5).toString(), "{0, 1, 2, 3, 4, 5}");
|
|
|
|
assertEquals(icc.getConnections(6).toString(), "{6, 7, 9}");
|
|
assertEquals(icc.getConnections(7).toString(), "{6, 7, 9}");
|
|
assertEquals(icc.getConnections(9).toString(), "{6, 7, 9}");
|
|
|
|
assertNull(icc.getConnections(8));
|
|
}
|
|
|
|
}
|