コード例 #1
0
 public void EmptyDisjunctionRevisionOfEntityQuery()
 {
     var result = AuditReader().CreateQuery()
         .ForRevisionsOfEntity(typeof(StrIntTestEntity), false, true)
         .Add(AuditEntity.Disjunction())
         .GetResultList();
     Assert.AreEqual(0, result.Count);
 }
コード例 #2
0
 public void VerifyBetweenInsideDisjunction()
 {
     var result = AuditReader().CreateQuery()
         .ForRevisionsOf<StrIntTestEntity>()
         .Add(AuditEntity.Disjunction()
              	.Add(AuditEntity.Property("Number").Between(0, 5))
              	.Add(AuditEntity.Property("Number").Between(20, 100)))
         .Results();
     foreach (var number in result.Select(entity => entity.Number))
     {
         Assert.That(number, Is.InRange(0, 5).Or.InRange(20, 100));
     }
 }
コード例 #3
0
        public void VerifyMaximizeInDisjunction()
        {
            var idsToQuery = new[] { id1, id3 };
            var disjuction = AuditEntity.Disjunction();

            foreach (var id in idsToQuery)
            {
                disjuction.Add(AuditEntity.RevisionNumber().Maximize().Add(AuditEntity.Id().Eq(id)));
            }
            var result = AuditReader().CreateQuery()
                         .ForRevisionsOf <StrIntTestEntity>(true)
                         .Add(disjuction)
                         .Results();
            var idsSeen = new HashSet <int>();

            foreach (var entity in result)
            {
                var id = entity.Id;
                idsToQuery.Should().Contain(id);
                idsSeen.Add(id).Should().Be.True();
            }
        }