Esempio n. 1
0
        public async Task get_async_should_return_proper_subject()
        {
            string category = "Science";
            string name     = "Physics";

            var sub = await subjectProvider.GetAsync(name, category);

            Assert.AreEqual(sub.Name, name);
            Assert.AreEqual(sub.Category, category);
        }
Esempio n. 2
0
        public async Task AddAsync(Guid userId, string name, string category, string grade, decimal pricePerHour)
        {
            var teacher = await _teacherRepository.GetOrFailAsync(userId);

            var les = await GetAsync(userId, name, category, grade);

            if (les != null)
            {
                throw new ServiceException(ServiceErrorCodes.LessonAlreadyExists, "Lesson with specific name, category and grade already exists.");
            }

            var subjectDetails = await _subjectProvider.GetAsync(name, category);

            var subject = Subject.Create(subjectDetails.Name, subjectDetails.Category);
            var lesson  = new Lesson(subject, grade, pricePerHour);

            await _teacherRepository.AddLesson(teacher, lesson);
        }