diff options
Diffstat (limited to 'puppet/modules/stdlib/spec/lib/puppet_spec/database.rb')
m--------- | puppet/modules/stdlib | 0 | ||||
-rwxr-xr-x | puppet/modules/stdlib/spec/lib/puppet_spec/database.rb | 30 |
2 files changed, 30 insertions, 0 deletions
diff --git a/puppet/modules/stdlib b/puppet/modules/stdlib deleted file mode 160000 -Subproject 71123634744b9fe2ec7d6a3e38e9789fd84801e diff --git a/puppet/modules/stdlib/spec/lib/puppet_spec/database.rb b/puppet/modules/stdlib/spec/lib/puppet_spec/database.rb new file mode 100755 index 00000000..f5c23417 --- /dev/null +++ b/puppet/modules/stdlib/spec/lib/puppet_spec/database.rb @@ -0,0 +1,30 @@ +#! /usr/bin/env ruby -S rspec +# 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 |