X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=spec%2Funit%2Fplugins%2Fmcollective%2Fpackagers%2Fospackage_spec.rb;fp=spec%2Funit%2Fplugins%2Fmcollective%2Fpackagers%2Fospackage_spec.rb;h=5854bb3f1fdc5bf30e036229385026434ce059e5;hb=b87d2f4e68281062df1913440ca5753ae63314a9;hp=0000000000000000000000000000000000000000;hpb=ab0ea530b8ac956091f17b104ab2311336cfc250;p=packages%2Fprecise%2Fmcollective.git diff --git a/spec/unit/plugins/mcollective/packagers/ospackage_spec.rb b/spec/unit/plugins/mcollective/packagers/ospackage_spec.rb new file mode 100644 index 0000000..5854bb3 --- /dev/null +++ b/spec/unit/plugins/mcollective/packagers/ospackage_spec.rb @@ -0,0 +1,57 @@ +#!/usr/bin/env rspec + +require 'spec_helper' + +MCollective::PluginManager.clear +require File.dirname(__FILE__) + '/../../../../../plugins/mcollective/pluginpackager/ospackage_packager.rb' + +module MCollective + module PluginPackager + describe "#initialize" do + + before :all do + @packager = mock() + @packager.stubs(:new) + end + + it "should correctly set members and create the correct packager on redhat" do + File.expects(:exists?).with("/etc/redhat-release").returns(true) + PluginPackager.expects(:[]).with("RpmpackagePackager").returns(@packager) + ospackager = OspackagePackager.new("package") + ospackager.package_type.should == "RPM" + end + + it "should correctly set members and create the correct packager on debian" do + File.expects(:exists?).with("/etc/redhat-release").returns(false) + File.expects(:exists?).with("/etc/debian_version").returns(true) + PluginPackager.expects(:[]).with("DebpackagePackager").returns(@packager) + ospackager = OspackagePackager.new("package") + ospackager.package_type.should == "Deb" + end + + it "should raise an exception if the os can't be identified" do + File.expects(:exists?).with("/etc/redhat-release").returns(false) + File.expects(:exists?).with("/etc/debian_version").returns(false) + expect{ + OspackagePackager.new("package") + }.to raise_error(RuntimeError) + end + end + + describe "#create_packages" do + before :all do + @packager = mock + @packager.stubs(:new).returns(@packager) + end + + it "should call a packagers create_packages class" do + File.expects(:exists?).with("/etc/redhat-release").returns(true) + PluginPackager.expects(:[]).with("RpmpackagePackager").returns(@packager) + @packager.expects(:create_packages) + ospackager = OspackagePackager.new("package") + ospackager.class.should == OspackagePackager + ospackager.create_packages + end + end + end +end