@jtimberman you're not testing the Chef DSL, you're testing regression. Let say you have:

```ruby
remote_file "#{Chef::Config[:file_cache_path]}/foo.sh" do
  mode '0700'
end
```

And you're current spec:

```ruby
it 'downloads the file' do
  expect(chef_run).to create_remote_file('/var/chef/cache/foo.sh')
end
```

But if you change the mode:

```ruby
remote_file "#{Chef::Config[:file_cache_path]}/foo.sh" do
  mode '0755'
end
```

Or remove the mode:

```ruby
remote_file "#{Chef::Config[:file_cache_path]}/foo.sh" do
  mode '0755'
end
```

Or change the owner to apache:

```ruby
remote_file "#{Chef::Config[:file_cache_path]}/foo.sh" do
  mode '0755'
  owner node['apache']['user']
end
```

You're specs will still pass.

If the remote file should always be owned by `root`/`root` and should always be mode `0700`, there should be a test for that. You aren't testing the DSL - you're testing that you told the DSL to "do the right thing". AKA did you actually type it.

It may seem like a meaningless test, but skipping these kinds of simple tests often allow regressions to slip in.