public async void TeacherSkillId_Create_Valid_Reference()
        {
            Mock <IRateRepository> rateRepository = new Mock <IRateRepository>();

            rateRepository.Setup(x => x.TeacherSkillByTeacherSkillId(It.IsAny <int>())).Returns(Task.FromResult <TeacherSkill>(new TeacherSkill()));

            var validator = new ApiRateRequestModelValidator(rateRepository.Object);
            await validator.ValidateCreateAsync(new ApiRateRequestModel());

            validator.ShouldNotHaveValidationErrorFor(x => x.TeacherSkillId, 1);
        }
        public async void TeacherId_Update_Invalid_Reference()
        {
            Mock <IRateRepository> rateRepository = new Mock <IRateRepository>();

            rateRepository.Setup(x => x.TeacherByTeacherId(It.IsAny <int>())).Returns(Task.FromResult <Teacher>(null));

            var validator = new ApiRateRequestModelValidator(rateRepository.Object);

            await validator.ValidateUpdateAsync(default(int), new ApiRateRequestModel());

            validator.ShouldHaveValidationErrorFor(x => x.TeacherId, 1);
        }