public void DegreeOfSeparationShouldBeMinimumOfTwoPathsForTheSameFriend()
{
IUserRepository repository = new UserRepository(session);
var loginid = new LoginId("*****@*****.**");
var name = new Name("Suchit", "Puri");
var suchit = new User(loginid, name) { Repository = repository };
var loginid2 = new LoginId("*****@*****.**");
var name2 = new Name("Sumit", "Gupta");
var sumit = new User(loginid2, name2) { Repository = repository };
var loginid3 = new LoginId("*****@*****.**");
var name3 = new Name("Manav", "Prasad");
var manav = new User(loginid3, name3) { Repository = repository };
repository.Save(sumit);
repository.Save(suchit);
repository.Save(manav);
suchit.InviteFriend(sumit);
sumit.AcceptFriendInvite(suchit);
sumit.InviteFriend(manav);
manav.AcceptFriendInvite(sumit);
suchit.InviteFriend(manav);
manav.AcceptFriendInvite(suchit);
session.Flush();
session.Evict(suchit);
session.Evict(sumit);
session.Evict(manav);
Assert.AreEqual(1, suchit.DegreeOfSeparation(manav).Count);
}