capypage 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/.rspec +2 -0
 - data/Rakefile +6 -1
 - data/capypage.gemspec +1 -0
 - data/examples/simple/README.md +7 -0
 - data/examples/simple/spec/simple_spec.rb +4 -4
 - data/lib/capypage/element.rb +7 -3
 - data/lib/capypage/version.rb +1 -1
 - data/lib/capypage.rb +5 -6
 - data/spec/element_spec.rb +14 -0
 - data/spec/elements_spec.rb +25 -0
 - data/spec/page_spec.rb +37 -0
 - data/spec/sample_page.html +28 -0
 - data/spec/spec_helper.rb +17 -0
 - metadata +29 -3
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: e17d0dec80b73008960e7db25880188e4d49ac34
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 47d86693674305ec5141d0dbad476a4dda04d0a7
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 98a96b1c0cb5b1fdb9f8668aad19641d22abe0201d59c90a80f05e1601de8ac245ed52d0c436ec8b7ddd4c139cb07dab815507f8442603c467d5ead739a50d3d
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 2d3029f02d2e58f5ea513be0f9a06740fc4fcfb118e4c5f905890fc14f87f9d22797ae217ef67a6d1f4d6e372319347fbbf352782e66decf5a9fa812a2a891c3
         
     | 
    
        data/.rspec
    ADDED
    
    
    
        data/Rakefile
    CHANGED
    
    
    
        data/capypage.gemspec
    CHANGED
    
    
| 
         @@ -6,10 +6,10 @@ describe 'Simple example', :type => :feature do 
     | 
|
| 
       6 
6 
     | 
    
         | 
| 
       7 
7 
     | 
    
         
             
              it 'should show capybara results' do
         
     | 
| 
       8 
8 
     | 
    
         
             
                search_page.load
         
     | 
| 
       9 
     | 
    
         
            -
                search_page.search  
     | 
| 
      
 9 
     | 
    
         
            +
                search_page.search 'Capybara'
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
       11 
     | 
    
         
            -
                capybara_result = search_results_page.results.find_by_text  
     | 
| 
       12 
     | 
    
         
            -
                capybara_result.link[:href]. 
     | 
| 
       13 
     | 
    
         
            -
                capybara_result.snippet. 
     | 
| 
      
 11 
     | 
    
         
            +
                capybara_result = search_results_page.results.find_by_text 'jnicklas'
         
     | 
| 
      
 12 
     | 
    
         
            +
                expect(capybara_result.link[:href]).to eq('https://github.com/jnicklas/capybara')
         
     | 
| 
      
 13 
     | 
    
         
            +
                expect(capybara_result.snippet).to have_text('Capybara helps you test web applications')
         
     | 
| 
       14 
14 
     | 
    
         
             
              end
         
     | 
| 
       15 
15 
     | 
    
         
             
            end
         
     | 
    
        data/lib/capypage/element.rb
    CHANGED
    
    | 
         @@ -5,9 +5,6 @@ module Capypage 
     | 
|
| 
       5 
5 
     | 
    
         
             
              class Element
         
     | 
| 
       6 
6 
     | 
    
         
             
                attr_accessor :selector, :prefix, :finder_options, :base_element
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
     | 
    
         
            -
                delegate :click, :set, :text, :all, :find, :[], :native, :disabled?, :selected?, :has_text?, :has_no_text?, :checked?, :has_selector?,
         
     | 
| 
       9 
     | 
    
         
            -
                         :to => :capybara_element
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
8 
     | 
    
         
             
                def initialize(selector, prefix = nil, options = {}, &block)
         
     | 
| 
       12 
9 
     | 
    
         
             
                  options.reverse_merge! :match => :smart
         
     | 
| 
       13 
10 
     | 
    
         
             
                  @selector = selector
         
     | 
| 
         @@ -43,5 +40,12 @@ module Capypage 
     | 
|
| 
       43 
40 
     | 
    
         
             
                def element_selector
         
     | 
| 
       44 
41 
     | 
    
         
             
                  [prefix, selector].compact.join(" ")
         
     | 
| 
       45 
42 
     | 
    
         
             
                end
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
                def self.capybara_element_methods
         
     | 
| 
      
 45 
     | 
    
         
            +
                  Capybara::Node::Element.instance_methods - Object.methods
         
     | 
| 
      
 46 
     | 
    
         
            +
                end
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                delegate *capybara_element_methods,
         
     | 
| 
      
 49 
     | 
    
         
            +
                         :to => :capybara_element
         
     | 
| 
       46 
50 
     | 
    
         
             
              end
         
     | 
| 
       47 
51 
     | 
    
         
             
            end
         
     | 
    
        data/lib/capypage/version.rb
    CHANGED
    
    
    
        data/lib/capypage.rb
    CHANGED
    
    | 
         @@ -4,9 +4,8 @@ Bundler.require 
     | 
|
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            require 'capybara'
         
     | 
| 
       6 
6 
     | 
    
         | 
| 
       7 
     | 
    
         
            -
            require  
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
            require  
     | 
| 
       10 
     | 
    
         
            -
            require  
     | 
| 
       11 
     | 
    
         
            -
            require  
     | 
| 
       12 
     | 
    
         
            -
            require "capypage/section"
         
     | 
| 
      
 7 
     | 
    
         
            +
            require 'capypage/version'
         
     | 
| 
      
 8 
     | 
    
         
            +
            require 'capypage/page'
         
     | 
| 
      
 9 
     | 
    
         
            +
            require 'capypage/element'
         
     | 
| 
      
 10 
     | 
    
         
            +
            require 'capypage/elements'
         
     | 
| 
      
 11 
     | 
    
         
            +
            require 'capypage/section'
         
     | 
| 
         @@ -0,0 +1,14 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            describe Capypage::Element do
         
     | 
| 
      
 4 
     | 
    
         
            +
              let(:page) { SamplePage.new }
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
              before { page.load }
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
              it 'should delegate all capybara element methods' do
         
     | 
| 
      
 9 
     | 
    
         
            +
                expect(page.header[:class]).to eq('span12')
         
     | 
| 
      
 10 
     | 
    
         
            +
                expect(page.header).to have_text('Hello')
         
     | 
| 
      
 11 
     | 
    
         
            +
                expect(page.header).to_not have_text('Foo')
         
     | 
| 
      
 12 
     | 
    
         
            +
              end
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,25 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            describe Capypage::Elements do
         
     | 
| 
      
 4 
     | 
    
         
            +
              let(:page) { SamplePage.new }
         
     | 
| 
      
 5 
     | 
    
         
            +
              let(:elements) { page.list }
         
     | 
| 
      
 6 
     | 
    
         
            +
              before { page.load }
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
              it 'should find the collection of elements matching' do
         
     | 
| 
      
 9 
     | 
    
         
            +
                expect(elements.size).to eq(3)
         
     | 
| 
      
 10 
     | 
    
         
            +
              end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              describe '#find_by_text' do
         
     | 
| 
      
 13 
     | 
    
         
            +
                it 'should find the element with text within the collection' do
         
     | 
| 
      
 14 
     | 
    
         
            +
                  element = elements.find_by_text('Title 1')
         
     | 
| 
      
 15 
     | 
    
         
            +
                  expect(element.details.text).to eq('Details 1')
         
     | 
| 
      
 16 
     | 
    
         
            +
                end
         
     | 
| 
      
 17 
     | 
    
         
            +
              end
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
              describe 'delegation of capybara methods to the collection' do
         
     | 
| 
      
 20 
     | 
    
         
            +
                xit 'should delegate has_text' do
         
     | 
| 
      
 21 
     | 
    
         
            +
                  expect(elements).to have_text('Title 1')
         
     | 
| 
      
 22 
     | 
    
         
            +
                end
         
     | 
| 
      
 23 
     | 
    
         
            +
              end
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
      
 25 
     | 
    
         
            +
            end
         
     | 
    
        data/spec/page_spec.rb
    ADDED
    
    | 
         @@ -0,0 +1,37 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            describe Capypage::Page do
         
     | 
| 
      
 4 
     | 
    
         
            +
              let(:page) { SamplePage.new }
         
     | 
| 
      
 5 
     | 
    
         
            +
              let(:current_session) { Capybara.current_session }
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
              context 'page loading' do
         
     | 
| 
      
 8 
     | 
    
         
            +
                it 'should load the page' do
         
     | 
| 
      
 9 
     | 
    
         
            +
                  current_session.should_receive(:visit).with(SamplePage.url)
         
     | 
| 
      
 10 
     | 
    
         
            +
                  page.load
         
     | 
| 
      
 11 
     | 
    
         
            +
                end
         
     | 
| 
      
 12 
     | 
    
         
            +
              end
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
              describe 'dsl' do
         
     | 
| 
      
 15 
     | 
    
         
            +
                before { page.load }
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
                describe '.element' do
         
     | 
| 
      
 18 
     | 
    
         
            +
                  it 'should return the element matching the selector' do
         
     | 
| 
      
 19 
     | 
    
         
            +
                    expect(page.header.text).to eq('Hello World!')
         
     | 
| 
      
 20 
     | 
    
         
            +
                  end
         
     | 
| 
      
 21 
     | 
    
         
            +
                end
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                describe '.elements' do
         
     | 
| 
      
 24 
     | 
    
         
            +
                  let(:elements) { page.list }
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                  it 'should return the size collection' do
         
     | 
| 
      
 27 
     | 
    
         
            +
                    expect(elements.size).to eq(3)
         
     | 
| 
      
 28 
     | 
    
         
            +
                  end
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
                  it 'should return the element in the collection and its details' do
         
     | 
| 
      
 31 
     | 
    
         
            +
                    expect(elements.find_by_index(0).title.text).to eq('Title 1')
         
     | 
| 
      
 32 
     | 
    
         
            +
                  end
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
                end
         
     | 
| 
      
 35 
     | 
    
         
            +
              end
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <!doctype html>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <html lang="en-US">
         
     | 
| 
      
 3 
     | 
    
         
            +
            <head>
         
     | 
| 
      
 4 
     | 
    
         
            +
                <meta charset="UTF-8">
         
     | 
| 
      
 5 
     | 
    
         
            +
                <title></title>
         
     | 
| 
      
 6 
     | 
    
         
            +
            </head>
         
     | 
| 
      
 7 
     | 
    
         
            +
            <body>
         
     | 
| 
      
 8 
     | 
    
         
            +
            <header class="span12">
         
     | 
| 
      
 9 
     | 
    
         
            +
                Hello World!
         
     | 
| 
      
 10 
     | 
    
         
            +
            </header>
         
     | 
| 
      
 11 
     | 
    
         
            +
            <div id="content">
         
     | 
| 
      
 12 
     | 
    
         
            +
                <ul class="list">
         
     | 
| 
      
 13 
     | 
    
         
            +
                    <li>
         
     | 
| 
      
 14 
     | 
    
         
            +
                        <div class="title">Title 1</div>
         
     | 
| 
      
 15 
     | 
    
         
            +
                        <div class="details">Details 1</div>
         
     | 
| 
      
 16 
     | 
    
         
            +
                    </li>
         
     | 
| 
      
 17 
     | 
    
         
            +
                    <li>
         
     | 
| 
      
 18 
     | 
    
         
            +
                        <div class="title">Title 2</div>
         
     | 
| 
      
 19 
     | 
    
         
            +
                        <div class="details">Details 2</div>
         
     | 
| 
      
 20 
     | 
    
         
            +
                    </li>
         
     | 
| 
      
 21 
     | 
    
         
            +
                    <li>
         
     | 
| 
      
 22 
     | 
    
         
            +
                        <div class="title">Title 3</div>
         
     | 
| 
      
 23 
     | 
    
         
            +
                        <div class="details">Details 3</div>
         
     | 
| 
      
 24 
     | 
    
         
            +
                    </li>
         
     | 
| 
      
 25 
     | 
    
         
            +
                </ul>
         
     | 
| 
      
 26 
     | 
    
         
            +
            </div>
         
     | 
| 
      
 27 
     | 
    
         
            +
            </body>
         
     | 
| 
      
 28 
     | 
    
         
            +
            </html>
         
     | 
    
        data/spec/spec_helper.rb
    ADDED
    
    | 
         @@ -0,0 +1,17 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'capypage'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'capybara/rspec'
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            Capybara.app = lambda { |_|
         
     | 
| 
      
 5 
     | 
    
         
            +
              [200, { 'Content-Type' => 'application/html' }, File.read(File.join(File.dirname(__FILE__), 'sample_page.html'))]
         
     | 
| 
      
 6 
     | 
    
         
            +
            }
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
            class SamplePage < Capypage::Page
         
     | 
| 
      
 9 
     | 
    
         
            +
              set_url '/'
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
              element :header, 'header'
         
     | 
| 
      
 12 
     | 
    
         
            +
              elements :list, 'ul.list li' do |row|
         
     | 
| 
      
 13 
     | 
    
         
            +
                row.element :title, '.title'
         
     | 
| 
      
 14 
     | 
    
         
            +
                row.element :details, '.details'
         
     | 
| 
      
 15 
     | 
    
         
            +
              end
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: capypage
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.1. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.1.1
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Selvakumar Natesan
         
     | 
| 
         @@ -10,7 +10,7 @@ authors: 
     | 
|
| 
       10 
10 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       11 
11 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       12 
12 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       13 
     | 
    
         
            -
            date: 2013-09- 
     | 
| 
      
 13 
     | 
    
         
            +
            date: 2013-09-19 00:00:00.000000000 Z
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies:
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       16 
16 
     | 
    
         
             
              name: capybara
         
     | 
| 
         @@ -54,6 +54,20 @@ dependencies: 
     | 
|
| 
       54 
54 
     | 
    
         
             
                - - ~>
         
     | 
| 
       55 
55 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       56 
56 
     | 
    
         
             
                    version: '1.3'
         
     | 
| 
      
 57 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency
         
     | 
| 
      
 58 
     | 
    
         
            +
              name: rspec
         
     | 
| 
      
 59 
     | 
    
         
            +
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
      
 60 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 61 
     | 
    
         
            +
                - - '>='
         
     | 
| 
      
 62 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 63 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
      
 64 
     | 
    
         
            +
              type: :development
         
     | 
| 
      
 65 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 66 
     | 
    
         
            +
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
      
 67 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 68 
     | 
    
         
            +
                - - '>='
         
     | 
| 
      
 69 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 70 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
       57 
71 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       58 
72 
     | 
    
         
             
              name: rake
         
     | 
| 
       59 
73 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -76,12 +90,14 @@ extensions: [] 
     | 
|
| 
       76 
90 
     | 
    
         
             
            extra_rdoc_files: []
         
     | 
| 
       77 
91 
     | 
    
         
             
            files:
         
     | 
| 
       78 
92 
     | 
    
         
             
            - .gitignore
         
     | 
| 
      
 93 
     | 
    
         
            +
            - .rspec
         
     | 
| 
       79 
94 
     | 
    
         
             
            - Gemfile
         
     | 
| 
       80 
95 
     | 
    
         
             
            - LICENSE.txt
         
     | 
| 
       81 
96 
     | 
    
         
             
            - README.md
         
     | 
| 
       82 
97 
     | 
    
         
             
            - Rakefile
         
     | 
| 
       83 
98 
     | 
    
         
             
            - capypage.gemspec
         
     | 
| 
       84 
99 
     | 
    
         
             
            - examples/simple/Gemfile
         
     | 
| 
      
 100 
     | 
    
         
            +
            - examples/simple/README.md
         
     | 
| 
       85 
101 
     | 
    
         
             
            - examples/simple/spec/simple_spec.rb
         
     | 
| 
       86 
102 
     | 
    
         
             
            - examples/simple/spec/spec_helper.rb
         
     | 
| 
       87 
103 
     | 
    
         
             
            - lib/capypage.rb
         
     | 
| 
         @@ -90,6 +106,11 @@ files: 
     | 
|
| 
       90 
106 
     | 
    
         
             
            - lib/capypage/page.rb
         
     | 
| 
       91 
107 
     | 
    
         
             
            - lib/capypage/section.rb
         
     | 
| 
       92 
108 
     | 
    
         
             
            - lib/capypage/version.rb
         
     | 
| 
      
 109 
     | 
    
         
            +
            - spec/element_spec.rb
         
     | 
| 
      
 110 
     | 
    
         
            +
            - spec/elements_spec.rb
         
     | 
| 
      
 111 
     | 
    
         
            +
            - spec/page_spec.rb
         
     | 
| 
      
 112 
     | 
    
         
            +
            - spec/sample_page.html
         
     | 
| 
      
 113 
     | 
    
         
            +
            - spec/spec_helper.rb
         
     | 
| 
       93 
114 
     | 
    
         
             
            homepage: http://github.com/TWChennai/capypage
         
     | 
| 
       94 
115 
     | 
    
         
             
            licenses:
         
     | 
| 
       95 
116 
     | 
    
         
             
            - MIT
         
     | 
| 
         @@ -114,4 +135,9 @@ rubygems_version: 2.0.3 
     | 
|
| 
       114 
135 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       115 
136 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       116 
137 
     | 
    
         
             
            summary: Page Object Model for Capybara
         
     | 
| 
       117 
     | 
    
         
            -
            test_files: 
     | 
| 
      
 138 
     | 
    
         
            +
            test_files:
         
     | 
| 
      
 139 
     | 
    
         
            +
            - spec/element_spec.rb
         
     | 
| 
      
 140 
     | 
    
         
            +
            - spec/elements_spec.rb
         
     | 
| 
      
 141 
     | 
    
         
            +
            - spec/page_spec.rb
         
     | 
| 
      
 142 
     | 
    
         
            +
            - spec/sample_page.html
         
     | 
| 
      
 143 
     | 
    
         
            +
            - spec/spec_helper.rb
         
     |