public async Task UpdateMultipleDomainObjectsTests() { var raceDao = new GenericDao <Entities.Race>(new DefaultConnectionFactory()); var comparisonRaceIds = new int[] { 10, 20, 30 }; var updateCondition = new QueryConditionBuilder() .DeclareConditionNode( QueryConditionNodeType.Or, () => new QueryConditionBuilder() .DeclareCondition(nameof(Entities.EntityObjectBase.Id), QueryConditionType.Equals, comparisonRaceIds[0]), () => new QueryConditionBuilder() .DeclareConditionNode( QueryConditionNodeType.Or, () => new QueryConditionBuilder() .DeclareCondition(nameof(Entities.EntityObjectBase.Id), QueryConditionType.Equals, comparisonRaceIds[1]), () => new QueryConditionBuilder() .DeclareCondition(nameof(Entities.EntityObjectBase.Id), QueryConditionType.Equals, comparisonRaceIds[2]))) .Build(); var expectedNumberOfSensors = 10; var expectedDate = DateTime.Now.Date.AddYears(1); foreach (var raceId in comparisonRaceIds) { var raceEntity = await raceDao.GetByIdAsync(raceId).ConfigureAwait(false); Assert.NotEqual(expectedNumberOfSensors, raceEntity.NumberOfSensors); Assert.NotEqual(expectedDate, raceEntity.Date); } var updateColumns = new { NumberOfSensors = expectedNumberOfSensors, Date = expectedDate }; var affectedRows = await raceDao.UpdateAsync(updateColumns, updateCondition).ConfigureAwait(false); Assert.Equal(comparisonRaceIds.Length, affectedRows); foreach (var raceId in comparisonRaceIds) { var raceEntity = await raceDao.GetByIdAsync(raceId).ConfigureAwait(false); Assert.Equal(expectedNumberOfSensors, raceEntity.NumberOfSensors); Assert.Equal(expectedDate, raceEntity.Date); } }
public void UpdateWithInvalidNewObject() { var skierDao = new GenericDao <Entities.Skier>(new DefaultConnectionFactory()); Assert.ThrowsAsync <ArgumentNullException>(() => skierDao.UpdateAsync(null)); }