예제 #1
0
        public void ShouldSetScore()
        {
            // arrange
            var skill            = new Skill("C#");
            var skillEvaluator   = new Employee(100, "Jane Doe").SkillEvaluator;
            var targetLevel      = SkillLevel.Advanced;
            var currentLevel     = SkillLevel.Average;
            var evaluatee        = new Employee(101, "John Doe").Evaluatee;
            var evaluationPeriod = new EvaluationPeriod(TimeZoneInfo.Local, new DateTime(DateTime.Today.Year, 1, 1), new DateTime(DateTime.Today.Year, 12, 31));
            var evaluation       = new Evaluation(evaluatee, evaluationPeriod);
            var skillGoal        = new SkillGoal(skill, skillEvaluator, targetLevel, currentLevel, evaluation);
            var skillScore       = new SkillScore(skillGoal);

            skillEvaluator.AddNewSkillGoal(skill, skillEvaluator, targetLevel, currentLevel, evaluation);

            // act
            var skillLevelAchieved = SkillLevel.Advanced;

            skillScore.SetScore(skillLevelAchieved, 10, "Excelsior!!!");

            // assert
            Assert.Equal(10, skillScore.Score);
            Assert.Equal(currentLevel, skillEvaluator.SkillGoals.First().InitialSkillLevel.PersonalSkill.SkillLevel);
            Assert.Equal(skillLevelAchieved, skillScore.AchievedSkillLevel.PersonalSkill.SkillLevel);
        }
예제 #2
0
        public void ShouldCreateInstance()
        {
            // arrange
            var skill            = new Skill("C#");
            var skillEvaluator   = new Employee(100, "Jane Doe").SkillEvaluator;
            var targetLevel      = SkillLevel.Advanced;
            var currentLevel     = SkillLevel.Average;
            var evaluatee        = new Employee(101, "John Doe").Evaluatee;
            var evaluationPeriod = new EvaluationPeriod(TimeZoneInfo.Local, new DateTime(DateTime.Today.Year, 1, 1), new DateTime(DateTime.Today.Year, 12, 31));
            var evaluation       = new Evaluation(evaluatee, evaluationPeriod);
            var skillGoal        = new SkillGoal(skill, skillEvaluator, targetLevel, currentLevel, evaluation);

            // act
            var result = new SkillScore(skillGoal);

            // assert
            Assert.Equal(skillGoal, result.SkillGoal);
        }
        public void ShouldReturnMissingGoalWhenSetSkillScoreToSkillGoalIfGoalIsNotFound()
        {
            // arrange
            var skillEvaluator   = new Employee(100, "Jane Doe").SkillEvaluator;
            var skill            = new Skill("C#");
            var evaluatee        = new Employee(101, "John Doe").Evaluatee;
            var evaluationPeriod = new EvaluationPeriod(TimeZoneInfo.Local, new DateTime(DateTime.Today.Year, 1, 1), new DateTime(DateTime.Today.Year, 12, 31));
            var evaluation       = new Evaluation(evaluatee, evaluationPeriod);
            var targetLevel      = SkillLevel.Advanced;
            var currentLevel     = SkillLevel.Average;
            var skillGoal        = new SkillGoal(skill, skillEvaluator, targetLevel, currentLevel, evaluation);

            // act
            var skillLevelAchieved = SkillLevel.Advanced;
            var result             = skillEvaluator.SetSkillScoreToSkillGoal(skillGoal, skillLevelAchieved, 10, "Excelsior!!!");

            // assert
            Assert.Equal(OperationStatusCode.MissingSkillGoal, result.OperationStatusCode);
            Assert.Empty(skillEvaluator.SkillGoals);
        }