calabash 2.0.0.pre4 → 2.0.0.pre5

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: 46648485266c6c561e26a5b25214c4b75efc0f18
4
- data.tar.gz: e128516fcd291fe34c8e4322041b170966c53493
3
+ metadata.gz: 9c07d9cc780b34c917801a8f92680033ee3459ee
4
+ data.tar.gz: 9dde7d9f2be6e5c25a3d96eb7b1aa78b33e7b2cd
5
5
  SHA512:
6
- metadata.gz: 39c208b6932d9ed0940a25e9bf6fe8fe7688c49cda6b12ee0f97e1063fd038f8ca540d1fbc73609185cfc6cd52b3f20cc4e444570774e7182dfcf5a3bb4c1792
7
- data.tar.gz: 57d8c44ed1996097fec90970f6757a4e423f1cc0f41646a866715e0f1edeabfd53e266f5c06ed278f00bf64b26d17936b4acf413ed10f85f321cd5fcaa18aec2
6
+ metadata.gz: 811d0f912a1e87a5da924b8c3c472eb18cf1fdf43613bfb4bc18431c70322edca3ea7e3b120827d18f040a4730614c7ceeba8024732049705b1ff7e0d55731ef
7
+ data.tar.gz: 4b3c37994d0f5cf4627e1ddaa1d04dc052fdb37d962edb8016e934c6088efc5e2233f4a1826debecd5ac14bac67e5f3e118467a304ecd1847d39c3c444089edd
@@ -371,7 +371,7 @@ module Calabash
371
371
 
372
372
  expect_app_installed_on_simulator(bridge)
373
373
 
374
- installed_app = Calabash::IOS::Application.new(bridge.fetch_app_dir)
374
+ installed_app = Calabash::IOS::Application.new(bridge.send(:installed_app_bundle_dir))
375
375
  expect_matching_sha1s(installed_app, application)
376
376
  end
377
377
 
@@ -472,7 +472,7 @@ module Calabash
472
472
  bridge = run_loop_bridge(@run_loop_device, application)
473
473
 
474
474
  if bridge.app_is_installed?
475
- installed_app = Calabash::IOS::Application.new(bridge.fetch_app_dir)
475
+ installed_app = Calabash::IOS::Application.new(bridge.send(:installed_app_bundle_dir))
476
476
 
477
477
  if installed_app.same_sha1_as?(application)
478
478
  true
@@ -575,9 +575,9 @@ module Calabash
575
575
  # @!visibility private
576
576
  def uninstall_app_on_simulator(application, run_loop_device, bridge)
577
577
  begin
578
- bridge.uninstall
578
+ bridge.uninstall_app_and_sandbox
579
579
  true
580
- rescue e
580
+ rescue => e
581
581
  raise "Could not uninstall #{application.identifier} on #{run_loop_device}: #{e}"
582
582
  end
583
583
  end
@@ -603,10 +603,11 @@ module Calabash
603
603
  end
604
604
 
605
605
  # @!visibility private
606
- # Do not memoize this. The Bridge initializer does a bunch of work to
606
+ # Do not memoize this. The CoreSimulator initializer does a bunch of work to
607
607
  # prepare the environment for simctl actions.
608
608
  def run_loop_bridge(run_loop_simulator_device, application)
609
- RunLoop::Simctl::Bridge.new(run_loop_simulator_device, application.path)
609
+ run_loop_app = RunLoop::App.new(application.path)
610
+ RunLoop::CoreSimulator.new(run_loop_simulator_device, run_loop_app)
610
611
  end
611
612
 
612
613
  # @!visibility private
@@ -619,7 +620,7 @@ module Calabash
619
620
  bridge = run_loop_bridge
620
621
  end
621
622
 
622
- bridge.uninstall
623
+ bridge.uninstall_app_and_sandbox
623
624
  bridge.install
624
625
  rescue StandardError => e
625
626
  raise "Could not install #{application} on #{run_loop_device}: #{e}"
@@ -1,5 +1,5 @@
1
1
  module Calabash
2
2
 
3
3
  # @!visibility private
4
- VERSION = '2.0.0.pre4'
4
+ VERSION = "2.0.0.pre5"
5
5
  end
data/lib/calabash.rb CHANGED
@@ -112,7 +112,6 @@ module Calabash
112
112
  raise ArgumentError, "Expected a 'Class', got '#{page_class.class}'"
113
113
  end
114
114
 
115
-
116
115
  page_name = page_class.name
117
116
  full_page_name = "#{platform_module}::#{page_name}"
118
117
 
@@ -120,6 +119,17 @@ module Calabash
120
119
  page_class = platform_module.const_get(page_name, false)
121
120
 
122
121
  if page_class.is_a?(Class)
122
+ modules = page_class.included_modules.map(&:to_s)
123
+
124
+ unless modules.include?("Calabash::#{platform_module}")
125
+ raise "Page '#{page_class}' does not include Calabash::#{platform_module}"
126
+ end
127
+
128
+ if modules.include?('Calabash::Android') &&
129
+ modules.include?('Calabash::IOS')
130
+ raise "Page '#{page_class}' includes both Calabash::Android and Calabash::IOS"
131
+ end
132
+
123
133
  page = page_class.send(:new, self)
124
134
 
125
135
  if page.is_a?(Calabash::Page)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: calabash
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.pre4
4
+ version: 2.0.0.pre5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonas Maturana Larsen
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2015-09-07 00:00:00.000000000 Z
14
+ date: 2015-12-18 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: edn
@@ -93,20 +93,20 @@ dependencies:
93
93
  requirements:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
- version: 1.5.0
96
+ version: 2.0.2
97
97
  - - "<"
98
98
  - !ruby/object:Gem::Version
99
- version: '2.0'
99
+ version: '3.0'
100
100
  type: :runtime
101
101
  prerelease: false
102
102
  version_requirements: !ruby/object:Gem::Requirement
103
103
  requirements:
104
104
  - - ">="
105
105
  - !ruby/object:Gem::Version
106
- version: 1.5.0
106
+ version: 2.0.2
107
107
  - - "<"
108
108
  - !ruby/object:Gem::Version
109
- version: '2.0'
109
+ version: '3.0'
110
110
  - !ruby/object:Gem::Dependency
111
111
  name: clipboard
112
112
  requirement: !ruby/object:Gem::Requirement