public async Task Field_is_removed_by_id()
        {
            var field = await CreateField(f => f.Id);

            var prov = new HarshField()
            {
                MayDeleteUserData = true,
                Id = field.Id,
            };

            await prov.UnprovisionAsync(Context);

            var output = LastIdentifiedOutput();
            Assert.Equal(prov.Id.ToStringInvariant(), output.Identifier);
            Assert.False(output.ObjectAdded);
            Assert.True(output.ObjectRemoved);

            var fields = ClientContext.LoadQuery(Web.Fields.Include(f => f.Id));
            await ClientContext.ExecuteQueryAsync();

            Assert.DoesNotContain(field.Id, fields.Select(f => f.Id));
        }
        public async Task Nonexistent_field_is_not_removed()
        {
            var prov = new HarshField()
            {
                MayDeleteUserData = true,
                Id = Guid.NewGuid()
            };

            await prov.UnprovisionAsync(Context);

            var output = LastIdentifiedOutput();
            Assert.Equal(prov.Id.ToStringInvariant(), output.Identifier);
            Assert.False(output.ObjectAdded);
            Assert.False(output.ObjectRemoved);
        }