Пример #1
0
        public void Strength_of_single_member_team_is_rank_over_skill_index()
        {
            const string programmerId = "only member";
            const string skill        = "skill";

            _rankService.GetRank(programmerId).Returns(2);
            _skillsService.GetSkillIndex(programmerId, skill).Returns(3);

            var strength = new TeamStrengthService(_separationService, _skillsService, _rankService).GetTeamStrength(skill, new List <string> {
                programmerId
            });

            Assert.That(strength, Is.EqualTo(2d / 3d));
        }
Пример #2
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));
        }
Пример #3
0
        public void Strength_of_individual_is_rank_over_skill_index()
        {
            const string skill        = "valid skill";
            const string programmerId = "programmer id";
            var          skillService = Substitute.For <ISkillsService>();

            skillService.GetSkillIndex(programmerId, skill).Returns(3);
            var rankService = Substitute.For <IRankService>();

            rankService.GetRank(programmerId).Returns(2d);

            var strength = new TeamStrengthService(null, skillService, rankService).GetIndividualStrength(skill, programmerId);

            const double expected = 2d / 3d;

            Assert.That(strength, Is.EqualTo(expected));
        }