Sha256: 6ee98a3d5335063f57dfe4321dad9c9210ff4f8f594af7eb17305c506eea0d02

Contents?: true

Size: 1.28 KB

Versions: 5

Compression:

Stored size: 1.28 KB

Contents

Capybara::SpecHelper.spec '#save_page' do
  let(:alternative_path) { File.join(Dir.pwd, "save_and_open_page_tmp") }
  before do
    @session.visit("/foo")
  end

  after do
    Capybara.save_and_open_page_path = nil
    Dir.glob("capybara-*.html").each do |file|
      FileUtils.rm(file)
    end
    FileUtils.rm_rf alternative_path
  end

  it "saves the page in the root directory" do
    @session.save_page
    path = Dir.glob("capybara-*.html").first
    File.read(path).should include("Another World")
  end

  it "generates a sensible filename" do
    @session.save_page
    path = Dir.glob("capybara-*.html").first
    filename = path.split("/").last
    filename.should =~ /^capybara-\d+\.html$/
  end

  it "can store files in a specified directory" do
    Capybara.save_and_open_page_path = alternative_path
    @session.save_page
    path = Dir.glob(alternative_path + "/capybara-*.html").first
    File.read(path).should include("Another World")
  end

  it "uses the given filename" do
    @session.save_page("capybara-001122.html")
    File.read("capybara-001122.html").should include("Another World")
  end

  it "returns the filename" do
    result = @session.save_page
    path = Dir.glob("capybara-*.html").first
    filename = path.split("/").last
    result.should == filename
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
capybara-2.0.3 lib/capybara/spec/session/save_page_spec.rb
capybara-2.0.2 lib/capybara/spec/session/save_page_spec.rb
capybara-2.0.1 lib/capybara/spec/session/save_page_spec.rb
capybara-2.0.0 lib/capybara/spec/session/save_page_spec.rb
capybara-2.0.0.beta4 lib/capybara/spec/session/save_page_spec.rb