Sha256: a49e27ceb6ea2e6222aab67a4249f855b7b28632976e6f86b93718e5c4ef7de2

Contents?: true

Size: 1.88 KB

Versions: 6

Compression:

Stored size: 1.88 KB

Contents

#!/usr/bin/env ruby
#
#  Created by Luke Kanies on 2007-10-18.
#  Copyright (c) 2007. All rights reserved.

require File.dirname(__FILE__) + '/../../../spec_helper'

require 'puppet/indirector/file_metadata/file'

describe Puppet::Indirector::FileMetadata::File do
    it "should be registered with the file_metadata indirection" do
        Puppet::Indirector::Terminus.terminus_class(:file_metadata, :file).should equal(Puppet::Indirector::FileMetadata::File)
    end

    it "should be a subclass of the DirectFileServer terminus" do
        Puppet::Indirector::FileMetadata::File.superclass.should equal(Puppet::Indirector::DirectFileServer)
    end

    describe "when creating the instance for a single found file" do
        before do
            @metadata = Puppet::Indirector::FileMetadata::File.new
            @uri = "file:///my/local"
            @data = mock 'metadata'
            @data.stubs(:collect)
            FileTest.expects(:exists?).with("/my/local").returns true

            @request = Puppet::Indirector::Request.new(:file_metadata, :find, @uri)
        end

        it "should collect its attributes when a file is found" do
            @data.expects(:collect)

            Puppet::FileServing::Metadata.expects(:new).returns(@data)
            @metadata.find(@request).should == @data
        end
    end

    describe "when searching for multiple files" do
        before do
            @metadata = Puppet::Indirector::FileMetadata::File.new
            @uri = "file:///my/local"

            @request = Puppet::Indirector::Request.new(:file_metadata, :find, @uri)
        end

        it "should collect the attributes of the instances returned" do
            FileTest.expects(:exists?).with("/my/local").returns true
            @metadata.expects(:path2instances).returns( [mock("one", :collect => nil), mock("two", :collect => nil)] )
            @metadata.search(@request)
        end
    end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
puppet-0.25.5 spec/unit/indirector/file_metadata/file.rb
puppet-0.25.4 spec/unit/indirector/file_metadata/file.rb
puppet-0.25.3 spec/unit/indirector/file_metadata/file.rb
puppet-0.25.2 spec/unit/indirector/file_metadata/file.rb
puppet-0.25.1 spec/unit/indirector/file_metadata/file.rb
puppet-0.25.0 spec/unit/indirector/file_metadata/file.rb