public void GettingKnownReturnsResult()
        {
            var source = new DomainResult(_testCommand, ResultCode.OK, string.Empty);

            _persistanceStore.Save(source);
            var results = _resultPersistance.Get(_testCommand.TrackingId);

            Assert.AreEqual(1, results.Count());
            Assert.AreEqual(source.Id, results.First().Id);
        }
示例#2
0
        public void TestAsInt()
        {
            PersistanceStore.Save(new QueryableTestObject {
                IntVersion = 1
            });
            var query  = QueryElement.FieldEquals("IntVersion", 1);
            var result = QueryStore.Query <QueryableTestObject>(query);

            Assert.AreEqual(1, result.Count());
            Assert.AreEqual(1, result.First().IntVersion);

            query  = QueryElement.FieldCompare("IntVersion", FieldComparison.Greater, 0);
            result = QueryStore.Query <QueryableTestObject>(query);
            Assert.AreEqual(1, result.Count());
            Assert.AreEqual(1, result.First().IntVersion);

            query  = QueryElement.FieldCompare("IntVersion", FieldComparison.GreaterEquals, 1);
            result = QueryStore.Query <QueryableTestObject>(query);
            Assert.AreEqual(1, result.Count());
            Assert.AreEqual(1, result.First().IntVersion);


            query  = QueryElement.FieldCompare("IntVersion", FieldComparison.Less, 2);
            result = QueryStore.Query <QueryableTestObject>(query);
            Assert.AreEqual(1, result.Count());
            Assert.AreEqual(1, result.First().IntVersion);

            query  = QueryElement.FieldCompare("IntVersion", FieldComparison.LessOrEquals, 1);
            result = QueryStore.Query <QueryableTestObject>(query);
            Assert.AreEqual(1, result.Count());
            Assert.AreEqual(1, result.First().IntVersion);

            query  = QueryElement.FieldCompare("IntVersion", FieldComparison.Different, 1);
            result = QueryStore.Query <QueryableTestObject>(query);
            Assert.AreEqual(0, result.Count());

            query  = QueryElement.FieldCompare("IntVersion", FieldComparison.Different, 0);
            result = QueryStore.Query <QueryableTestObject>(query);
            Assert.AreEqual(1, result.Count());
            Assert.AreEqual(1, result.First().IntVersion);
        }
示例#3
0
 public void Save(IEnumerable <DomainEvent> events, SessionInfo sessionInfo)
 {
     foreach (var @event in events)
     {
         @event.SessionInfo = sessionInfo;
         var toSave       = new PersistedDomainEvent(@event);
         var shouldBeNull = _persistanceStore.Get <PersistedDomainEvent>(toSave.Id);
         if (shouldBeNull != null)
         {
             var error = string.Format("Cannot save an event with an existing ID! Id: {0}, type={1}", toSave.Id,
                                       @event.GetType());
             _logger.Error(error);
             throw new ArgumentException(error);
         }
         _persistanceStore.Save(toSave);
     }
 }
示例#4
0
 public void Save(DomainResult result)
 {
     _logger.DebugFormat("Saving result {0} for tracking {1}", result.ResultCode, result.TrackingId);
     _persistanceStore.Save(result);
 }
示例#5
0
        public void TestObjectCanBeStored()
        {
            var persistedObject = new PersistedString {
                Content = "content", Id = "Id"
            };

            PersistanceStore.Save(persistedObject);
            var saved = PersistanceStore.Get <PersistedString>("Id");

            Assert.IsNotNull(saved);
            Assert.AreEqual("Id", saved.Id);
            Assert.AreEqual("content", saved.Content);
        }