splinter 0.0.6 → 0.0.7
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 +15 -0
- data/Rakefile +3 -0
- data/lib/splinter/capybara/actions.rb +11 -2
- data/lib/splinter/capybara/form_completer.rb +12 -0
- data/lib/splinter/version.rb +1 -1
- metadata +5 -18
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
MTYxMjExYjliOGM3MTJhZTZkNzZiOWUxZTk5MzA3MGU5Y2YxY2Y2Nw==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
OTljNzk3YTg1NDU1NjMwNWI2YzY1ODU5ZDY1M2RiNDJkNjM5YjU3NA==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
NGQ2MWYyOWQ4ZDM4NGFjMWQzYWNiMjZmOTU5MmI3YTRiOWNiZDlkODhiZTQ2
|
10
|
+
ZWZkMzBhMGZjMjVmMGIyZWUxNzNkNjVhMmU4Nzc4YTY1MmJjMjgxMTZiMDRi
|
11
|
+
MjRkZWRhMDFkZTMzYmU2MTAxNjc5NjAzYWY3Yjk5MmE2M2YyZTc=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
N2ZhY2M3Y2VhNzI5YzhjMDExMTQyNzk0MjcwMDEzZTA0ZDJjMDI3MmY2ODc3
|
14
|
+
ZmNhODQ3YTUxNTkyYzljM2I0MmJlOGExMDc3MWJiYWM1YmFlOGQwZmJmNTcz
|
15
|
+
NGIzMDI5ZjkyZWE3ZGEzMDI5YjYwNDA4YTI4ZjNlOGQwYWFlZTE=
|
data/Rakefile
CHANGED
@@ -42,9 +42,18 @@ module Splinter
|
|
42
42
|
# f.datetime :publish_at, Time.now
|
43
43
|
# t.time :publish_at, Time.now
|
44
44
|
# end
|
45
|
+
#
|
46
|
+
# You can also manually submit in case your submit input field requires
|
47
|
+
# a custom selector:
|
48
|
+
#
|
49
|
+
# complete_form :post do |f|
|
50
|
+
# ...
|
51
|
+
# f.submit "//custom/xpath/selector"
|
52
|
+
# end
|
53
|
+
#
|
45
54
|
def complete_form(base)
|
46
|
-
yield FormCompleter.new(base, self)
|
47
|
-
|
55
|
+
yield form = FormCompleter.new(base, self)
|
56
|
+
form.submit unless form.submitted?
|
48
57
|
end
|
49
58
|
|
50
59
|
# Selects hour and minute dropdowns for a time attribute.
|
@@ -3,6 +3,8 @@ module Splinter
|
|
3
3
|
# The FormCompleter is a simple proxy that delegates actions to a Capybara
|
4
4
|
# session.
|
5
5
|
class FormCompleter
|
6
|
+
attr_reader :submitted
|
7
|
+
|
6
8
|
def initialize(base, page)
|
7
9
|
@base = base
|
8
10
|
@page = page
|
@@ -36,6 +38,16 @@ module Splinter
|
|
36
38
|
def datetime(id, value)
|
37
39
|
@page.send :select_datetime, value, { :id_prefix => "#{@base}_#{id}" }
|
38
40
|
end
|
41
|
+
|
42
|
+
def submit(selector = "//form[contains(@id,'#{@base}')]//input[@type='submit']")
|
43
|
+
@page.send(:find, :xpath, selector).click
|
44
|
+
@submitted = true
|
45
|
+
end
|
46
|
+
|
47
|
+
# Public: Checks if this form has already been submitted.
|
48
|
+
def submitted?
|
49
|
+
submitted
|
50
|
+
end
|
39
51
|
end
|
40
52
|
end
|
41
53
|
end
|
data/lib/splinter/version.rb
CHANGED
metadata
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: splinter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.7
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Joshua Priddle
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-
|
11
|
+
date: 2013-03-18 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: capybara
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ~>
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ~>
|
28
25
|
- !ruby/object:Gem::Version
|
@@ -30,7 +27,6 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rspec
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ~>
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ~>
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -46,7 +41,6 @@ dependencies:
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: sinatra
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
45
|
- - ~>
|
52
46
|
- !ruby/object:Gem::Version
|
@@ -54,7 +48,6 @@ dependencies:
|
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
52
|
- - ~>
|
60
53
|
- !ruby/object:Gem::Version
|
@@ -62,7 +55,6 @@ dependencies:
|
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: rake
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
59
|
- - ~>
|
68
60
|
- !ruby/object:Gem::Version
|
@@ -70,7 +62,6 @@ dependencies:
|
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
66
|
- - ~>
|
76
67
|
- !ruby/object:Gem::Version
|
@@ -78,7 +69,6 @@ dependencies:
|
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: rack-test
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
73
|
- - ~>
|
84
74
|
- !ruby/object:Gem::Version
|
@@ -86,7 +76,6 @@ dependencies:
|
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
80
|
- - ~>
|
92
81
|
- !ruby/object:Gem::Version
|
@@ -116,28 +105,26 @@ files:
|
|
116
105
|
- spec/test_app/views/index.erb
|
117
106
|
homepage: https://github.com/site5/splinter
|
118
107
|
licenses: []
|
108
|
+
metadata: {}
|
119
109
|
post_install_message:
|
120
110
|
rdoc_options:
|
121
111
|
- --charset=UTF-8
|
122
112
|
require_paths:
|
123
113
|
- lib
|
124
114
|
required_ruby_version: !ruby/object:Gem::Requirement
|
125
|
-
none: false
|
126
115
|
requirements:
|
127
116
|
- - ! '>='
|
128
117
|
- !ruby/object:Gem::Version
|
129
118
|
version: '0'
|
130
119
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
131
|
-
none: false
|
132
120
|
requirements:
|
133
121
|
- - ! '>='
|
134
122
|
- !ruby/object:Gem::Version
|
135
123
|
version: '0'
|
136
124
|
requirements: []
|
137
125
|
rubyforge_project:
|
138
|
-
rubygems_version:
|
126
|
+
rubygems_version: 2.0.3
|
139
127
|
signing_key:
|
140
|
-
specification_version:
|
128
|
+
specification_version: 4
|
141
129
|
summary: Splinter is a Capybara Ninja
|
142
130
|
test_files: []
|
143
|
-
has_rdoc:
|