コード例 #1
0
            public async void ReadAppend()
            {
                var appender = new StreamAppenderAsync(StreamAppenderAsync.StreamAppenderOptions.UseSingleStream(this.appendStream));

                var es     = new EventStoreAsync(appender);
                var id     = new StringId("id1");
                var events = new IEvent[] { BigEventData.Create(id, 12), BigEventData.Create(id, 128), BigEventData.Create(id, 13) };

                var id2     = new StringId("id2");
                var events2 = new IEvent[] { BigEventData.Create(id, 100), BigEventData.Create(id, 128), BigEventData.Create(id, 100) };

                var events3 = new IEvent[] { BigEventData.Create(id, 44) };

                await es.AppendToStream(id, 0, events.ToList());

                await es.AppendToStream(id2, 0, events2.ToList());

                await es.AppendToStream(id, 1, events3.ToList());

                Assert.Equal(2800, this.appendStream.Length);

                var stream = await es.LoadEventStream(id);

                Assert.Equal(2, stream.Version);

                var stream2 = await es.LoadEventStream(id2);

                Assert.Equal(1, stream2.Version);
            }
コード例 #2
0
        public async Task WriteFile()
        {
            var fs = new FileAppendOnlyStoreAsync(new FileAppendOnlyStoreAsync.Options(File)
            {
                FileStream = s => Path.Combine(this.File, s + ".dat")
            });
            var es = new EventStoreAsync(fs);

            var id = new GuidId(Guid.NewGuid());
            await es.AppendToStream(id, 0, new List <IEvent>() { new MyNewEventEvent(id.ToString(), Guid.NewGuid(), DateTime.UtcNow) });
        }
コード例 #3
0
            public async void WriteAppend()
            {
                var appender = new StreamAppenderAsync(StreamAppenderAsync.StreamAppenderOptions.UseSingleStream(this.appendStream));

                var es     = new EventStoreAsync(appender);
                var id     = new StringId("id1");
                var events = new IEvent[] { BigEventData.Create(id, 12), BigEventData.Create(id, 128), BigEventData.Create(id, 13) };

                await es.AppendToStream(id, 0, events.ToList());

                Assert.Equal(962, this.appendStream.Length);
            }
コード例 #4
0
        public async Task WriteStreamAndExtraxt()
        {
            var fs = new FileAppendOnlyStoreAsync(File);

            var es  = new EventStoreAsync(fs);
            var id2 = GuidId.NewGuidId();
            var id1 = GuidId.NewGuidId();

            await es.AppendToStream(id2, 0, new[] { new BigEventData(), new BigEventData(), new BigEventData() });

            await es.AppendToStream(id1, 0, new[] { new BigEventData(), new BigEventData(), new BigEventData() });

            await es.AppendToStream(id2, 1, new[] { new BigEventData(), new BigEventData(), new BigEventData() });

            await es.AppendToStream(id1, 1, new[] { new BigEventData(), new BigEventData(), new BigEventData() });

            await fs.ExtractMasterStream(new DirectoryInfo(Path.Combine(File, "out")), new NameDashGuidNaming(), 0, int.MaxValue);


            Assert.True(true, "Tested in: " + File);
        }