wist 0.0.5 → 0.0.6
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 +7 -0
- data/Gemfile +2 -2
- data/Gemfile.lock +20 -29
- data/lib/wist.rb +14 -14
- data/test/test.css +3 -0
- data/test/test0.html +7 -4
- data/test/test_helper.rb +0 -1
- data/test/tests/wist_test.rb +11 -6
- data/wist.gemspec +1 -1
- metadata +11 -13
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: bb6a402a82ccab3effa69cea5c049681cbb10ed4
|
4
|
+
data.tar.gz: 26eaa1f4a52135ac50200c19683a5e1d3ae46d8c
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 5332a3666e05912139c939ebfdadb3968556a2b29a8e0e30ace07928e70f60c54e4d367c954fcf38598d4552cc44c8a418381a224410097f038e928bce63ebeb
|
7
|
+
data.tar.gz: e855d76233d1334a23651c7455449a92cade9c7b6e4f773dcaf57ace370b0d4817c5d69d51cac51c1d2489f74873e467295584792d79509d6fd9e2b9ceed2e42
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,60 +1,51 @@
|
|
1
|
-
GIT
|
2
|
-
remote: git://github.com/jonleighton/poltergeist.git
|
3
|
-
revision: 98d4a4a8936e8d6b3417f2c057bafaba40874eee
|
4
|
-
specs:
|
5
|
-
poltergeist (1.0.2)
|
6
|
-
capybara (~> 2.0, >= 2.0.1)
|
7
|
-
faye-websocket (~> 0.4, >= 0.4.4)
|
8
|
-
http_parser.rb (~> 0.5.3)
|
9
|
-
|
10
1
|
PATH
|
11
2
|
remote: .
|
12
3
|
specs:
|
13
|
-
wist (0.0.
|
4
|
+
wist (0.0.6)
|
14
5
|
capybara
|
15
6
|
|
16
7
|
GEM
|
17
8
|
remote: http://rubygems.org/
|
18
9
|
specs:
|
19
|
-
addressable (2.3.2)
|
20
10
|
ansi (1.4.3)
|
21
|
-
capybara (2.0.
|
11
|
+
capybara (2.0.3)
|
22
12
|
mime-types (>= 1.16)
|
23
13
|
nokogiri (>= 1.3.3)
|
24
14
|
rack (>= 1.0.0)
|
25
15
|
rack-test (>= 0.5.4)
|
26
16
|
selenium-webdriver (~> 2.0)
|
27
17
|
xpath (~> 1.0.0)
|
28
|
-
childprocess (0.3.
|
29
|
-
ffi (~> 1.0, >= 1.0.
|
18
|
+
childprocess (0.3.9)
|
19
|
+
ffi (~> 1.0, >= 1.0.11)
|
30
20
|
coderay (1.0.8)
|
31
|
-
eventmachine (1.0.
|
32
|
-
faye-websocket (0.4.
|
21
|
+
eventmachine (1.0.1)
|
22
|
+
faye-websocket (0.4.7)
|
33
23
|
eventmachine (>= 0.12.0)
|
34
|
-
ffi (1.
|
24
|
+
ffi (1.6.0)
|
35
25
|
http_parser.rb (0.5.3)
|
36
|
-
libwebsocket (0.1.7.1)
|
37
|
-
addressable
|
38
|
-
websocket
|
39
26
|
method_source (0.8.1)
|
40
|
-
mime-types (1.
|
27
|
+
mime-types (1.21)
|
41
28
|
minitest (4.3.3)
|
42
|
-
multi_json (1.
|
43
|
-
nokogiri (1.5.
|
29
|
+
multi_json (1.7.2)
|
30
|
+
nokogiri (1.5.9)
|
31
|
+
poltergeist (1.1.0)
|
32
|
+
capybara (~> 2.0, >= 2.0.1)
|
33
|
+
faye-websocket (~> 0.4, >= 0.4.4)
|
34
|
+
http_parser.rb (~> 0.5.3)
|
44
35
|
pry (0.9.10)
|
45
36
|
coderay (~> 1.0.5)
|
46
37
|
method_source (~> 0.8)
|
47
38
|
slop (~> 3.3.1)
|
48
|
-
rack (1.
|
39
|
+
rack (1.5.2)
|
49
40
|
rack-test (0.6.2)
|
50
41
|
rack (>= 1.0)
|
51
42
|
rake (10.0.3)
|
52
43
|
rubyzip (0.9.9)
|
53
|
-
selenium-webdriver (2.
|
44
|
+
selenium-webdriver (2.31.0)
|
54
45
|
childprocess (>= 0.2.5)
|
55
|
-
libwebsocket (~> 0.1.3)
|
56
46
|
multi_json (~> 1.0)
|
57
47
|
rubyzip
|
48
|
+
websocket (~> 1.0.4)
|
58
49
|
slop (3.3.3)
|
59
50
|
tconsole (1.2.7)
|
60
51
|
minitest (~> 4.3.0)
|
@@ -62,7 +53,7 @@ GEM
|
|
62
53
|
term-ansicolor (1.0.7)
|
63
54
|
turn (0.9.6)
|
64
55
|
ansi
|
65
|
-
websocket (1.0.
|
56
|
+
websocket (1.0.7)
|
66
57
|
xpath (1.0.0)
|
67
58
|
nokogiri (~> 1.3)
|
68
59
|
|
@@ -70,8 +61,8 @@ PLATFORMS
|
|
70
61
|
ruby
|
71
62
|
|
72
63
|
DEPENDENCIES
|
73
|
-
capybara (= 2.0.
|
74
|
-
poltergeist
|
64
|
+
capybara (= 2.0.3)
|
65
|
+
poltergeist (= 1.1.0)
|
75
66
|
pry
|
76
67
|
rake
|
77
68
|
tconsole
|
data/lib/wist.rb
CHANGED
@@ -8,8 +8,14 @@ module Wist
|
|
8
8
|
end
|
9
9
|
end
|
10
10
|
|
11
|
-
def wait_until
|
12
|
-
Selenium::WebDriver::Wait.new(timeout: defined?(@wait) ? @wait : 20).until
|
11
|
+
def wait_until
|
12
|
+
Selenium::WebDriver::Wait.new(timeout: defined?(@wait) ? @wait : 20).until do
|
13
|
+
begin
|
14
|
+
yield
|
15
|
+
rescue
|
16
|
+
false
|
17
|
+
end
|
18
|
+
end
|
13
19
|
end
|
14
20
|
|
15
21
|
def click(selector)
|
@@ -61,8 +67,7 @@ module Wist
|
|
61
67
|
end
|
62
68
|
|
63
69
|
def get_val(selector)
|
64
|
-
find(selector)
|
65
|
-
get_js "#{jquery_selector selector}.val()"
|
70
|
+
find(selector).value
|
66
71
|
end
|
67
72
|
|
68
73
|
def set_input_and_press_enter(selector, val)
|
@@ -85,21 +90,16 @@ module Wist
|
|
85
90
|
visit current_url
|
86
91
|
end
|
87
92
|
|
88
|
-
def element_displayed?(selector)
|
89
|
-
find(selector).visible?
|
90
|
-
end
|
91
|
-
|
92
93
|
def wait_for_ajax
|
93
94
|
wait_until { get_js '$.isReady && ($.active == 0)' }
|
94
95
|
end
|
95
96
|
|
96
97
|
def wait_til_element_visible(selector)
|
97
|
-
|
98
|
-
|
99
|
-
el = find(selector)
|
100
|
-
el.visible?
|
101
|
-
end
|
102
|
-
el
|
98
|
+
has_css?(selector, visible: true)
|
99
|
+
find(selector)
|
103
100
|
end
|
104
101
|
|
102
|
+
def scroll_to(selector)
|
103
|
+
page.execute_script("#{jquery_selector('html, body')}.scrollTop(#{jquery_selector(selector)}.offset().top)")
|
104
|
+
end
|
105
105
|
end
|
data/test/test.css
ADDED
data/test/test0.html
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
<!DOCTYPE html>
|
2
2
|
<html>
|
3
3
|
<head>
|
4
|
+
<link rel='stylesheet' type='text/css' href='test.css'>
|
4
5
|
</head>
|
5
6
|
<body>
|
6
7
|
<button id='click_test'>foo</button>
|
7
8
|
<button id='wait_test'>foo</button>
|
8
9
|
<button id='enable_tweet_button'>foo</button>
|
9
|
-
<a href=
|
10
|
+
<a href='https://twitter.com/share' class='twitter-share-button' data-text='check this out'></a>
|
10
11
|
<a id='switch_window_test' href='test1.html' target='_blank'>foo</a>
|
11
12
|
<input id='input_test' type='text' />
|
12
13
|
|
@@ -23,8 +24,10 @@
|
|
23
24
|
|
24
25
|
<input id='test_set_input_and_press_enter' type='text' />
|
25
26
|
|
26
|
-
<
|
27
|
-
|
28
|
-
<script src=
|
27
|
+
<div id='test_scroll_to'></div>
|
28
|
+
|
29
|
+
<script src='jquery.js'></script>
|
30
|
+
<script src='jquery.cookie.js'></script>
|
31
|
+
<script src='test.js'></script>
|
29
32
|
</body>
|
30
33
|
</html>
|
data/test/test_helper.rb
CHANGED
data/test/tests/wist_test.rb
CHANGED
@@ -20,7 +20,11 @@ class WistTest < CapybaraTestCase
|
|
20
20
|
button = find('#wait_test')
|
21
21
|
button.click
|
22
22
|
assert button.text != 'clicked'
|
23
|
-
|
23
|
+
|
24
|
+
wait_until do
|
25
|
+
raise unless button.text == 'clicked'
|
26
|
+
true
|
27
|
+
end
|
24
28
|
end
|
25
29
|
|
26
30
|
def test_verify_tweet_button
|
@@ -73,11 +77,6 @@ class WistTest < CapybaraTestCase
|
|
73
77
|
assert_equal '', get_val('#input_test')
|
74
78
|
end
|
75
79
|
|
76
|
-
def test_element_displayed?
|
77
|
-
assert_equal false, element_displayed?('#invisible')
|
78
|
-
assert element_displayed?('#input_test')
|
79
|
-
end
|
80
|
-
|
81
80
|
def test_wait_til_element_visible
|
82
81
|
el = find('#test_wait_til_element_visible')
|
83
82
|
el.click
|
@@ -103,4 +102,10 @@ class WistTest < CapybaraTestCase
|
|
103
102
|
end
|
104
103
|
assert_equal('bar', get_val('#test_set_input_and_press_enter'))
|
105
104
|
end
|
105
|
+
|
106
|
+
def test_scroll_to
|
107
|
+
old_offset = get_js('window.pageYOffset')
|
108
|
+
scroll_to('#test_scroll_to')
|
109
|
+
assert_equal(true, get_js('window.pageYOffset') != old_offset)
|
110
|
+
end
|
106
111
|
end
|
data/wist.gemspec
CHANGED
metadata
CHANGED
@@ -1,30 +1,27 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wist
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.6
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Lihan Li
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-03-
|
11
|
+
date: 2013-03-29 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
|
21
19
|
version: '0'
|
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
|
29
26
|
version: '0'
|
30
27
|
description:
|
@@ -42,6 +39,7 @@ files:
|
|
42
39
|
- lib/wist.rb
|
43
40
|
- test/jquery.cookie.js
|
44
41
|
- test/jquery.js
|
42
|
+
- test/test.css
|
45
43
|
- test/test.js
|
46
44
|
- test/test0.html
|
47
45
|
- test/test1.html
|
@@ -50,31 +48,31 @@ files:
|
|
50
48
|
- wist.gemspec
|
51
49
|
homepage: http://github.com/lihanli/wist
|
52
50
|
licenses: []
|
51
|
+
metadata: {}
|
53
52
|
post_install_message:
|
54
53
|
rdoc_options: []
|
55
54
|
require_paths:
|
56
55
|
- lib
|
57
56
|
required_ruby_version: !ruby/object:Gem::Requirement
|
58
|
-
none: false
|
59
57
|
requirements:
|
60
|
-
- -
|
58
|
+
- - '>='
|
61
59
|
- !ruby/object:Gem::Version
|
62
60
|
version: '0'
|
63
61
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
64
|
-
none: false
|
65
62
|
requirements:
|
66
|
-
- -
|
63
|
+
- - '>='
|
67
64
|
- !ruby/object:Gem::Version
|
68
65
|
version: '0'
|
69
66
|
requirements: []
|
70
67
|
rubyforge_project:
|
71
|
-
rubygems_version:
|
68
|
+
rubygems_version: 2.0.0
|
72
69
|
signing_key:
|
73
|
-
specification_version:
|
70
|
+
specification_version: 4
|
74
71
|
summary: capybara helpers
|
75
72
|
test_files:
|
76
73
|
- test/jquery.cookie.js
|
77
74
|
- test/jquery.js
|
75
|
+
- test/test.css
|
78
76
|
- test/test.js
|
79
77
|
- test/test0.html
|
80
78
|
- test/test1.html
|