예제 #1
0
        public async Task Should_save_snapshot_in_snapshot_repository()
        {
            //Arrange
            var snapshotRepository = new Mock <ISnapshotRepository>();
            var sut      = new SnapshotStore(snapshotRepository.Object, Mock.Of <IEventStoreSerDes>(), Mock.Of <ILogger <SnapshotStore> >());
            var snapshot = "snapshot";
            var stream   = "stream";

            //Act
            await sut.StoreSnapshotAsync(new SnapshotEnvelope(snapshot, 5, stream), It.IsAny <CancellationToken>());

            //Assert
            snapshotRepository.Verify(er => er.StoreSnapshotAsync(stream, It.IsAny <SnapshotDescriptor>(), It.IsAny <CancellationToken>()), Times.Once);
        }