amazon_auth 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bef1e0c0082271554c7f432b4f47c3393185a8c7
4
- data.tar.gz: 35b752aa09e5afc2e6e80430340709898e29da5b
3
+ metadata.gz: 3ca9c9fc3e71a8956687c5a35fa3641e3cd8a400
4
+ data.tar.gz: b675685190fe70eba55e31f324cb1ec9a2a57272
5
5
  SHA512:
6
- metadata.gz: 4b7a75614c9de5ee2b874cddfdadfcf3f3af0da4749f79b7b0ecccd39fac63bf2b6756908f0554f6c7db1a16a07b6368a80dd1579cea67b3ef7f0db2be710857
7
- data.tar.gz: ee61dd83b8f73127a0cb8053ef4b340e67027d8e6b6c5bfb000a170b542ba251e4a6ebd09ae7ee95e3770d07292d2f8a1d5515fa1b4380a7ff1a966727592c9c
6
+ metadata.gz: 50b6d4cb570cd913512648a7093cd1828e00f55c6ed2d122e553718f31b529dc81350fb4683ac57006ae479138ffe597ba078464d7c8291f99e7ec7244feaaf8
7
+ data.tar.gz: ba7482249e22c31f8b1fddfd32fa18ce16bce868509d44a0f2fa75ff637b8e56b0dbca21b343b0a86dd15369c2e3e5f997b42bc16dfd416f9148d59f7259470b
data/lib/amazon_auth.rb CHANGED
@@ -8,6 +8,7 @@ begin
8
8
  rescue LoadError
9
9
  end
10
10
  require_relative "amazon_auth/version"
11
+ require_relative "amazon_auth/extensions/session_extension"
11
12
  require_relative "amazon_auth/amazon_info"
12
13
  require_relative "amazon_auth/capybara"
13
14
  require_relative "amazon_auth/converter"
@@ -1,5 +1,7 @@
1
1
  module AmazonAuth
2
2
  class Client
3
+ include AmazonAuth::SessionExtension
4
+
3
5
  attr_accessor :initial_url
4
6
 
5
7
  def initialize(options = {})
@@ -19,21 +21,9 @@ module AmazonAuth
19
21
  end
20
22
  end
21
23
  @driver = options.fetch(:driver, :selenium)
22
- end
23
-
24
- def links_for(selector, options = {})
25
- wait_for_selector(selector, options)
26
- doc.css(selector).map{|e| e['href'] }
27
- end
28
-
29
- def wait_for_selector(selector, options = {})
30
- options.fetch(:wait_time, 3).times do
31
- if session.first(selector)
32
- break
33
- else
34
- sleep(1)
35
- end
36
- end
24
+ rescue => e
25
+ puts "Please setup credentials of amazon_auth gem with folloing its instruction."
26
+ raise e
37
27
  end
38
28
 
39
29
  def sign_in
@@ -57,12 +47,15 @@ module AmazonAuth
57
47
  end
58
48
 
59
49
  def retry_signin_form_with_image_recognition
50
+ return true unless session.has_selector?('#signInSubmit')
60
51
  session.fill_in 'ap_password', with: @password
61
52
  if image_recognition_displayed?
62
53
  input = ask "Got the prompt. Read characters from the image: "
63
54
  session.fill_in 'auth-captcha-guess', with: input
64
55
  end
56
+ sleep 1
65
57
  session.click_on('signInSubmit')
58
+ sleep 2
66
59
  end
67
60
 
68
61
  def alert_displayed?
@@ -77,10 +70,6 @@ module AmazonAuth
77
70
  @session ||= Capybara::Session.new(@driver)
78
71
  end
79
72
 
80
- def doc
81
- Nokogiri.HTML(session.html)
82
- end
83
-
84
73
  # Hide instance variables of credentials on console
85
74
  def inspect
86
75
  to_s
@@ -0,0 +1,23 @@
1
+ module AmazonAuth
2
+ module SessionExtension
3
+
4
+ def doc
5
+ Nokogiri.HTML(session.html)
6
+ end
7
+
8
+ def links_for(selector, options = {})
9
+ wait_for_selector(selector, options)
10
+ doc.css(selector).map{|e| e['href'] }
11
+ end
12
+
13
+ def wait_for_selector(selector, options = {})
14
+ options.fetch(:wait_time, 3).times do
15
+ if session.first(selector)
16
+ break
17
+ else
18
+ sleep(1)
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -1,3 +1,3 @@
1
1
  module AmazonAuth
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amazon_auth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kazuho Yamaguchi
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-04-26 00:00:00.000000000 Z
11
+ date: 2017-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capybara
@@ -160,6 +160,7 @@ files:
160
160
  - lib/amazon_auth/capybara.rb
161
161
  - lib/amazon_auth/client.rb
162
162
  - lib/amazon_auth/converter.rb
163
+ - lib/amazon_auth/extensions/session_extension.rb
163
164
  - lib/amazon_auth/version.rb
164
165
  homepage: https://github.com/kyamaguchi/amazon_auth
165
166
  licenses: