public void TestBaseRepositoryDatesMappedNullCrudAsync() { // Setup var entity = new DatesMapClass { SessionId = Guid.NewGuid(), ColumnDateMapped = null, ColumnDateTimeMapped = null, ColumnDateTime2Mapped = null, ColumnSmallDateTimeMapped = null, ColumnDateTimeOffsetMapped = null, ColumnTimeMapped = null }; using (var repository = new DatesMapClassRepository(Database.ConnectionStringForRepoDb)) { // Act Insert var insertResult = repository.InsertAsync(entity); var id = insertResult.Result; // Act Query var queryResult = repository.QueryAsync(e => e.SessionId == (Guid)id); var data = queryResult.Result.FirstOrDefault(); // Assert Assert.IsNotNull(data); Assert.IsNull(data.ColumnDateMapped); Assert.IsNull(data.ColumnDateTimeMapped); Assert.IsNull(data.ColumnDateTime2Mapped); Assert.IsNull(data.ColumnSmallDateTimeMapped); Assert.IsNull(data.ColumnDateTimeOffsetMapped); Assert.IsNull(data.ColumnTimeMapped); } }
public void TestBaseRepositoryDatesMappedCrudAsync() { // Setup var dateTime = new DateTime(1970, 1, 1, 12, 50, 30, DateTimeKind.Utc); var dateTime2 = dateTime.AddMilliseconds(100); var entity = new DatesMapClass { SessionId = Guid.NewGuid(), ColumnDateMapped = dateTime.Date, ColumnDateTimeMapped = dateTime, ColumnDateTime2Mapped = dateTime2, ColumnSmallDateTimeMapped = dateTime, ColumnDateTimeOffsetMapped = new DateTimeOffset(dateTime.Date).ToOffset(TimeSpan.FromHours(2)), ColumnTimeMapped = dateTime.TimeOfDay }; using (var repository = new DatesMapClassRepository(Database.ConnectionStringForRepoDb)) { // Act Insert var insertResult = repository.InsertAsync(entity); var id = insertResult.Result; // Act Query var queryResult = repository.QueryAsync(e => e.SessionId == (Guid)id); var data = queryResult.Result.FirstOrDefault(); // Assert Assert.IsNotNull(data); Assert.AreEqual(entity.ColumnDateMapped, data.ColumnDateMapped); Assert.AreEqual(entity.ColumnDateTimeMapped, data.ColumnDateTimeMapped); Assert.AreEqual(entity.ColumnDateTime2Mapped, data.ColumnDateTime2Mapped); Assert.AreEqual(dateTime.AddSeconds(30), data.ColumnSmallDateTimeMapped); // Always in a fraction of minutes, round (off/up) Assert.AreEqual(entity.ColumnDateTimeOffsetMapped, data.ColumnDateTimeOffsetMapped); Assert.AreEqual(entity.ColumnTimeMapped, data.ColumnTimeMapped); } }