public async Task GetTranscriptImportedBySchoolIdAsync_should_return_expected_value() { // Arrange: var studentNumber = "AP-API-IT"; var studentName = "IntegrationTests, ApplicationPlanner.API"; var dob = "2000/01/01"; var dobParts = dob.Split('/'); var expectedValue = new TranscriptImportedViewModel { Id = integrationTestPortfolioId, UserAccountId = 293945, AvatarFileName = null, SchoolCountryType = CC.Common.Enum.CountryType.US, StudentName = studentName, DateOfBirth = new DateTime(int.Parse(dobParts[0]), int.Parse(dobParts[1]), int.Parse(dobParts[2])), GradeId = 11, GradeKey = "GRADE_11", StudentId = studentNumber, TranscriptId = 1000000, // We know in Xello TranscriptId starts at 1000000 ImportedDate = DateTime.UtcNow }; // Reset await _sql.ExecuteAsync("DELETE FROM ApplicationPlanner.Transcript WHERE PortfolioId = @portfolioId", new { portfolioId = integrationTestPortfolioId }); await _sql.ExecuteAsync("DELETE FROM ApplicationPlanner.TranscriptLog WHERE StudentNumber = @studentNumber", new { studentNumber }); // Import a transcript and automatch it to the integration test student await _qaRepository.ImportTranscriptAsync(integrationTestPortfolioId, integrationTestSchoolId, studentNumber, studentName, dob, "*****@*****.**"); // Act: var result = (await _transcriptRepository.GetTranscriptImportedBySchoolIdAsync(integrationTestSchoolId)).ToList(); // Assert: Assert.IsTrue(result.IsNotNullOrEmpty()); Assert.IsTrue(result.Count == 1); Assert.AreEqual(expectedValue.Id, result[0].Id); Assert.AreEqual(expectedValue.UserAccountId, result[0].UserAccountId); Assert.AreEqual(expectedValue.AvatarFileName, result[0].AvatarFileName); Assert.AreEqual(expectedValue.SchoolCountryType, result[0].SchoolCountryType); Assert.AreEqual(expectedValue.StudentName, result[0].StudentName); Assert.AreEqual(expectedValue.DateOfBirth, result[0].DateOfBirth); Assert.AreEqual(expectedValue.GradeId, result[0].GradeId); Assert.AreEqual(expectedValue.GradeKey, result[0].GradeKey); Assert.AreEqual(expectedValue.StudentId, result[0].StudentId); Assert.IsTrue(result[0].TranscriptId >= expectedValue.TranscriptId); // the id for the new transcript should be >= than the min allowed Assert.IsTrue(result[0].ImportedDate != null); }
public async Task GetTranscriptImportedResponseModelAsync_should_set_all_properties() { // Arrange var input = new TranscriptImportedViewModel { Id = 15829045, UserAccountId = 5678, SchoolCountryType = CountryType.US, AvatarFileName = "", StudentName = "Todd, Motto", DateOfBirth = DateTime.Now.AddYears(-17), GradeId = 11, GradeKey = "GRADE_11", StudentId = "STUD-1234", TranscriptId = 1, ImportedDate = DateTime.UtcNow }; var timezoneDetails = new TimeZoneDetailModel { SQLKey = "Eastern Standard Time" }; _mockAvatarService.Setup(x => x.GetStudentAvatarDefaultUrl()).Returns(_avatarUrl); _mockTimeZoneRepository.Setup(x => x.GeTimeZoneIdByPortfolioIdAsync(It.IsAny <int>())).ReturnsAsync(1); _mockTimeZoneRepository.Setup(x => x.GeTimeZoneDetailByIdAsync(It.IsAny <int>())).ReturnsAsync(timezoneDetails); // Act var result = await CreateService().GetTranscriptImportedResponseModelAsync(new List <TranscriptImportedViewModel> { input }, 1234); // Assert Assert.AreEqual(input.Id, result.First().Id); Assert.AreEqual(_avatarUrl, result.First().AvatarUrl); Assert.AreEqual(input.StudentName, result.First().StudentName); Assert.AreEqual(input.DateOfBirth, result.First().DateOfBirth); Assert.AreEqual(input.GradeId, result.First().GradeId); Assert.AreEqual(input.GradeKey, result.First().GradeKey); Assert.AreEqual(input.StudentId, result.First().StudentId); Assert.AreEqual(input.TranscriptId, result.First().TranscriptId); Assert.AreEqual(DateTime.SpecifyKind(input.ImportedDate, DateTimeKind.Utc).ToLocalTime(), result.First().ImportedDate); }