public async Task TakeSnapshot_sets_blob_properties_correctly_if_snapshot_blob_not_exists( Guid streamId, State state, IStateRehydrator <State> rehydrator) { // Arrange Mock.Get(rehydrator) .Setup(x => x.TryRehydrateState(streamId)) .ReturnsAsync(state); BlobSnapshotter <State> sut = GenerateSut(rehydrator); // Act await sut.TakeSnapshot(streamId); // Assert ICloudBlob blob = await GetBlob(streamId); blob.Properties.ContentType.Should().Be("application/json"); blob.Properties.ContentEncoding.Should().BeEquivalentTo("UTF-8"); }
public async Task TaksSnapshot_creates_new_snapshot_blob_if_not_exists( Guid streamId, State state, IStateRehydrator <State> rehydrator) { // Arrange Mock.Get(rehydrator) .Setup(x => x.TryRehydrateState(streamId)) .ReturnsAsync(state); BlobSnapshotter <State> sut = GenerateSut(rehydrator); // Act await sut.TakeSnapshot(streamId); // Assert ICloudBlob blob = await GetBlob(streamId); string content = await DownloadContent(blob); State snapshot = JsonConvert.DeserializeObject <State>(content); snapshot.Should().BeEquivalentTo(state); }