Interestingly, with a "real" directory to read/write config files from, just these 3 tests would cause issues for other tests (like `spec/unit/util/ssl_spec.rb`):

https://github.com/puppetlabs/puppet/blob/master/spec/unit/application/agent_spec.rb#L450-L486

The problem is that by using `Puppet::FileSystem::File.stubs(:exist?).returns(true)`, Puppet ends up creating a bunch of 0 byte SSL files that are later picked up by other tests.  OpenSSL considers these files corrupt and explodes.  Technically this could be considered a bug in those specs as well, since they behave differently whether or not those files are there, rather than setting up their environment correctly for each run.