public void WrapperUpdate_CommitsChanges()
        {
            // arrange
            var  saved = Sheep.GetTestSheep();
            var  io    = _MockDB.SharedRuntimeClient.GetCollection <Sheep>("wrapUpdate");
            long id    = io.Insert(saved);
            DocumentWrapper <Sheep> wrapper = io.GetWrapper(id);

            // act
            var olderAge = saved.Age + 1;

            wrapper.Content.Age = olderAge;
            bool updatedSheep = wrapper.Update();

            var agedSheep = io.Get(id);

            // assert
            Assert.True(updatedSheep);
            Assert.Equal(wrapper.ID, id);
            Assert.Equal(olderAge, agedSheep.Age);
        }
        public void WrapperDelete_RemovesDocument()
        {
            // arrange
            var  saved = Sheep.GetTestSheep();
            var  io    = _MockDB.SharedRuntimeClient.GetCollection <Sheep>("wrapDelete");
            long id    = io.Insert(saved);
            DocumentWrapper <Sheep> wrapper = io.GetWrapper(id);

            // act
            bool deletedDocument = wrapper.Delete();

            bool postDeleteUpdate = wrapper.Update();
            bool postDeleteDelete = wrapper.Delete();

            var missingSheep = io.Get(id);

            // assert
            Assert.Null(missingSheep);
            Assert.True(deletedDocument);
            Assert.False(postDeleteUpdate);
            Assert.False(postDeleteDelete);
        }