public void GetVertexInfo_Throws()
        {
            // ReSharper disable ReturnValueOfPureMethodIsNotUsed
            // ReSharper disable AssignNullToNotNullAttribute
            var graph      = new AdjacencyGraph <TestVertex, Edge <TestVertex> >();
            var algorithm1 = new TestSimpleLayoutAlgorithm(graph);

            Assert.Throws <ArgumentNullException>(() => algorithm1.GetVertexInfo(null));

            var algorithm2 = new TestComplexLayoutAlgorithm(graph);

            Assert.Throws <ArgumentNullException>(() => algorithm2.GetVertexInfo(null));
            // ReSharper restore AssignNullToNotNullAttribute
            // ReSharper restore ReturnValueOfPureMethodIsNotUsed
        }
        public void GetVertexInfo()
        {
            var vertex = new TestVertex("1");

            var graph      = new AdjacencyGraph <TestVertex, Edge <TestVertex> >();
            var algorithm1 = new TestSimpleLayoutAlgorithm(graph);

            Assert.IsNull(algorithm1.GetVertexInfo(vertex));

            var algorithm2 = new TestComplexLayoutAlgorithm(graph);

            Assert.IsNull(algorithm2.GetVertexInfo(vertex));

            graph.AddVertex(vertex);
            Assert.IsNull(algorithm2.GetVertexInfo(vertex));

            const int vertexInfo = 1;

            algorithm2.VerticesInfos.Add(vertex, vertexInfo);
            Assert.AreEqual(vertexInfo, algorithm2.GetVertexInfo(vertex));

            algorithm2.VerticesInfos.Remove(vertex);
            Assert.IsNull(algorithm2.GetVertexInfo(vertex));
        }