capybara-page-object 0.2.1 → 0.3.0
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.
- data/Gemfile +3 -1
- data/Gemfile.lock +15 -2
- data/Rakefile +27 -13
- data/VERSION +1 -1
- data/capybara-page-object.gemspec +55 -27
- data/lib/capybara-page-object.rb +6 -8
- data/lib/collections.rb +11 -0
- data/lib/element.rb +11 -0
- data/lib/element/anchor.rb +11 -0
- data/lib/element/form.rb +64 -0
- data/lib/element/form_field.rb +20 -0
- data/lib/element/image.rb +20 -0
- data/lib/element/input.rb +28 -0
- data/lib/element/list.rb +21 -0
- data/lib/element/listitem.rb +7 -0
- data/lib/element/meta.rb +16 -0
- data/lib/element/select.rb +16 -0
- data/lib/{table.rb → element/table.rb} +1 -3
- data/lib/element/textarea.rb +16 -0
- data/lib/{extractors → extractor}/common.rb +3 -11
- data/lib/{extractors → extractor}/page_level.rb +3 -13
- data/lib/html5_data.rb +14 -0
- data/lib/key_value.rb +11 -0
- data/lib/navigation.rb +16 -0
- data/lib/node.rb +76 -0
- data/spec/common_spec.rb +46 -0
- data/spec/element/anchor_spec.rb +15 -0
- data/spec/element/base_spec.rb +19 -0
- data/spec/element/form_field_spec.rb +28 -0
- data/spec/element/form_spec.rb +69 -0
- data/spec/element/image_spec.rb +30 -0
- data/spec/element/input_spec.rb +49 -0
- data/spec/element/list_spec.rb +47 -0
- data/spec/element/listitem_spec.rb +25 -0
- data/spec/element/meta_spec.rb +23 -0
- data/spec/element/select_spec.rb +36 -0
- data/spec/element/table_spec.rb +30 -0
- data/spec/element/textarea_spec.rb +19 -0
- data/{test/page.html → spec/fixtures/node.html} +0 -0
- data/{test → spec}/helper.rb +2 -11
- data/spec/node_spec.rb +45 -0
- metadata +120 -109
- data/lib/base.rb +0 -29
- data/lib/image.rb +0 -13
- data/lib/page.rb +0 -15
- data/test/image.html +0 -2
- data/test/table.html +0 -10
- data/test/test_image.rb +0 -20
- data/test/test_page.rb +0 -59
- data/test/test_table.rb +0 -20
@@ -0,0 +1,30 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../helper'
|
2
|
+
|
3
|
+
describe "Image" do
|
4
|
+
context "#alt" do
|
5
|
+
it "returns the alt attribute" do
|
6
|
+
i = CapybaraPageObject::Image.from_string '<img alt="alt image">'
|
7
|
+
i.alt.should == 'alt image'
|
8
|
+
end
|
9
|
+
|
10
|
+
it "strips whitespace" do
|
11
|
+
i = CapybaraPageObject::Image.from_string '<img alt=" alt image ">'
|
12
|
+
i.alt.should == 'alt image'
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
context "#key" do
|
17
|
+
it "return the alt attribute" do
|
18
|
+
i = CapybaraPageObject::Image.from_string '<img alt="alt image">'
|
19
|
+
i.key.should == 'alt image'
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
context "#value" do
|
24
|
+
it "return the source image as a URI object" do
|
25
|
+
i = CapybaraPageObject::Image.from_string '<img src="image.jpg">'
|
26
|
+
i.value.class.should == URI::Generic
|
27
|
+
i.value.path.should == 'image.jpg'
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../helper'
|
2
|
+
|
3
|
+
describe "Input" do
|
4
|
+
context "#key" do
|
5
|
+
it "return the name attribute" do
|
6
|
+
i = CapybaraPageObject::Input.from_string '<input name="foo"/>'
|
7
|
+
i.key.should == 'foo'
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
# TODO get this working
|
12
|
+
# context "#value" do
|
13
|
+
# it "delegates to the the Capybara::Node::Simple" do
|
14
|
+
# i = CapybaraPageObject::Input.from_string '<input name="foo" value="bar"/>'
|
15
|
+
# i.value.should == 'bar'
|
16
|
+
# end
|
17
|
+
# end
|
18
|
+
|
19
|
+
context "#untyped" do
|
20
|
+
it "is true if the input has no type attribute" do
|
21
|
+
input = CapybaraPageObject::Input.from_string '<input type="text">'
|
22
|
+
input.should_not be_untyped
|
23
|
+
end
|
24
|
+
|
25
|
+
it "is true if the input has no type attribute" do
|
26
|
+
input = CapybaraPageObject::Input.from_string '<input>'
|
27
|
+
input.should be_untyped
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
context "#checkable?" do
|
32
|
+
it "is true for a checkbox" do
|
33
|
+
checkbox = '<input type="checkbox">'
|
34
|
+
CapybaraPageObject::Input.from_string(checkbox).should be_checkable
|
35
|
+
end
|
36
|
+
it "is true for a radio button" do
|
37
|
+
radio = '<input type="radio">'
|
38
|
+
CapybaraPageObject::Input.from_string(radio).should be_checkable
|
39
|
+
end
|
40
|
+
it "is false an input with a blank type" do
|
41
|
+
none = '<input type="">'
|
42
|
+
CapybaraPageObject::Input.from_string(none).should_not be_checkable
|
43
|
+
end
|
44
|
+
it "is false for other kinds of input" do
|
45
|
+
text = '<input type="text">'
|
46
|
+
CapybaraPageObject::Input.from_string(text).should_not be_checkable
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../helper'
|
2
|
+
|
3
|
+
module CapybaraPageObject
|
4
|
+
class MyListItem < CapybaraPageObject::Node
|
5
|
+
def value
|
6
|
+
find('.description').text.strip
|
7
|
+
end
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
describe "List" do
|
12
|
+
before do
|
13
|
+
@list = CapybaraPageObject::List.from_string <<-EOF
|
14
|
+
<ul id="products">
|
15
|
+
<li>
|
16
|
+
<span class="description">iPhone</span>
|
17
|
+
<span class="price">$500</span>
|
18
|
+
</li>
|
19
|
+
<li>
|
20
|
+
<span class="description">iPad</span>
|
21
|
+
<span class="price">$800</span>
|
22
|
+
</li>
|
23
|
+
</ul>
|
24
|
+
EOF
|
25
|
+
end
|
26
|
+
|
27
|
+
context "#items" do
|
28
|
+
it "return the list items" do
|
29
|
+
@list.should have(2).items
|
30
|
+
end
|
31
|
+
|
32
|
+
it "accept a custom list item object" do
|
33
|
+
@list.items({:factory => CapybaraPageObject::MyListItem}).first.value.should == "iPhone"
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
context "#key" do
|
38
|
+
it "be the id" do
|
39
|
+
@list.key.should == 'products'
|
40
|
+
end
|
41
|
+
|
42
|
+
it "should handle ordered list (ol)" do
|
43
|
+
list = CapybaraPageObject::List.from_string '<ol id="ordered"></ol>'
|
44
|
+
list.key.should == 'ordered'
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../helper'
|
2
|
+
|
3
|
+
describe "Listitem" do
|
4
|
+
before do
|
5
|
+
@listitem = CapybaraPageObject::Listitem.from_string <<-EOF
|
6
|
+
<li id="foo">
|
7
|
+
<span class="description">iPhone</span>
|
8
|
+
<span class="price">$500</span>
|
9
|
+
</li>
|
10
|
+
EOF
|
11
|
+
end
|
12
|
+
|
13
|
+
# TODO better way of handling whitespace
|
14
|
+
context "#text" do
|
15
|
+
it "return the text of the list" do
|
16
|
+
@listitem.text.strip.should == "iPhone\n $500"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
context "#key" do
|
21
|
+
it "return the id attribute" do
|
22
|
+
@listitem.key.should == 'foo'
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../helper'
|
2
|
+
|
3
|
+
describe "Meta" do
|
4
|
+
context "Meta" do
|
5
|
+
before do
|
6
|
+
@meta = CapybaraPageObject::Meta.from_string <<-EOF
|
7
|
+
<meta name="description" content="my description">
|
8
|
+
EOF
|
9
|
+
end
|
10
|
+
|
11
|
+
context "#key" do
|
12
|
+
it "return the name from the meta tag" do
|
13
|
+
@meta.key.should == 'description'
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
context "#value" do
|
18
|
+
it "return the description from the meta tag" do
|
19
|
+
@meta.value.should == 'my description'
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../helper'
|
2
|
+
|
3
|
+
describe "Select" do
|
4
|
+
before do
|
5
|
+
@select = CapybaraPageObject::Select.from_string '<select name="foo"></textarea>'
|
6
|
+
end
|
7
|
+
|
8
|
+
context "#key" do
|
9
|
+
it "returns the name attribute" do
|
10
|
+
@select.key.should == 'foo'
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
context "#value" do
|
15
|
+
it "returns an single item for a non-multiple select" do
|
16
|
+
s = CapybaraPageObject::Select.from_string <<-EOM
|
17
|
+
<select name="colour">
|
18
|
+
<option>red</option>
|
19
|
+
<option selected>blue</option>
|
20
|
+
</select>
|
21
|
+
EOM
|
22
|
+
s.value.should == 'blue'
|
23
|
+
end
|
24
|
+
|
25
|
+
it "returns an array for amultiple select" do
|
26
|
+
s = CapybaraPageObject::Select.from_string <<-EOM
|
27
|
+
<select name="countries" multiple>
|
28
|
+
<option>france</option>
|
29
|
+
<option selected>spain</option>
|
30
|
+
<option selected>germany</option>
|
31
|
+
</select>
|
32
|
+
EOM
|
33
|
+
s.value.should == ['spain', 'germany']
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../helper'
|
2
|
+
|
3
|
+
describe "CapybaraPageObject::Table" do
|
4
|
+
before do
|
5
|
+
@table = CapybaraPageObject::Table.from_string <<-EOF
|
6
|
+
<table id="table_1" class="table_1_class">
|
7
|
+
<tr id="table_1_tr_1">
|
8
|
+
<th id="table_1_th_1">TH1</th>
|
9
|
+
<th id="table_1_th_2">TH2</th>
|
10
|
+
</tr>
|
11
|
+
<tr id="table_1_tr_2">
|
12
|
+
<td id="table_1_td_1">TD1</td>
|
13
|
+
<td id="table_1_td_2">TD2</td>
|
14
|
+
</tr>
|
15
|
+
</table>
|
16
|
+
EOF
|
17
|
+
end
|
18
|
+
|
19
|
+
context "#rows" do
|
20
|
+
it "return the table's rows" do
|
21
|
+
@table.rows(:keys => 'id').should =~ ['table_1_tr_1', 'table_1_tr_2']
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
context "#headers" do
|
26
|
+
it "return the table's headers" do
|
27
|
+
@table.headers.collect(&:text).should =~ ["TH1", "TH2"]
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../helper'
|
2
|
+
|
3
|
+
describe "Textarea" do
|
4
|
+
before do
|
5
|
+
@textarea = CapybaraPageObject::Textarea.from_string '<textarea name="foo">bar</textarea>'
|
6
|
+
end
|
7
|
+
|
8
|
+
context "#key" do
|
9
|
+
it "returns the name attribute" do
|
10
|
+
@textarea.key.should == 'foo'
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
context "#value" do
|
15
|
+
it "return the content" do
|
16
|
+
@textarea.value.should == 'bar'
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
File without changes
|
data/{test → spec}/helper.rb
RENAMED
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'rubygems'
|
2
2
|
require 'bundler'
|
3
|
+
require 'pp'
|
3
4
|
begin
|
4
5
|
Bundler.setup(:default, :development)
|
5
6
|
rescue Bundler::BundlerError => e
|
@@ -7,18 +8,8 @@ rescue Bundler::BundlerError => e
|
|
7
8
|
$stderr.puts "Run `bundle install` to install missing gems"
|
8
9
|
exit e.status_code
|
9
10
|
end
|
10
|
-
require '
|
11
|
-
require 'shoulda'
|
11
|
+
require 'rspec'
|
12
12
|
|
13
13
|
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
14
14
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
15
15
|
require 'capybara-page-object'
|
16
|
-
|
17
|
-
class Test::Unit::TestCase
|
18
|
-
end
|
19
|
-
|
20
|
-
def load_sample_into_model(model)
|
21
|
-
filename = model.to_s.split('::').last + '.html'
|
22
|
-
html = File.open(File.dirname(__FILE__) + '/' + filename).read
|
23
|
-
model.new(Capybara.string(html))
|
24
|
-
end
|
data/spec/node_spec.rb
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/helper'
|
2
|
+
|
3
|
+
describe "Page" do
|
4
|
+
context "Using the example.html" do
|
5
|
+
context "#title" do
|
6
|
+
it "returns the page title" do
|
7
|
+
node = CapybaraPageObject::Node.from_string '<title>Hello World</title>'
|
8
|
+
node.title.should == 'Hello World'
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
context "#meta_description" do
|
13
|
+
it "returns the meta description" do
|
14
|
+
node = CapybaraPageObject::Node.from_string '<meta name="description" content="meta description">'
|
15
|
+
node.meta_description.should == "meta description"
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
context "#meta_keywords" do
|
20
|
+
it "returns the meta keywords as an array" do
|
21
|
+
node = CapybaraPageObject::Node.from_string '<meta name="keywords" content="keyword 1, keyword 2">'
|
22
|
+
node.meta_keywords.should == ["keyword 1", "keyword 2"]
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
context "#classes" do
|
27
|
+
it "returns an array of class names" do
|
28
|
+
anchor = CapybaraPageObject::Anchor.from_string '<a class="foo bar">'
|
29
|
+
anchor.classes.should =~ ['foo', 'bar']
|
30
|
+
end
|
31
|
+
it "handles extraneous spacing" do
|
32
|
+
anchor = CapybaraPageObject::Anchor.from_string '<a class=" foo bar ">'
|
33
|
+
anchor.classes.should =~ ['foo', 'bar']
|
34
|
+
end
|
35
|
+
it "returns an empty array classes is empty" do
|
36
|
+
anchor = CapybaraPageObject::Anchor.from_string '<a class=" ">'
|
37
|
+
anchor.classes.should be_empty
|
38
|
+
end
|
39
|
+
it "returns an empty array when the classes attribute is not present" do
|
40
|
+
anchor = CapybaraPageObject::Anchor.from_string '<a/>'
|
41
|
+
anchor.classes.should be_empty
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
metadata
CHANGED
@@ -1,106 +1,101 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: capybara-page-object
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.0
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 2
|
9
|
-
- 1
|
10
|
-
version: 0.2.1
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Andy Waite
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- !ruby/object:Gem::Dependency
|
21
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
22
|
-
none: false
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
hash: 3
|
27
|
-
segments:
|
28
|
-
- 0
|
29
|
-
version: "0"
|
30
|
-
version_requirements: *id001
|
12
|
+
date: 2012-04-01 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
31
15
|
name: capybara
|
32
|
-
|
33
|
-
type: :runtime
|
34
|
-
- !ruby/object:Gem::Dependency
|
35
|
-
requirement: &id002 !ruby/object:Gem::Requirement
|
16
|
+
requirement: &2161286340 !ruby/object:Gem::Requirement
|
36
17
|
none: false
|
37
|
-
requirements:
|
38
|
-
- -
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
|
41
|
-
|
42
|
-
- 0
|
43
|
-
version: "0"
|
44
|
-
version_requirements: *id002
|
45
|
-
name: shoulda
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
46
23
|
prerelease: false
|
47
|
-
|
48
|
-
- !ruby/object:Gem::Dependency
|
49
|
-
|
24
|
+
version_requirements: *2161286340
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: bundler
|
27
|
+
requirement: &2161285480 !ruby/object:Gem::Requirement
|
50
28
|
none: false
|
51
|
-
requirements:
|
29
|
+
requirements:
|
52
30
|
- - ~>
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
hash: 23
|
55
|
-
segments:
|
56
|
-
- 1
|
57
|
-
- 0
|
58
|
-
- 0
|
31
|
+
- !ruby/object:Gem::Version
|
59
32
|
version: 1.0.0
|
60
|
-
version_requirements: *id003
|
61
|
-
name: bundler
|
62
|
-
prerelease: false
|
63
33
|
type: :development
|
64
|
-
|
65
|
-
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *2161285480
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: jeweler
|
38
|
+
requirement: &2161284700 !ruby/object:Gem::Requirement
|
66
39
|
none: false
|
67
|
-
requirements:
|
40
|
+
requirements:
|
68
41
|
- - ~>
|
69
|
-
- !ruby/object:Gem::Version
|
70
|
-
hash: 7
|
71
|
-
segments:
|
72
|
-
- 1
|
73
|
-
- 6
|
74
|
-
- 4
|
42
|
+
- !ruby/object:Gem::Version
|
75
43
|
version: 1.6.4
|
76
|
-
|
77
|
-
name: jeweler
|
44
|
+
type: :development
|
78
45
|
prerelease: false
|
46
|
+
version_requirements: *2161284700
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: rcov
|
49
|
+
requirement: &2161284060 !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
79
55
|
type: :development
|
80
|
-
|
81
|
-
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: *2161284060
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: rspec
|
60
|
+
requirement: &2161283420 !ruby/object:Gem::Requirement
|
82
61
|
none: false
|
83
|
-
requirements:
|
84
|
-
- -
|
85
|
-
- !ruby/object:Gem::Version
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
name:
|
62
|
+
requirements:
|
63
|
+
- - ! '>='
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '0'
|
66
|
+
type: :development
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: *2161283420
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rake
|
71
|
+
requirement: &2161282680 !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
73
|
+
requirements:
|
74
|
+
- - ~>
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: 0.9.2.2
|
77
|
+
type: :development
|
92
78
|
prerelease: false
|
79
|
+
version_requirements: *2161282680
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: rdoc
|
82
|
+
requirement: &2161281960 !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
85
|
+
- - ~>
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '3.12'
|
93
88
|
type: :development
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: *2161281960
|
94
91
|
description: Page Objects for Capybara
|
95
92
|
email: andy@andywaite.com
|
96
93
|
executables: []
|
97
|
-
|
98
94
|
extensions: []
|
99
|
-
|
100
|
-
extra_rdoc_files:
|
95
|
+
extra_rdoc_files:
|
101
96
|
- LICENSE.txt
|
102
97
|
- README.rdoc
|
103
|
-
files:
|
98
|
+
files:
|
104
99
|
- .document
|
105
100
|
- Gemfile
|
106
101
|
- Gemfile.lock
|
@@ -109,52 +104,68 @@ files:
|
|
109
104
|
- Rakefile
|
110
105
|
- VERSION
|
111
106
|
- capybara-page-object.gemspec
|
112
|
-
- lib/base.rb
|
113
107
|
- lib/capybara-page-object.rb
|
114
|
-
- lib/
|
115
|
-
- lib/
|
116
|
-
- lib/
|
117
|
-
- lib/
|
118
|
-
- lib/
|
119
|
-
-
|
120
|
-
-
|
121
|
-
-
|
122
|
-
-
|
123
|
-
-
|
124
|
-
-
|
125
|
-
-
|
108
|
+
- lib/collections.rb
|
109
|
+
- lib/element.rb
|
110
|
+
- lib/element/anchor.rb
|
111
|
+
- lib/element/form.rb
|
112
|
+
- lib/element/form_field.rb
|
113
|
+
- lib/element/image.rb
|
114
|
+
- lib/element/input.rb
|
115
|
+
- lib/element/list.rb
|
116
|
+
- lib/element/listitem.rb
|
117
|
+
- lib/element/meta.rb
|
118
|
+
- lib/element/select.rb
|
119
|
+
- lib/element/table.rb
|
120
|
+
- lib/element/textarea.rb
|
121
|
+
- lib/extractor/common.rb
|
122
|
+
- lib/extractor/page_level.rb
|
123
|
+
- lib/html5_data.rb
|
124
|
+
- lib/key_value.rb
|
125
|
+
- lib/navigation.rb
|
126
|
+
- lib/node.rb
|
127
|
+
- spec/common_spec.rb
|
128
|
+
- spec/element/anchor_spec.rb
|
129
|
+
- spec/element/base_spec.rb
|
130
|
+
- spec/element/form_field_spec.rb
|
131
|
+
- spec/element/form_spec.rb
|
132
|
+
- spec/element/image_spec.rb
|
133
|
+
- spec/element/input_spec.rb
|
134
|
+
- spec/element/list_spec.rb
|
135
|
+
- spec/element/listitem_spec.rb
|
136
|
+
- spec/element/meta_spec.rb
|
137
|
+
- spec/element/select_spec.rb
|
138
|
+
- spec/element/table_spec.rb
|
139
|
+
- spec/element/textarea_spec.rb
|
140
|
+
- spec/fixtures/node.html
|
141
|
+
- spec/helper.rb
|
142
|
+
- spec/node_spec.rb
|
126
143
|
homepage: http://github.com/andyw8/capybara-page-object
|
127
|
-
licenses:
|
144
|
+
licenses:
|
128
145
|
- MIT
|
129
146
|
post_install_message:
|
130
147
|
rdoc_options: []
|
131
|
-
|
132
|
-
require_paths:
|
148
|
+
require_paths:
|
133
149
|
- lib
|
134
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
150
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
135
151
|
none: false
|
136
|
-
requirements:
|
137
|
-
- -
|
138
|
-
- !ruby/object:Gem::Version
|
139
|
-
|
140
|
-
segments:
|
152
|
+
requirements:
|
153
|
+
- - ! '>='
|
154
|
+
- !ruby/object:Gem::Version
|
155
|
+
version: '0'
|
156
|
+
segments:
|
141
157
|
- 0
|
142
|
-
|
143
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
158
|
+
hash: 4021578390759105062
|
159
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
144
160
|
none: false
|
145
|
-
requirements:
|
146
|
-
- -
|
147
|
-
- !ruby/object:Gem::Version
|
148
|
-
|
149
|
-
segments:
|
150
|
-
- 0
|
151
|
-
version: "0"
|
161
|
+
requirements:
|
162
|
+
- - ! '>='
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: '0'
|
152
165
|
requirements: []
|
153
|
-
|
154
166
|
rubyforge_project:
|
155
|
-
rubygems_version: 1.8.
|
167
|
+
rubygems_version: 1.8.6
|
156
168
|
signing_key:
|
157
169
|
specification_version: 3
|
158
170
|
summary: Page Objects for Capybara
|
159
171
|
test_files: []
|
160
|
-
|