public void MetRulesDoNotAddFailedObjects() { // Arrange var collection = new ExampleBusinessRuleCollection(10, (int id) => { return(id % 2 == 0); }); // Act var result = collection.IsMet(); // Assert Assert.AreEqual(5, result.FailedObjects.Count); }
public void IsMetCanRunTwiceWithoutDuplicatingDataOrCrashingWithDuplicateDictionaryKeys() { // Arrange var collection = new ExampleBusinessRuleCollection(10, (int id) => { return(id % 2 == 0); }); // Act var result = collection.IsMet(); result = collection.IsMet(); // Assert Assert.AreEqual(5, result.FailedObjects.Count); }
public void BusinessRuleCollectionTests_1000_ConccurentDictionaryIsThreadSafe() { // Arrange // Act int i = 0; BusinessRuleResult result = null; while (i++ < 1000) { var collection = new ExampleBusinessRuleCollection(2, (int id) => false); result = collection.IsMet(); } }