smart_driver 1.0.0 → 1.0.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: e073d66d4fa0efa5bc1c717a2279859e3a3c62c1
4
- data.tar.gz: 392215ac3bf4fe649ada1044102dec286bb1376a
3
+ metadata.gz: d8160985cfdd5f728718306a1c64898d87f596b8
4
+ data.tar.gz: 3c0edb4b022f975a0d838641c04d803a3d47b4a8
5
5
  SHA512:
6
- metadata.gz: 8dd1103f8d0f2e945243dd843ad3e0cc407be15c6ab0594d243eaa7f3d1e10d2e9da820674f566ed5e5f65170c7a189276124b9f62374aaa6eaa696e0e00cc3c
7
- data.tar.gz: 4c22b5bf8ff9aa7123ec0153b9538e91dd7df8ce9793637aeaf1737ab668b9f7a43fc51bfc2d113673d8a03fb2793cef6bb154d382f51158bada8bafb18de3a7
6
+ metadata.gz: c04f2a7ac82a109c2f0a695432fd2519640ce27d6bf3bfb2663c413f61e5b147faf744e5ccf2f17ef3a584817cedd96cfe58d72d873cae1a10e47bc6fd991000
7
+ data.tar.gz: 5ca35deb3420f9964cfb9cfed2b842445d385a7875c861f2dd643f9f1d615d4d1a0b1c708ff0800209d442b83beda79c11d1a4dd8d4ffd53143b4960e2099905
@@ -1,3 +1,3 @@
1
1
  class SmartDriver
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.1"
3
3
  end
data/lib/smart_driver.rb CHANGED
@@ -31,6 +31,20 @@ class SmartDriver
31
31
  logging :fail, "#{selector} cannot be found"
32
32
  end
33
33
 
34
+ def find_by_text(text)
35
+ logging :info, "find by text #{text}..."
36
+ @__driver__.find_element({xpath: "//*[text()[contains(.,\"#{text}\")]]"})
37
+ rescue Selenium::WebDriver::Error::NoSuchElementError
38
+ logging :fail, "element with #{text} cannot be found"
39
+ end
40
+
41
+ def finds_by_text(text)
42
+ logging :info, "finds by text #{text}..."
43
+ @__driver__.find_elements({xpath: "//*[text()[contains(.,\"#{text}\")]]"})
44
+ rescue Selenium::WebDriver::Error::NoSuchElementError
45
+ logging :fail, "elements with #{text} cannot be found"
46
+ end
47
+
34
48
  # http://stackoverflow.com/questions/11908249/debugging-element-is-not-clickable-at-point-error
35
49
  def scroll(selector)
36
50
  logging :info, "scroll to #{selector}..."
@@ -41,14 +55,10 @@ class SmartDriver
41
55
 
42
56
  def has?(selector)
43
57
  !!find(selector)
44
- rescue Selenium::WebDriver::Error::NoSuchElementError
45
- false
46
58
  end
47
59
 
48
60
  def has_text?(text)
49
- !!@__driver__.find_element({xpath: "//*[text()[contains(.,\"#{text}\")]]"})
50
- rescue Selenium::WebDriver::Error::NoSuchElementError
51
- false
61
+ !!find_by_text(text)
52
62
  end
53
63
 
54
64
  def click(selector)
@@ -73,6 +83,10 @@ class SmartDriver
73
83
  @__driver__.respond_to?(method) ? @__driver__.send(method, *args, &block) : super
74
84
  end
75
85
 
86
+ def switch_window(num)
87
+ @__driver__.switch_to.window @__driver__.window_handles[num]
88
+ end
89
+
76
90
  private
77
91
  def logging(sym, text)
78
92
  label = case sym
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smart_driver
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - gogotanaka
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-01-02 00:00:00.000000000 Z
11
+ date: 2016-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: selenium-webdriver