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));
        }
Esempio n. 3
0
        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));
        }
Esempio n. 4
0
 public void Setup()
 {
     fakeLoggingService = Substitute.For <ILoggingService>();
     uut = new SeparationService(fakeLoggingService);
 }