public void DeleteCourse_EvalsPresent_DeletesEvals() { var testCourseId = Guid.NewGuid(); var testEvals = new List <EvaluationEntity> { EvaluationFactory.Create_EvaluationEntity_ValidMinimum(testCourseId) }; var testEvalRepo = new MockRepository <EvaluationEntity>(testEvals); var evalService = TestDatas.Evaluations.ServiceFactory.Create_EvaluationService(); var evalInteractor = TestDatas.Evaluations.InteractorFactory.Create_EvaluationInteractor(); evalInteractor.Repo = testEvalRepo; evalService.EvaluationInteractor = evalInteractor; evalService.ScoreInteractor = new MockScoreInteractor(); var testClass = ServiceFactory.Create_MockInteractor(); testClass.EvaluationService = evalService; var result = testClass.DeleteCourse(testCourseId); var resultScores = testClass.EvaluationService.GetEvaluationsForCourse(testCourseId); result.GetType().ShouldNotBe(typeof(ErrorDomainModel)); resultScores.Count.ShouldBe(0); }
public void UpdateEvaluation_NewObject_ThrowsObjectNotFound() { var testClass = InteractorFactory.Create_EvaluationInteractor(); var testScore = EvaluationFactory.Create_EvaluationEntity_ValidMinimum(); Should.Throw <ObjectNotFoundException>(() => testClass.UpdateEvaluation(testScore)); }
public void CreateNewEvaluation_ValidModel_ResultNotNull() { var testClass = ServiceFactory.Create_EvaluationService(); var testModel = EvaluationFactory.Create_CreateEvaluationDomainModel_ValidMinimum(); var result = testClass.CreateNewEvaluation(testModel); result.ShouldNotBeNull(); }
public EvaluationEntity GetEvaluation(Guid evaluationId) { if (evaluationId.Equals(Guid.Empty)) { throw new ObjectNotFoundException(); } return(EvaluationFactory.Create_EvaluationEntity_ValidMinimum(evaluationId)); }
public void UpdateEvaluation_ValidModel_ReturnsValidModel() { var testEvaluationEntity = EvaluationFactory.Create_EvaluationEntity_ValidMinimum_CustomId(Guid.NewGuid()); var testEvaluation = new EvaluationDomainModel(testEvaluationEntity); var testClass = ServiceFactory.Create_EvaluationService(); var result = testClass.UpdateEvaluation(testEvaluation); result.GetType().ShouldNotBe(typeof(ErrorDomainModel)); }
public void CreateEval_ValidModel_ResultNotNull() { var testClass = InteractorFactory.Create_EvaluationInteractor(); var testModel = EvaluationFactory.Create_EvaluationEntity_ValidMinimum(); var result = testClass.CreateEvaluation(testModel); result.ShouldNotBeNull(); result.ShouldNotBe(Guid.Empty); }
public void CreateNewEvaluation_NegativeScoreCount_ReturnsErrorModel() { var testClass = ServiceFactory.Create_EvaluationService(); var testModel = EvaluationFactory.Create_CreateEvaluationDomainModel_ValidMinimum(); testModel.NumberOfScores = -3; var result = testClass.CreateNewEvaluation(testModel); result.GetType().ShouldBe(typeof(ErrorDomainModel)); }
public void GetById_ValidGuid_ReturnsTestEntity() { var testRepo = new Mocks.MockRepository <EvaluationEntity>(); var testEntity = EvaluationFactory.Create_EvaluationEntity_ValidMinimum(Guid.NewGuid()); testRepo.Update(testEntity); var testClass = InteractorFactory.Create_EvaluationInteractor(testRepo); var result = testClass.GetEvaluation(testEntity.Id); result.ShouldBe(testEntity); }
public void CalcWhatIfGrade_InputsOf100_Return100() { var testClass = ServiceFactory.Create_MockInteractor(); var evals = EvaluationFactory.Create_ListOfDomainModels(); evals = evals.Select(e => new EvaluationDomainModel { Id = e.Id, CourseId = e.CourseId, Weight = 1, PointsEarned = 100, TotalPointsPossible = 100 }); var result = testClass.CalcWhatIfGrade(evals); result.WhatIfGrade.ShouldBe(100); }
public void CreateEval_DuplicateName_ThrowsObjectAlreadyExists() { var testRepo = new MockRepository <EvaluationEntity>(); var existingEval = EvaluationFactory.Create_EvaluationEntity_ValidMinimum_CustomId(Guid.NewGuid()); testRepo.Update(existingEval); var testEval = EvaluationFactory.Create_EvaluationEntity_ValidMinimum(); var testClass = InteractorFactory.Create_EvaluationInteractor(testRepo); Should.Throw <ObjectAlreadyExistsException>(() => testClass.CreateEvaluation(testEval)); }
public void GetByCourseId_ValidCourseId_ReturnsTwoEvals() { var testRepo = new MockRepository <EvaluationEntity>(); var testGuid = Guid.NewGuid(); var testEvalOne = EvaluationFactory.Create_EvaluationEntity_ValidMinimum(testGuid); var testEvalTwo = EvaluationFactory.Create_EvaluationEntity_ValidMinimum(testGuid); testRepo.Create(testEvalOne); testRepo.Create(testEvalTwo); var testClass = InteractorFactory.Create_EvaluationInteractor(testRepo); var result = testClass.GetEvaluationsByCourseId(testGuid); result.Count.ShouldBe(2); }
public List <EvaluationEntity> GetEvaluationsByCourseId(Guid courseId) { if (courseId.Equals(Guid.Empty)) { throw new BadInfoException(); } var listOfEvaluations = new List <EvaluationEntity> { EvaluationFactory.Create_EvaluationEntity_ValidMinimum(courseId), EvaluationFactory.Create_EvaluationEntity_ValidMinimum(courseId) }; return(listOfEvaluations); }
public void UpdateEvaluation_ValidObject_UpdatesScore() { var evalGuid = Guid.NewGuid(); var testList = EvaluationFactory.Create_ListValidEvalEntities(); var testRepo = new MockRepository <EvaluationEntity>(testList); var testClass = InteractorFactory.Create_EvaluationInteractor(testRepo); var evaluationToUpdate = testRepo.GetAll().First(); var updatedEvaluation = new EvaluationEntity { Id = evaluationToUpdate.Id, Weight = .2, DropLowest = true, NumberOfScores = 1 }; testClass.UpdateEvaluation(updatedEvaluation); var result = testClass.GetEvaluation(evaluationToUpdate.Id); result.LastModified.ShouldNotBeSameAs(evaluationToUpdate.LastModified); result.Weight.ShouldBe(.2); result.DropLowest.ShouldBe(true); result.NumberOfScores.ShouldBe(1); }
public void DeleteEvaluation_ValidGuid_RemovesEvaluation() { var deleteEvalId = Guid.NewGuid(); var remainEvalId = Guid.NewGuid(); var courseId = Guid.Parse("b59009e4-3f12-4eaf-a82c-bfaa6371b1a4"); var testList = new List <EvaluationEntity> { EvaluationFactory.Create_EvaluationEntity_ValidMinimum_CustomId(deleteEvalId), EvaluationFactory.Create_EvaluationEntity_ValidMinimum_CustomId(remainEvalId) }; var testRepo = new MockRepository <EvaluationEntity>(testList); var testClass = InteractorFactory.Create_EvaluationInteractor(testRepo); testClass.DeleteEvaluation(deleteEvalId); var result = testClass.GetEvaluationsByCourseId(courseId); result.Count.ShouldBe(1); }
public void DeleteEvaluation_ScoresPresent_DeletesScores() { var testEvalId = Guid.NewGuid(); var testEval = EvaluationFactory.Create_EvaluationEntity_ValidMinimum_CustomId(testEvalId); var testDomainModel = new EvaluationDomainModel(testEval); var testScores = ScoreFactory.Create_ListOfScoreEntity(testEvalId); var testScoreRepo = new MockRepository <ScoreEntity>(testScores); var scoreInteractor = TestDatas.Scores.InteractorFactory.Create_ScoreInteractor(); scoreInteractor.Repo = testScoreRepo; var mockEvalInteractor = TestDatas.Evaluations.InteractorFactory.Create_MockEvaluationInteractor(); var testClass = ServiceFactory.Create_EvaluationService(); testClass.EvaluationInteractor = mockEvalInteractor; testClass.ScoreInteractor = scoreInteractor; var result = testClass.DeleteEvaluation(testEvalId); var resultScores = testClass.ScoreInteractor.GetScoresByEvaluationId(testEvalId); result.GetType().ShouldNotBe(typeof(ErrorDomainModel)); resultScores.Count.ShouldBe(0); }
public void CalcWhatIfGrade_WeightedInputsOf100_Return100() { var testClass = ServiceFactory.Create_MockInteractor(); var evals = EvaluationFactory.Create_ListOfDomainModels().ToList(); evals[0].TotalPointsPossible = 25; evals[0].PointsEarned = 25; evals[0].Weight = .5; evals[1].TotalPointsPossible = 25; evals[1].PointsEarned = 25; evals[1].Weight = .15; evals[2].TotalPointsPossible = 25; evals[2].PointsEarned = 25; evals[2].Weight = .15; evals[3].TotalPointsPossible = 25; evals[3].PointsEarned = 25; evals[3].Weight = .20; var result = testClass.CalcWhatIfGrade(evals); result.WhatIfGrade.ShouldBe(100); }