/test/ppane/configuration_test.rb

http://github.com/tgunr/passengerpane · Ruby · 35 lines · 30 code · 5 blank · 0 comment · 1 complexity · 6107a08f9e49683a0c94e648f3cfbf3b MD5 · raw file

  1. require File.expand_path('../test_helper', __FILE__)
  2. describe "Configuration" do
  3. it "raises an argument error when an unknown configuration key is set" do
  4. configuration = PassengerPane::Configuration.new
  5. lambda {
  6. begin
  7. configuration.set({'unknown' => 'value'})
  8. rescue ArgumentError => e
  9. e.message.should.start_with('There is no configuration named `unknown\'')
  10. end
  11. }.should.not.raise
  12. end
  13. it "initializes a configuration with default values" do
  14. configuration = PassengerPane::Configuration.new
  15. end
  16. it "returns all applications" do
  17. apps = mock('Applications')
  18. PassengerPane::Application.stubs(:all).returns(apps)
  19. PassengerPane::Configuration.new.applications.should == apps
  20. end
  21. end
  22. describe "A Configuration" do
  23. before do
  24. use_fake_apache_directory
  25. @configuration = PassengerPane::Configuration.new(fake_apache_directory)
  26. end
  27. it "returns an httpd configuration instance" do
  28. @configuration.httpd.should.be.kind_of?(PassengerPane::HttpdConf)
  29. end
  30. end