Sha256: a248203a6dcf730a7f2c69318fb352680b10affa72d7c2373034b158799827a8

Contents?: true

Size: 1.47 KB

Versions: 4

Compression:

Stored size: 1.47 KB

Contents

require File.join(File.dirname(__FILE__), 'spec_helper')

describe 'Shining' do  
  before do
    Dir.chdir File.join(Shining.root, *%w(spec sample))
    @page = Harmony::Page.fetch("file:////#{Shining.root}/spec/sample/index.html")
  end
  
  it "has a stage" do
    @page.execute_js("$('#stage').is(':visible')").should == true
  end
  
  it "has navigation controls" do
    @page.execute_js("$('#controls').length").should == 1
  end
  
  describe ".slides" do
    it ".current should return the first slide by default" do
      @page.execute_js("$.shining.slides.current").should == 'first'
    end
    
    it ".length returns 3 for when there's 3 slides" do
      @page.execute_js("$.shining.slides.length").should == 3
    end
    
    it ".current= sets the current slide, returning it's name" do
      @page.execute_js("$.shining.slides.current = 'second'").should == 'second'
      @page.execute_js("$.shining.slides._current").should == 1
    end    
    
    it ".current returns undefined if set to an unexisting slide" do
      @page.execute_js("$.shining.slides.current = 'omg'; $.shining.slides.current").should == nil
    end
    
    it "returns the next slide in the list on .next" do
      @page.execute_js("$.shining.slides.current = 'second'; $.shining.slides.next").should == 'third'
    end
    
    it "returns the previous slide in the list on .previous" do
      @page.execute_js("$.shining.slides.current = 'second'; $.shining.slides.previous").should == 'first'
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
shining-1.1.1 spec/shining_spec.rb
shining-1.1.0 spec/shining_spec.rb
shining-1.0.2 spec/shining_spec.rb
shining-1.0.1 spec/shining_spec.rb