summaryrefslogtreecommitdiff
path: root/spec/unit/provider/remote_file/fetcher_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/unit/provider/remote_file/fetcher_spec.rb')
-rw-r--r--spec/unit/provider/remote_file/fetcher_spec.rb21
1 files changed, 20 insertions, 1 deletions
diff --git a/spec/unit/provider/remote_file/fetcher_spec.rb b/spec/unit/provider/remote_file/fetcher_spec.rb
index c049848fbf..8bd3b7c625 100644
--- a/spec/unit/provider/remote_file/fetcher_spec.rb
+++ b/spec/unit/provider/remote_file/fetcher_spec.rb
@@ -24,6 +24,26 @@ describe Chef::Provider::RemoteFile::Fetcher do
let(:new_resource) { double("new resource") }
let(:fetcher_instance) { double("fetcher") }
+ describe "when passed a network share" do
+ before do
+ expect(Chef::Provider::RemoteFile::NetworkFile).to receive(:new).and_return(fetcher_instance)
+ end
+
+ context "when host is a name" do
+ let(:source) { "\\\\foohost\\fooshare\\Foo.tar.gz" }
+ it "returns a network file fetcher" do
+ expect(described_class.for_resource(source, new_resource, current_resource)).to eq(fetcher_instance)
+ end
+ end
+
+ context "when host is an ip" do
+ let(:source) { "\\\\127.0.0.1\\fooshare\\Foo.tar.gz" }
+ it "returns a network file fetcher" do
+ expect(described_class.for_resource(source, new_resource, current_resource)).to eq(fetcher_instance)
+ end
+ end
+ end
+
describe "when passed an http url" do
let(:uri) { double("uri", :scheme => "http" ) }
before do
@@ -72,4 +92,3 @@ describe Chef::Provider::RemoteFile::Fetcher do
end
end
-