Sha256: a84943c8406cf4097a8db28be22be4dbd05ec9174820f6b81ec11a0185dee0c9

Contents?: true

Size: 1.88 KB

Versions: 16

Compression:

Stored size: 1.88 KB

Contents

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

require 'hx'

describe "Hx::Site.load" do
  it "requires dependencies from the config" do
    yaml_config = YAML.dump({'require' => ['hx_dummy.rb']})
    Hx::Site.load yaml_config, __FILE__
    $".should include('hx_dummy.rb')

    yaml_config = YAML.dump({'require' => 'hx_dummy2.rb'})
    Hx::Site.load yaml_config, __FILE__
    $".should include('hx_dummy2.rb')
  end

  it "returns an Hx::Site object" do
    yaml_config = YAML.dump({})
    site = Hx::Site.load yaml_config, __FILE__
    site.should be_an_instance_of(Hx::Site)
  end

  it "takes default base_dir from config file path" do
    yaml_config = YAML.dump({})
    site = Hx::Site.load yaml_config, 'foo/baz/config.hx'
    site.options[:base_dir].should == 'foo/baz'
    yaml_config = YAML.dump({'options' => {'base_dir' => 'foo/bar'}})
    site = Hx::Site.load yaml_config, 'foo/baz/config.hx'
    site.options[:base_dir].should == 'foo/bar'
  end

  it "gets global options from the config, with symbol keys" do
    input_options = {'foo' => 'bar', 'base_dir' => "xyz"}
    output_options = {:foo => 'bar', :base_dir => "xyz"}
    yaml_config = YAML.dump({'options' => input_options})
    site = Hx::Site.load yaml_config, __FILE__
    site.options[:foo].should == 'bar'
    site.options[:base_dir].should == 'xyz'
  end

  it "creates a source for every entry in sources" do
    yaml_config = YAML.dump({'sources' => {'foo' => {},
                                           'bar' => {}}})
    site = Hx::Site.load(yaml_config, __FILE__)
    site.sources.size.should == 2
    site.sources.should include('foo')
    site.sources.should include('bar')
  end
end

describe Hx::Site do
  before(:each) do
    yaml_config = YAML.dump({})
    @site = Hx::Site.load(yaml_config, __FILE__)
  end

  it "returns itself from each_entry" do
    @site.each_entry(Hx::Path::ALL) {}.should == @site
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
hx-0.26.1 spec/site_spec.rb
hx-0.26.0 spec/site_spec.rb
hx-0.25.0 spec/site_spec.rb
hx-0.24.0 spec/site_spec.rb
hx-0.23.0 spec/site_spec.rb
hx-0.22.0 spec/site_spec.rb
hx-0.21.0 spec/site_spec.rb
hx-0.20.0 spec/site_spec.rb
hx-0.19.0 spec/site_spec.rb
hx-0.18.0 spec/site_spec.rb
hx-0.17.0 spec/site_spec.rb
hx-0.16.0 spec/site_spec.rb
hx-0.15.0 spec/site_spec.rb
hx-0.14.0 spec/site_spec.rb
hx-0.13.0 spec/site_spec.rb
hx-0.12.0 spec/site_spec.rb