Sha256: 6ee26821b836a475285c638324aa4e7052850d838c0c70253c83ca9b756b5899

Contents?: true

Size: 1.3 KB

Versions: 6

Compression:

Stored size: 1.3 KB

Contents

module PuppetTest::RailsTesting
    Parser = Puppet::Parser
    AST = Puppet::Parser::AST
    include PuppetTest::ParserTesting

    def teardown
        super

        # If we don't clean up the connection list, then the rails
        # lib will still think it's connected.
        if Puppet.features.rails?
            ActiveRecord::Base.clear_active_connections!
        end
    end

    def railsinit
        Puppet::Rails.init
    end

    def railsteardown
        if Puppet[:dbadapter] != "sqlite3"
            Puppet::Rails.teardown
        end
    end

    def railsresource(type = "file", title = "/tmp/testing", params = {})
        railsteardown
        railsinit

        # We need a host for resources
        #host = Puppet::Rails::Host.new(:name => Facter.value("hostname"))

        # Now build a resource
        resources = []
        resources << mkresource(:type => type, :title => title, :exported => true,
                   :params => params)

        # Now collect our facts
        facts = Facter.to_hash

        # Now try storing our crap
        host = nil
        node = mknode(facts["hostname"])
        node.parameters = facts
        assert_nothing_raised {
            host = Puppet::Rails::Host.store(node, resources)
        }

        # Now save the whole thing
        host.save
    end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
puppet-0.25.5 test/lib/puppettest/railstesting.rb
puppet-0.25.4 test/lib/puppettest/railstesting.rb
puppet-0.25.3 test/lib/puppettest/railstesting.rb
puppet-0.25.2 test/lib/puppettest/railstesting.rb
puppet-0.25.1 test/lib/puppettest/railstesting.rb
puppet-0.25.0 test/lib/puppettest/railstesting.rb