summaryrefslogtreecommitdiff
path: root/spec/integration/faces/plugin_spec.rb
AgeCommit message (Collapse)AuthorFilesLines
2014-04-29(maint) Fix plugin spec to work with facter 1.7.5Josh Partlow1-6/+14
Puppet does not consider Facter 1.7.5 to provide external_facts, so the pluginfacts step was being skipped when specs were run with Facter 1.7.5. Altered the plugin spec to work with the application rather than the face so that we can check the rendered output, and to generate lib and facts.d dirs to normalize the output (otherwise the downloader reports the creation of the base plugin target directories, something which normally would be handled by Puppet's Settings catalog). As part of this, I noticed that the plugin face would return different results. If external facts were supported, it would return the list of any external facts pluginsynced. Otherwise it would return the list of any plugins pluginsynced. Changed this to accumlate and list both sets of changes.
2014-04-28(maint) Provide a namespace around two specs using Memory indirectorsJosh Partlow1-0/+2
Two specs were using the same constant names to track classes that they were generating Memory indirector classes for. Because specs share the same module namespace, they were overwriting one another on load and causing spec order failures. Guarding the specs within a namespace module should keep them isolated and prevent them for unexpectedly tinkering with one another's test setup.
2014-04-28(PUP-1699) Add remote environment to plugin downloader callsJosh Partlow1-0/+52
Puppet::Configurer::Downloader is also called by the plugin face, but we were not submitting an environment there. On Ruby 1.9.3 this nil environment was being interned as :'' and would produce a failure server side when a request with an empty environment was parsed. On Ruby 1.8.7, nil raises an error when interned and it was failing much sooner on the agent side. To resolve this, we're passing in a reference to the configured environment. Also added an integration test for the plugin face, because we weren't seeing any failure in our test suite.