Sha256: 09d062a0d97d065fd830f567e2506fb5919dd410b47c721178d38b1ffb6746f7

Contents?: true

Size: 1.12 KB

Versions: 4

Compression:

Stored size: 1.12 KB

Contents

require 'valise'
require 'rhet-butler/configuration'
require 'rhet-butler/slide-loader'

describe RhetButler::SlideLoader do
  let :files do
    Valise::Set.define do
      stemmed("slides") do
        rw 'spec_support/fixtures/project'
      end
      rw 'spec_support/fixtures/project'

      handle "config.yaml", :yaml, :hash_merge
    end
  end

  let :configuration do
    RhetButler::Configuration.new(files)
  end

  let :loader do
    described_class.new(files, configuration)
  end

  let :slides do
    loader.load_slides
  end

  it "should parse YAML for the configs" do
    slides.should have_at_least(1).slides
    slides.should be_all{|slide| RhetButler::Slide === slide or RhetButler::SlideGroup === slide }
  end

  it "should have the included slide" do
    slides.find do |slide|
      slide.content =~ /included/ if slide.respond_to? :content
    end.should_not be_nil
  end

  it "should have the slide group" do
    slides.each_slide.find do |slide|
      slide.content =~ /grouped/
    end.should_not be_nil
  end

  it "should allow sibling inclusions" do
    expect do
      slides
    end.not_to raise_error
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rhet-butler-0.11.1 spec/slide-loader.rb
rhet-butler-0.11.0 spec/slide-loader.rb
rhet-butler-0.10.0 spec/slide-loader.rb
rhet-butler-0.9.0 spec/slide-loader.rb