public void FromBulkWriteException_should_return_expected_result() { var processedRequests = new[] { new InsertOneModel <BsonDocument>(new BsonDocument("_id", 1)) }; var upserts = new List <BulkWriteUpsert>(); var bulkWriteResult = new BulkWriteResult <BsonDocument> .Acknowledged(1, 1, 0, 0, 0, processedRequests, upserts); var writeErrors = new[] { new BulkWriteError(1, ServerErrorCategory.Uncategorized, 2, "message", new BsonDocument("details", 1)) }; var writeConcernError = new WriteConcernError(1, "message", new BsonDocument("details", 1)); var unprocessedRequests = new List <WriteModel <BsonDocument> >(); var bulkWriteException = new MongoBulkWriteException <BsonDocument>(__connectionId, bulkWriteResult, writeErrors, writeConcernError, unprocessedRequests); var result = MongoWriteException.FromBulkWriteException(bulkWriteException); result.ConnectionId.Should().Be(__connectionId); result.InnerException.Should().BeSameAs(bulkWriteException); result.Message.Should().Be("A write operation resulted in an error." + Environment.NewLine + " message" + Environment.NewLine + " message"); result.WriteConcernError.Should().Be(writeConcernError); result.WriteError.Should().Be(writeErrors[0]); }
public void FromBulkWriteException_should_return_expected_result() { var processedRequests = new[] { new InsertOneModel <BsonDocument>(new BsonDocument("_id", 1)) }; var upserts = new List <BulkWriteUpsert>(); var bulkWriteResult = new BulkWriteResult <BsonDocument> .Acknowledged(1, 1, 0, 0, 0, processedRequests, upserts); var writeErrors = new[] { new BulkWriteError(1, ServerErrorCategory.Uncategorized, 2, "message", new BsonDocument("details", 1)) }; var writeConcernError = new WriteConcernError(1, null, "message", new BsonDocument("details", 1), new[] { "RetryableWriteError" }); var unprocessedRequests = new List <WriteModel <BsonDocument> >(); var bulkWriteException = new MongoBulkWriteException <BsonDocument>(__connectionId, bulkWriteResult, writeErrors, writeConcernError, unprocessedRequests); var result = MongoWriteException.FromBulkWriteException(bulkWriteException); result.ConnectionId.Should().Be(__connectionId); result.ErrorLabels.Should().BeEquivalentTo(writeConcernError.ErrorLabels); result.InnerException.Should().BeSameAs(bulkWriteException); result.Message.Should().Be("A write operation resulted in an error. WriteError: { Category : \"Uncategorized\", Code : 2, Message : \"message\", Details : \"{ \"details\" : 1 }\" }. WriteConcernError: { Code : \"1\", Message : \"message\", Details : \"{ \"details\" : 1 }\", ErrorLabels : [ \"RetryableWriteError\" ] }."); result.WriteConcernError.Should().Be(writeConcernError); result.WriteError.Should().Be(writeErrors[0]); }