diff options
author | Ashley Penney <ashley.penney@puppetlabs.com> | 2014-03-07 19:48:40 -0500 |
---|---|---|
committer | Ashley Penney <ashley.penney@puppetlabs.com> | 2014-03-07 19:48:40 -0500 |
commit | 9e1cf99ccf12de2edaf73af73a8410e5cac6dd72 (patch) | |
tree | 2624c5c96549324719fbf6eaca781888d6d4646d /spec/lib/puppet_spec/database.rb | |
parent | fecb53d46ed9e926973cdf5be1289c1ea71c2f68 (diff) | |
parent | 3854e076ccb75d1bcb1ddd29f5976b194d857765 (diff) |
Merge pull request #230 from apenney/fix-testing
[WIP] Spec overhaul.
Diffstat (limited to 'spec/lib/puppet_spec/database.rb')
-rw-r--r-- | spec/lib/puppet_spec/database.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/spec/lib/puppet_spec/database.rb b/spec/lib/puppet_spec/database.rb new file mode 100644 index 0000000..069ca15 --- /dev/null +++ b/spec/lib/puppet_spec/database.rb @@ -0,0 +1,29 @@ +# This just makes some nice things available at global scope, and for setup of +# tests to use a real fake database, rather than a fake stubs-that-don't-work +# version of the same. Fun times. +def sqlite? + if $sqlite.nil? + begin + require 'sqlite3' + $sqlite = true + rescue LoadError + $sqlite = false + end + end + $sqlite +end + +def can_use_scratch_database? + sqlite? and Puppet.features.rails? +end + + +# This is expected to be called in your `before :each` block, and will get you +# ready to roll with a serious database and all. Cleanup is handled +# automatically for you. Nothing to do there. +def setup_scratch_database + Puppet[:dbadapter] = 'sqlite3' + Puppet[:dblocation] = ':memory:' + Puppet[:railslog] = PuppetSpec::Files.tmpfile('storeconfigs.log') + Puppet::Rails.init +end |