public void ShouldBuildDbParametersForGivenModel() { // Setup var expectedDate = DateTime.UtcNow; var expectedUser = new AuthorModel { Id = Guid.NewGuid(), FirstName = "firstname", LastName = "lastname", Email = "*****@*****.**", CreatedDate = expectedDate, UpdatedDate = expectedDate, IsDeleted = true }; var mapper = new AutoDbMapper <AuthorModel>(); // Execute var actual = mapper.BuildDbParametersFrom(expectedUser); // Assert Assert.AreEqual(expectedUser.Id, (Guid)actual["Id"]); Assert.AreEqual(expectedUser.FirstName, actual["FirstName"] as string); Assert.AreEqual(expectedUser.LastName, actual["LastName"] as string); Assert.AreEqual(expectedUser.Email, actual["Email"] as string); Assert.AreEqual(expectedUser.CreatedDate.ToString(CultureInfo.InvariantCulture), expectedDate.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(expectedUser.UpdatedDate.ToString(CultureInfo.InvariantCulture), expectedDate.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(expectedUser.IsDeleted, (bool)actual["IsDeleted"]); }
public void ShouldBuildModelObjectFromReader() { // Setup var expectedDate = DateTime.UtcNow; var dataReader = new Mock <IDataReader>(); dataReader.SetupSequence(reader => reader.Read()).Returns(true).Returns(false); dataReader.SetupSequence(dr => dr["Id"]).Returns(new Guid("4C565CBE-4003-4624-B399-A3E40096A7D0")); dataReader.SetupSequence(dr => dr["FirstName"]).Returns("firstname1"); dataReader.SetupSequence(dr => dr["LastName"]).Returns("lastname1"); dataReader.SetupSequence(dr => dr["Email"]).Returns("email1"); dataReader.SetupSequence(dr => dr["PasswordHash"]).Returns("passwordhash1"); dataReader.SetupSequence(dr => dr["CreatedDate"]).Returns(expectedDate); dataReader.SetupSequence(dr => dr["UpdatedDate"]).Returns(expectedDate); dataReader.SetupSequence(dr => dr["IsDeleted"]).Returns(true); var mapper = new AutoDbMapper <AuthorModel>(); // Execute var actualUser = mapper.BuildFrom(dataReader.Object); // Assert Assert.AreEqual(actualUser.Id.ToString(), "4c565cbe-4003-4624-b399-a3e40096a7d0"); Assert.AreEqual(actualUser.FirstName, "firstname1"); Assert.AreEqual(actualUser.LastName, "lastname1"); Assert.AreEqual(actualUser.Email, "email1"); Assert.AreEqual(actualUser.CreatedDate.ToString(CultureInfo.InvariantCulture), expectedDate.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(actualUser.UpdatedDate.ToString(CultureInfo.InvariantCulture), expectedDate.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(actualUser.IsDeleted, true); }
public void ShouldBuildListOfModelObjectsFromReader() { // Setup var expectedDate = DateTime.UtcNow; var dataReader = new Mock <IDataReader>(); dataReader.SetupSequence(reader => reader.Read()).Returns(true).Returns(true).Returns(true).Returns(false); dataReader.SetupSequence(dr => dr["Id"]) .Returns(new Guid("4C565CBE-4003-4624-B399-A3E40096A7D0")) .Returns(null) .Returns(new Guid("94664F60-1F40-4C98-8870-C662B3B96605")); dataReader.SetupSequence(dr => dr["FirstName"]) .Returns("firstname1") .Returns("firstname2") .Returns("firstname2"); dataReader.SetupSequence(dr => dr["LastName"]) .Returns("lastname1") .Returns("lastname2") .Returns("lastname3"); dataReader.SetupSequence(dr => dr["Email"]).Returns("email1").Returns("email2").Returns("email2"); dataReader.SetupSequence(dr => dr["CreatedDate"]).Returns(expectedDate).Returns(null).Returns(expectedDate); dataReader.SetupSequence(dr => dr["UpdatedDate"]).Returns(expectedDate).Returns(expectedDate).Returns(null); dataReader.SetupSequence(dr => dr["IsDeleted"]).Returns(true).Returns(null).Returns(false); var mapper = new AutoDbMapper <AuthorModel>(); // Execute var actualUser = mapper.BuildListFrom(dataReader.Object).ToList(); // Assert Assert.AreEqual(actualUser[0].Id.ToString().ToUpper(), "4C565CBE-4003-4624-B399-A3E40096A7D0"); Assert.AreEqual(actualUser[0].FirstName, "firstname1"); Assert.AreEqual(actualUser[0].LastName, "lastname1"); Assert.AreEqual(actualUser[0].Email, "email1"); Assert.AreEqual(actualUser[0].CreatedDate.ToString(CultureInfo.InvariantCulture), expectedDate.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(actualUser[0].UpdatedDate.ToString(CultureInfo.InvariantCulture), expectedDate.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(actualUser[0].IsDeleted, true); Assert.AreEqual(actualUser[1].Id.ToString().ToUpper(), Guid.Empty.ToString()); Assert.AreEqual(actualUser[1].FirstName, "firstname2"); Assert.AreEqual(actualUser[1].LastName, "lastname2"); Assert.AreEqual(actualUser[1].Email, "email2"); Assert.AreEqual(actualUser[1].CreatedDate.ToString(CultureInfo.InvariantCulture), DateTime.MinValue.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(actualUser[1].UpdatedDate.ToString(CultureInfo.InvariantCulture), expectedDate.ToString(CultureInfo.InvariantCulture)); Assert.AreEqual(actualUser[1].IsDeleted, false); }