Пример #1
0
        public async Task Smoke()
        {
            var config = Config.Current;

            config.GetSettings <EngineSettings>().StreamName = "stream1";
            var streamStoreProvider = new SqlStreamStoreProvider();
            var writer = streamStoreProvider.CreateJournalWriter(0);

            foreach (var i in Enumerable.Range(1, 101))
            {
                writer.Send(new Set <int>("key" + i, i));
            }
            await writer.DisposeAsync();

            var reader  = streamStoreProvider.CreateJournalReader();
            var records = new List <JournalRecord>(reader.GetRecords().ToArray());

            Assert.AreEqual(101, records.Count);
            Assert.AreEqual("key1", ((Set <int>)records[0].Command).Key);

            records.Clear();
            var sub = streamStoreProvider
                      .CreateJournalSubscriptionSource()
                      .Subscribe(0, jr => records.Add(jr));

            while (!sub.Ready())
            {
                await Task.Delay(TimeSpan.FromMilliseconds(50));
            }
            Console.WriteLine("sub.Ready()");

            Assert.AreEqual(101, records.Count);
            Assert.AreEqual("key1", ((Set <int>)records[0].Command).Key);
        }
Пример #2
0
        private void ConfigurePostgres()
        {
            _connection = new NpgsqlConnection(PgsqlConnectionString);
            var settings = new PostgresStreamStoreSettings(PgsqlConnectionString);

            settings.Schema = "randy";
            SqlStreamStoreProvider.InitializePgSqlStreamStore(settings);
            _streamStore = new PostgresStreamStore(settings);
        }
Пример #3
0
        public void ConfigSetStorageProvider()
        {
            var config      = Config.Current;
            var streamStore = new InMemoryStreamStore();
            var provider    = new SqlStreamStoreProvider(streamStore);

            config.SetStorageProvider(provider);
            var resolvedProvider = config.GetStorageProvider();

            Assert.AreSame(provider, resolvedProvider);
        }
Пример #4
0
        public void Setup()
        {
            SqlStreamStore.Logging.LogProvider.IsDisabled = true;
            var config = Config.Current;

            _streamName = "test-" + DateTime.Now.ToFileTimeUtc();
            config.GetSettings <EngineSettings>().StreamName = _streamName;
            config.SerializerName = Serializers.NewtonsoftJson;

            //ConfigurePostgres();

            ConfigureMssql2019();
            _provider = new SqlStreamStoreProvider(_streamStore);
            _writer   = _provider.CreateJournalWriter(0);
        }