public void TestMethod1()
{
Boolean bIsDirected = false;
CreateGraph(bIsDirected);
IVertex oVertexA = m_oVertices.Add();
IVertex oVertexB = m_oVertices.Add();
IVertex oVertexC = m_oVertices.Add();
IVertex oVertexD = m_oVertices.Add();
IVertex oVertexE = m_oVertices.Add();
m_oEdges.Add(oVertexA, oVertexB, bIsDirected);
m_oEdges.Add(oVertexB, oVertexC, bIsDirected);
m_oEdges.Add(oVertexA, oVertexD, bIsDirected);
m_oEdges.Add(oVertexA, oVertexE, bIsDirected);
m_oEdges.Add(oVertexA, oVertexC, bIsDirected);
MetricDouble oMetricDouble;
bool rv = m_oPageRankCalculator.TryCalculateGraphMetrics(m_oGraph, null, out oMetricDouble);
//Assert.AreEqual(rv, true);
Assert.AreEqual(oMetricDouble.Count, 5);
System.Console.WriteLine("{0}, {1}, {2}", oMetricDouble[oVertexA.ID], oMetricDouble[oVertexB.ID], oMetricDouble[oVertexC.ID]);
Assert.AreEqual(true, Math.Abs(oMetricDouble[oVertexA.ID] - 0.3839) * 500 < oMetricDouble[oVertexA.ID]);
Assert.AreEqual(true, Math.Abs(oMetricDouble[oVertexB.ID] - 0.1937) * 500 < oMetricDouble[oVertexB.ID]);
Assert.AreEqual(true, Math.Abs(oMetricDouble[oVertexC.ID] - 0.1937) * 500 < oMetricDouble[oVertexC.ID]);
Assert.AreEqual(true, Math.Abs(oMetricDouble[oVertexD.ID] - 0.1115) * 500 < oMetricDouble[oVertexD.ID]);
Assert.AreEqual(true, Math.Abs(oMetricDouble[oVertexE.ID] - 0.1115) * 500 < oMetricDouble[oVertexE.ID]);
}