appium_capybara 0.0.4 → 0.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a40bfe134ed40216b27a32ff34b5393e1f8f5404
4
- data.tar.gz: ca0f0703b88553cfabbe209307722fd3a5c140f1
3
+ metadata.gz: 6edab193f01c55c877d14ef3f75e94eee19b8984
4
+ data.tar.gz: 516a8beca9bba1989a413e7ad16d946663b6a133
5
5
  SHA512:
6
- metadata.gz: 62e34986316ff73b397de699b6f2bb3ed664f35a9404544b39f146f7a2749768de45cb97f93b2ca4481c96eb38efbd80927777875bf38968eb10232698bcf576
7
- data.tar.gz: 0f18b9099c501e0806bcd0c6484a501029ee4e63c04f2d2dae02bcffe32c4a4327d3fd457d53a3edb76b249ffa02284858545b06e5bf0c360fa1a8ecc2d330ab
6
+ metadata.gz: 3f426caf84fd43ee66b88d075ef160d165a69bc6a7b78d265c969df7af66362d9e8929bfb408309fde302a5b741bf3b52641d5edf0bc298edc9b6f6c7dde2ff2
7
+ data.tar.gz: 41c64a552d3734197da528b4d2d6885d182bfa989f0796afaea9ed1446dc9c19248da7e264a6b20f49b71272b694af2003590fc88c3391e421624604d93874e5
data/README.md CHANGED
@@ -33,6 +33,18 @@ end
33
33
  Capybara.default_driver = :appium
34
34
  ```
35
35
 
36
+ ## Capybara server
37
+ appium_capybara driver automatically starts a Rails server in `test` environment.
38
+
39
+ By default Capybara starts this web server listening to localhost only and on a random port. It is advised
40
+ to force Capybara to listen to all interface and listen to a specific port, and set this server address
41
+ in your mobile application.
42
+
43
+ ```ruby
44
+ Capybara.server_host = '0.0.0.0' # Listen to all interfaces
45
+ Capybara.server_port = 56844 # Open port TCP 56844, change at your convenience
46
+ ```
47
+
36
48
  ## Publishing to rubygems
37
49
 
38
50
  Make sure to run `thor bump` or manually modify version.rb before publishing. RubyGems will not allow the same
@@ -1,10 +1,9 @@
1
1
  module Appium::Capybara
2
- class Appium::Capybara::Driver < Capybara::Driver::Base
3
- DEFAULT_OPTIONS = {
4
- }
5
-
6
- attr_reader :app, :options
2
+ # methods in this class either override selenium driver methods
3
+ # or they're new and specific to appium.
4
+ class Appium::Capybara::Driver < Capybara::Selenium::Driver
7
5
 
6
+ # override
8
7
  def browser
9
8
  unless @browser
10
9
  @browser = Appium::Driver.new @options
@@ -14,72 +13,67 @@ module Appium::Capybara
14
13
  @browser
15
14
  end
16
15
 
17
- def initialize(app, options = {})
18
- @app = app
19
- @options = DEFAULT_OPTIONS.merge(options)
20
- end
21
-
22
- def browser_initialized?
23
- !@browser.nil?
24
- end
25
-
26
- def reset!
27
- browser.driver.reset
28
- end
29
-
30
- def wait?
31
- false
32
- end
33
-
16
+ # override
34
17
  def find_xpath(selector)
35
18
  browser.find_elements(:xpath, selector).map { |node| Appium::Capybara::Node.new(self, node) }
36
19
  end
37
20
 
21
+ # override
38
22
  def find_css(selector)
39
23
  browser.find_elements(:css, selector).map { |node| Appium::Capybara::Node.new(self, node) }
40
24
  end
41
25
 
42
- def find_custom(finder, locator)
43
- browser.find_elements(finder, locator).map { |node| Appium::Capybara::Node.new(self, node) }
44
- end
45
-
46
- def quit
47
- @browser.driver_quit if @browser
48
- rescue Errno::ECONNREFUSED
49
- # Browser must have already gone
50
- ensure
51
- @browser = nil
52
- end
53
-
54
- def current_url
55
- raise NotImplementedError,
56
- "Appium::Capybara::Driver does not support current_url because it does not apply to mobile applications"
26
+ # override
27
+ def reset!
28
+ # invoking the browser method after the browser has closed will cause it to relaunch
29
+ # use @browser to avoid the relaunch.
30
+ @browser.driver.reset if @browser
57
31
  end
58
32
 
59
- def visit(path)
60
- raise NotImplementedError,
61
- "Appium::Capybara::Driver does not support visit(path) because it does not apply to mobile applications"
33
+ # new
34
+ def browser_initialized?
35
+ !! @browser
62
36
  end
63
37
 
38
+ # new
64
39
  def dismiss_alert
65
40
  browser.alert_dismiss
66
41
  end
67
42
 
43
+ # new
68
44
  def accept_alert
69
45
  browser.alert_accept
70
46
  end
71
47
 
48
+ # new
72
49
  def scroll_up
73
50
  browser.driver.execute_script("mobile: scroll", direction: "up")
74
51
  end
75
52
 
53
+ # new
76
54
  def scroll_down
77
55
  browser.driver.execute_script("mobile: scroll", direction: "down")
78
56
  end
79
57
 
58
+ # new
80
59
  # Use :landscape or :portrait
81
60
  def rotate(opts)
82
61
  browser.driver.rotate opts
83
62
  end
84
- end
85
- end
63
+
64
+ # new
65
+ def find_custom(finder, locator)
66
+ browser.find_elements(finder, locator).map { |node| Appium::Capybara::Node.new(self, node) }
67
+ end
68
+
69
+ # override
70
+ def quit
71
+ @browser.driver_quit if @browser
72
+ rescue Errno::ECONNREFUSED
73
+ # Browser must have already gone
74
+ ensure
75
+ @browser = nil
76
+ end
77
+
78
+ end # Appium::Capybara::Driver < Capybara::Selenium::Driver
79
+ end # Appium::Capybara
@@ -1,6 +1,6 @@
1
1
  module Appium
2
2
  module Capybara
3
- VERSION = '0.0.4' unless defined? ::Appium::Capybara::VERSION
4
- DATE = '2014-08-07' unless defined? ::Appium::Capybara::DATE
3
+ VERSION = '0.1.0' unless defined? ::Appium::Capybara::VERSION
4
+ DATE = '2014-08-08' unless defined? ::Appium::Capybara::DATE
5
5
  end
6
6
  end
data/release_notes.md CHANGED
@@ -1,3 +1,12 @@
1
+ #### v0.1.0 2014-08-08
2
+
3
+ - [bdd66a2](https://github.com/appium/appium_capybara/commit/bdd66a2dc3a10fa2f8211b61d3b4ea8ef1315155) Release 0.1.0
4
+ - [fc263fb](https://github.com/appium/appium_capybara/commit/fc263fb315cc5265d5c08e8e19796470dc74b124) Merge pull request #10 from randoum/master
5
+ - [fadc4be](https://github.com/appium/appium_capybara/commit/fadc4be5684f4216c3773f6115c27db8f81878dc) Minor fixes
6
+ - [b919826](https://github.com/appium/appium_capybara/commit/b91982622ac7e1a5c86e04d8783b3bcaa613f712) Merge pull request #8 from appium/capybara_selenium_driver
7
+ - [068e298](https://github.com/appium/appium_capybara/commit/068e29830ec0b906e348d745ed80375fa4a27416) Inherit from Capybara::Selenium::Driver
8
+
9
+
1
10
  #### v0.0.4 2014-08-07
2
11
 
3
12
  - [16061f4](https://github.com/appium/appium_capybara/commit/16061f43ef4ac0796bc05f9d4af9e22e58d769e1) Release 0.0.4
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appium_capybara
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - scott.bonebrake@gmail.com
@@ -9,66 +9,66 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-08-07 00:00:00.000000000 Z
12
+ date: 2014-08-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: appium_lib
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ~>
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
20
  version: '4'
21
- - - '>='
21
+ - - ">="
22
22
  - !ruby/object:Gem::Version
23
23
  version: 4.1.0
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
- - - ~>
28
+ - - "~>"
29
29
  - !ruby/object:Gem::Version
30
30
  version: '4'
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: 4.1.0
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: capybara
36
36
  requirement: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '2.4'
41
- - - '>='
41
+ - - ">="
42
42
  - !ruby/object:Gem::Version
43
43
  version: 2.4.1
44
44
  type: :runtime
45
45
  prerelease: false
46
46
  version_requirements: !ruby/object:Gem::Requirement
47
47
  requirements:
48
- - - ~>
48
+ - - "~>"
49
49
  - !ruby/object:Gem::Version
50
50
  version: '2.4'
51
- - - '>='
51
+ - - ">="
52
52
  - !ruby/object:Gem::Version
53
53
  version: 2.4.1
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: appium_thor
56
56
  requirement: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - ~>
58
+ - - "~>"
59
59
  - !ruby/object:Gem::Version
60
60
  version: '0.0'
61
- - - '>='
61
+ - - ">="
62
62
  - !ruby/object:Gem::Version
63
63
  version: 0.0.7
64
64
  type: :development
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
- - - ~>
68
+ - - "~>"
69
69
  - !ruby/object:Gem::Version
70
70
  version: '0.0'
71
- - - '>='
71
+ - - ">="
72
72
  - !ruby/object:Gem::Version
73
73
  version: 0.0.7
74
74
  description: Enables appium support in Capybara.
@@ -79,7 +79,7 @@ executables: []
79
79
  extensions: []
80
80
  extra_rdoc_files: []
81
81
  files:
82
- - .gitignore
82
+ - ".gitignore"
83
83
  - Gemfile
84
84
  - LICENSE-2.0.txt
85
85
  - README.md
@@ -112,12 +112,12 @@ require_paths:
112
112
  - lib
113
113
  required_ruby_version: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - '>='
115
+ - - ">="
116
116
  - !ruby/object:Gem::Version
117
117
  version: 1.9.3
118
118
  required_rubygems_version: !ruby/object:Gem::Requirement
119
119
  requirements:
120
- - - '>='
120
+ - - ">="
121
121
  - !ruby/object:Gem::Version
122
122
  version: '0'
123
123
  requirements: []