public void Should_add_or_operator_to_specification()
{
var target = new Specification<string>(s => s.Contains("a")).Or(new Specification<string>(s => s.Length > 3));
var items = new[] { "a", "bb", "bbbb", "bbbb" };
var result = (from item in items
where target.IsSatisfiedBy(item)
select item).ToList();
foreach (var value in result)
{
Assert.That(value.Length > 3 || value.Contains("a"), Is.True);
}
}