inspec/test/unit/resources/apache_conf_test.rb
Ryan Davis 9c051da22b Fix platform on apache_conf to include all unix.
Now discovers the first available conf file from a list of known
paths. Might have to expand based on various distros.

Had to tweak the tests because the mock loader mocks EVERYTHING every
time. :/

Signed-off-by: Ryan Davis <zenspider@chef.io>
2020-01-28 14:53:37 -08:00

39 lines
1.8 KiB
Ruby

require "helper"
require "inspec/resource"
require "inspec/resources/apache_conf"
require "hashie"
describe "Inspec::Resources::ApacheConf" do
# debian style apache2
it "reads values in apache2.conf and from Include, IncludeOptional params" do
resource = MockLoader.new(:ubuntu1404).load_resource("apache_conf",
"/etc/apache2/apache2.conf")
_(resource.params).must_be_kind_of Hash
_(resource.content).must_be_kind_of String
_(resource.params("ServerRoot")).must_equal ["/etc/apache2"]
_(resource.params("ServerAlias")).must_equal ["inspec.test www.inspec.test io.inspec.test"]
_(resource.params("Listen").sort).must_equal %w{443 80}
# sourced using a linked file in conf-enabled/
_(resource.params("ServerSignature")).must_equal ["Off"]
# TODO(sr) currently, the parser only merges parameter across separate
# source files, not in one file
_(resource.params("Define")).must_equal %w{ENABLE_USR_LIB_CGI_BIN
ENABLE_USR_LIB_CGI_BIN}
end
# non debian style httpd
it "reads values in httpd.conf and from Include, IncludeOptional params" do
resource = MockLoader.new(:centos6).load_resource("apache_conf",
"/etc/httpd/conf/httpd.conf")
_(resource.params).must_be_kind_of Hash
_(resource.content).must_be_kind_of String
_(resource.params("ServerRoot")).must_equal ["/etc/httpd"]
_(resource.params("Listen").sort).must_equal %w{443 80}
# sourced using an absolute path in httpd.conf
_(resource.params("ExtendedStatus")).must_equal ["Off"]
# sourced using a linked file in conf-enabled/
_(resource.params("ServerSignature")).must_equal ["Off"]
end
end