public async Task ReplaceDocumentAsync_ShouldReplaceDocument_CollectionHasOriginalDocument()
        {
            // Arrange
            var inserted = new BsonDocument
            {
                ["Value"] = Fixture.Create <string>()
            };

            await _destCollection.InsertOneAsync(inserted);

            // Act
            var replacement = new BsonDocument
            {
                ["_id"]   = inserted["_id"],
                ["Value"] = "replaced"
            };
            await _sut.ReplaceDocumentAsync(new ReplaceOneModel <BsonDocument>(replacement.GetFilterBy("_id"), replacement),
                                            CancellationToken.None);

            // Assert
            var afterReplace = _destCollection.FindSync(FilterDefinition <BsonDocument> .Empty).ToList();

            afterReplace.Should().HaveCount(1).And.AllBeEquivalentTo(replacement);
        }