Ejemplo n.º 1
0
        public GetTest()
        {
            _redis        = A.Fake <IRedisClient>();
            _messageQueue = A.Fake <IMessageQueue>();
            var redisEventStore = new DataStores.RedisEventStore(_redis, "test", _messageQueue);
            var commits         = new RedisValue[] { 1, 3, 5 };
            var evenList        = new List <TestEvent>
            {
                new TestEvent {
                    Version = 1
                },
                new TestEvent {
                    Version = 2
                },
                new TestEvent {
                    Version = 3
                }
            };
            var settings = new JsonSerializerSettings {
                TypeNameHandling = TypeNameHandling.All
            };

            A.CallTo(() => _redis.ListLengthAsync($"{{EventStore:test}}:{Guid.Empty}")).Returns(Task.Run(() => (long)3));
            A.CallTo(() => _redis.ListRangeAsync($"{{EventStore:test}}:{Guid.Empty}", 1, -1)).Returns(commits);
            A.CallTo(() => _redis.HashGetAsync(A <RedisKey> ._, 1)).Returns(JsonConvert.SerializeObject(evenList[0], settings));
            A.CallTo(() => _redis.HashGetAsync(A <RedisKey> ._, 3)).Returns(JsonConvert.SerializeObject(evenList[1], settings));
            A.CallTo(() => _redis.HashGetAsync(A <RedisKey> ._, 5)).Returns(JsonConvert.SerializeObject(evenList[2], settings));

            _events = redisEventStore.GetAsync(Guid.Empty.ToString(), "TestType", 1).Result;
        }
Ejemplo n.º 2
0
        public SaveTest()
        {
            _redis     = A.Fake <IRedisClient>();
            _trans     = A.Fake <ITransaction>();
            _eventList = new List <TestEvent> {
                new TestEvent {
                    Id = "12345"
                }
            };
            _messageQueue = A.Fake <IMessageQueue>();
            var database = A.Fake <IDatabase>();

            _redisEventStore = new DataStores.RedisEventStore(_redis, "test", _messageQueue);

            A.CallTo(() => _redis.Database).Returns(database);
            A.CallTo(() => _redis.Database.CreateTransaction(null)).Returns(_trans);
            A.CallTo(() => _redis.HashLengthAsync("EventStore:test")).Returns(Task.Run(() => (long)2));

            var settings = new JsonSerializerSettings {
                TypeNameHandling = TypeNameHandling.All
            };

            _serializedEvent = JsonConvert.SerializeObject(_eventList.First(), settings);
        }