package primitiveTests;
import static org.junit.Assert.*;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Set;
import org.junit.Before;
import org.junit.Test;
import primitives.graph.Graph;
import primitives.graph.Node;
import primitives.graph.Transition;
public class GraphTest {
Graph master = new Graph();
Node in = new Node();
@Before
public void setUp(){
master.addNode(in);
master.connect(in, in);
master.connect(in,in,"one");
master.connect(in, in, "two");
master.connect(in, in);
}
@Test
public void testGraph() {
fail("Not yet implemented");
}
@Test
public void testGraphSetOfNodeHashMapOfNodeSetOfTransition() {
fail("Not yet implemented");
}
@Test
public void testGetNodes() {
assertEquals(1,master.getNodes().size());
}
@Test
public void testSetNodes() {
Set<Node> ooph = new HashSet<Node>();
ooph.add( new Node ("test"));
Set<Node> oldOnes = master.getNodes();
HashMap<Node,Set<Transition>> oldTransitions = master.getTransitions();
assertEquals(1,master.getNodes().size());
master.setNodes(ooph);
assertEquals(ooph.size(),master.getNodes().size());
assertSame(ooph,master.getNodes());
master.setNodes(oldOnes);
assertFalse(ooph == master.getNodes());
assertSame(oldOnes,master.getNodes());
Graph someOtherGraph = new Graph();
Node a, b;
a = new Node("a");
b = new Node("b");
someOtherGraph.addNode(a);
someOtherGraph.addNode(b);
someOtherGraph.connect(a, b, "test");
assertTrue(someOtherGraph.connectivity(a, b));
assertTrue(a.pathTo(b));
Set<Node> newOnes = someOtherGraph.getNodes();
master.setNodes(newOnes);
assertFalse(master.getNodes().contains(in));
assertTrue(master.connectivity(a, b));
master.setNodes(oldOnes);
assertEquals(oldTransitions.size(),master.getTransitions().size());
}
@Test
public void testGetTransitions() {
fail("Not yet implemented");
}
@Test
public void testSetTransitions() {
fail("Not yet implemented");
}
@Test
public void testAddNodeString() {
fail("Not yet implemented");
}
@Test
public void testAddNodeNode() {
fail("Not yet implemented");
}
@Test
public void testConnectNodeNode() {
fail("Not yet implemented");
}
@Test
public void testConnectNodeNodeString() {
fail("Not yet implemented");
}
}