private static void AssertDegreesOfSeparationBetweenAAndB(INetworkRepository networkRepository, int expected) { var degrees = new SeparationService(networkRepository).GetDegreesBetween(ProgrammerAId, ProgrammerBId); var degreesWithParametersSwapped = new SeparationService(networkRepository).GetDegreesBetween(ProgrammerBId, ProgrammerAId); Assert.That(degrees, Is.EqualTo(expected)); Assert.That(degrees, Is.EqualTo(degreesWithParametersSwapped)); }
public void Separation_with_self() { var expected = 0; var programmerRepository = StubProgrammerRepository(new Programmer(ProgrammerAId, new string[] { }, null)); var degrees = new SeparationService(programmerRepository).GetDegreesBetween(ProgrammerAId, ProgrammerAId); Assert.That(degrees, Is.EqualTo(expected)); }
protected override IProNet LoadProNet(string filename) { // load your implementation here var fileService = new FileService(); var networkValidator = new NetworkValidator(); var networkService = new NetworkRepository(fileService, filename, networkValidator); var rankService = new RankService(networkService); var skillsService = new SkillsService(networkService); var separationService = new SeparationService(networkService); var recommendationService = new RecommendationService(networkService); var teamStrengthService = new TeamStrengthService(separationService, skillsService, rankService); var permutationService = new PermutationService(); var strongestTeamService = new StrongestTeamService(networkService, teamStrengthService, permutationService); return(new ProNet(rankService, skillsService, separationService, recommendationService, teamStrengthService, strongestTeamService)); }
public void Setup() { fakeLoggingService = Substitute.For <ILoggingService>(); uut = new SeparationService(fakeLoggingService); }