Sha256: 352e695a958f2596b1fc12a34d205d31e75fe1e9890ed178a9986b32627cf00c
Contents?: true
Size: 1.36 KB
Versions: 4
Compression:
Stored size: 1.36 KB
Contents
Page Models move complex and copy-pasted code out of your acceptance tests and into easily managed Ruby classes with (optional) integration for Rails, Cucumber, and RSpec. ~~~~~~~~ # env.rb require 'pagemodels' PageModels.configure do |config| config.driver = :capybara # Or :celerity, :firefox, :chrome, :ie (browsers will use watir-webdriver) config.base_url = "https://www.github.com" config.integrate :rspec config.integrate :cucumber config.integrate :rails end ~~~~~~~~~~~~~~~~~~~~~~~~~~ # my_cucumber_test.feature Given I open the GitHub project page for the user "rickgrundy" and the repo "page-models" When I look at the commit history Then I should see at least 3 commits ~~~~~~~~~~~~~~~~~~~~~~ # my_cucumber_steps.rb When /I look at the commit history/ do navigate_to_commits end Then /I should see at least (\d+) commits/ do |count| verify_commit_count(count) end ~~~~~~~~~~~~~~~~~~~~~~ # GitHubProjectPage.rb class GitHubProjectPage < PageModels::Base def initialize(user, repo) @user, @repo = user, repo end def url "/#{@user}/#{@repo}/" end def verify! should have_content "#{@user} / #{@repo}" should have_content "Source" should have_content "Commits" end def navigate_to_commits click_link "Commits" end def verify_commit_count(count) all(".commit").should have_at_least(count).things end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
pagemodels-0.2.3 | README.txt |
pagemodels-0.2.2 | README.txt |
pagemodels-0.2.1 | README.txt |
pagemodels-0.2.0 | README.txt |