Exemple #1
0
        public void Can_Write_And_Read_A_Null_Instant_Stored_As_Int64()
        {
            Instant startInstant = TestClock.Now;
            var     testEvent    = new InstantTestEntity
            {
                Description   = "Can_Write_And_Read_A_Null_Instant_Stored_As_Int64",
                StartInstant  = startInstant,
                FinishInstant = null
            };

            using (ISession session = SessionFactory.OpenSession())
                using (ITransaction transaction = session.BeginTransaction())
                {
                    session.Save(testEvent);
                    transaction.Commit();
                }

            InstantTestEntity retrievedEvent;

            using (ISession session = SessionFactory.OpenSession())
                using (ITransaction transaction = session.BeginTransaction())
                {
                    retrievedEvent = session.Get <InstantTestEntity>(testEvent.Id);
                    transaction.Commit();
                }

            Assert.That(retrievedEvent.StartInstant, Is.EqualTo(testEvent.StartInstant));
            Assert.That(retrievedEvent.FinishInstant, Is.EqualTo(testEvent.FinishInstant));
            Assert.That(retrievedEvent, Is.EqualTo(testEvent));
        }
Exemple #2
0
 public void Can_Write_Instant_Stored_As_Int64()
 {
     using (ISession session = SessionFactory.OpenSession())
         using (ITransaction transaction = session.BeginTransaction())
         {
             Instant startInstant = TestClock.Now;
             var     testEvent    = new InstantTestEntity
             {
                 Description   = "Can_Write_Instant_Stored_As_Int64",
                 StartInstant  = startInstant,
                 FinishInstant = startInstant.Plus(Duration.FromHours(1))
             };
             session.Save(testEvent);
             transaction.Commit();
             Assert.That(testEvent.Id, Is.Not.Null);
         }
 }
Exemple #3
0
        public void Can_Query_By_MoreThan_Instant_Stored_As_Int64()
        {
            Instant startInstant  = TestClock.Now.Plus(Duration.FromHours(24));
            Instant finishInstant = startInstant.Plus(Duration.FromHours(1));
            var     testEvent     = new InstantTestEntity
            {
                Description   = " Can_Query_By_MoreThan_Instant_Stored_As_Int64",
                StartInstant  = startInstant,
                FinishInstant = finishInstant
            };

            using (ISession session = SessionFactory.OpenSession())
                using (ITransaction transaction = session.BeginTransaction())
                {
                    session.Save(testEvent);
                    transaction.Commit();
                }

            Instant beforeInstant = startInstant.Minus(Duration.FromSeconds(1));

            using (ISession session = SessionFactory.OpenSession())
                using (ITransaction transaction = session.BeginTransaction())
                {
                    var query = session.Query <InstantTestEntity>()
                                .Where(x => x.Id == testEvent.Id && x.StartInstant > beforeInstant);
                    var retrievedEvent = query.SingleOrDefault();
                    transaction.Commit();
                    Assert.That(testEvent, Is.Not.Null);
                    Assert.That(testEvent, Is.EqualTo(retrievedEvent));
                }

            using (ISession session = SessionFactory.OpenSession())
                using (ITransaction transaction = session.BeginTransaction())
                {
                    var query = session.Query <InstantTestEntity>()
                                .Where(x => x.Id == testEvent.Id && x.StartInstant > beforeInstant && x.FinishInstant >= finishInstant);
                    var retrievedEvent = query.SingleOrDefault();
                    transaction.Commit();
                    Assert.That(testEvent, Is.Not.Null);
                    Assert.That(testEvent, Is.EqualTo(retrievedEvent));
                }
        }