public void delete_returns_409_NoContent_whend_document_deleted(
            Guid documentId,
            DocumentModel document,
            DocumentLockedException exception,
            DocumentsController sut)
        {
            var result = sut.Delete(documentId);

            result.Should().BeOfType<ResponseMessageResult>()
                  .Which.Response.StatusCode.Should().Be(HttpStatusCode.NoContent);
        }
        public void delete_returns_409_Conflict_on_lock_exception(
            Guid documentId,
            DocumentModel document,
            DocumentLockedException exception,
            [Frozen]Mock<ICommand<DocumentReference>> deleteCmd,
            DocumentsController sut)
        {
            deleteCmd.Setup(c => c.Execute(It.IsAny<Envelope<DocumentReference>>()))
                     .Throws(exception);

            var result = sut.Delete(documentId);

            result.Should().BeOfType<ResponseMessageResult>()
                  .Which.Response.StatusCode.Should().Be(HttpStatusCode.Conflict, "because document lock exception was thrown");

            result.Should().BeOfType<ResponseMessageResult>()
                  .Which.Response.Content.ReadAsStringAsync().Result.Should().NotBeNullOrEmpty();
        }