percy-appium-app 0.0.9.beta1 → 1.0.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
  SHA256:
3
- metadata.gz: 47bb435221c28272d50b8e17f6540177bf9c656f128bcfb51f3e5468bf89772d
4
- data.tar.gz: 5ea3c75e8ea54331a06729fd253219fa40acbabf3936929b0465b77ca10b6c84
3
+ metadata.gz: bdb1ff6892c099d297d97844d8dd24985e6be0361e78da39e274d844945ea869
4
+ data.tar.gz: ba73fd618e623111852a73900165ae0a9315fe5a8ebb768ca4d3eb8d86928db5
5
5
  SHA512:
6
- metadata.gz: c73191b25d04b044662995228926349eb37838cb03edd9a3f25c72afc6898872dde22b2b01a87f54f4d7b9277873e2784e8874766c40ae947b4e5690f5fc2118
7
- data.tar.gz: b3b16e11cb7c83f5845d92e1773d71d140b4a0b4ccc5c905cbdab11a52beeb96b1d40762e02a0ba8ace7ce25cb45c112711226d0db08b9eef8824bfbaa21cc6e
6
+ metadata.gz: e94a5a62b0a3c82630b63ba011a423978c924bfd31c2ad4de7ea92c1f1a5ce532530a5fcbd2de72f8c89908c404ef353b1ac3c415abb3d3806e6f5eaac125875
7
+ data.tar.gz: 68fbb5b42c1df5e5b8d39f75debe939d7e76408ff8370e7998f04f60adec7fe37a875504e13b93b9876a39595b67195299d4f4a348407e4064770a5a20e6610d
@@ -11,7 +11,7 @@ jobs:
11
11
  with:
12
12
  ruby-version: 2.6
13
13
  bundler-cache: true
14
- - uses: actions/cache@v3
14
+ - uses: actions/cache@v2
15
15
  with:
16
16
  path: "./vendor/bundle"
17
17
  key: v1/${{ runner.os }}/ruby-2.6/${{ hashFiles('**/Gemfile.lock') }}
@@ -31,7 +31,7 @@ jobs:
31
31
  with:
32
32
  ruby-version: ${{matrix.ruby}}
33
33
  bundler-cache: true
34
- - uses: actions/cache@v3
34
+ - uses: actions/cache@v2
35
35
  with:
36
36
  path: "./vendor/bundle"
37
37
  key: v1/${{ runner.os }}/ruby-${{ matrix.ruby }}/${{ hashFiles('**/Gemfile.lock') }}
@@ -15,13 +15,8 @@ module Percy
15
15
  def device_screen_size
16
16
  caps = capabilities
17
17
  caps = caps.as_json unless caps.is_a?(Hash)
18
- if caps['deviceScreenSize'].nil?
19
- size = driver.window_size
20
- { width: size.width.to_i, height: size.height.to_i }
21
- else
22
- width, height = caps['deviceScreenSize'].split('x')
23
- { width: width.to_i, height: height.to_i }
24
- end
18
+ width, height = caps['deviceScreenSize'].split('x')
19
+ { 'width' => width.to_i, 'height' => height.to_i }
25
20
  end
26
21
 
27
22
  def get_system_bars
@@ -9,8 +9,7 @@ module Percy
9
9
  def self.resolve(driver)
10
10
  capabilities = driver.capabilities
11
11
  capabilities = capabilities.as_json unless capabilities.is_a?(Hash)
12
- key = capabilities.keys.find { |k| k.downcase.gsub('_', '') == 'platformname' }
13
- platform_name = capabilities[key]&.downcase
12
+ platform_name = capabilities.fetch('platformName', '').downcase
14
13
  case platform_name
15
14
  when 'android'
16
15
  Percy::AndroidMetadata.new(driver)
data/percy/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Percy
4
- VERSION = '0.0.9.beta1'.freeze
4
+ VERSION = '1.0.0'.freeze
5
5
  end
@@ -29,27 +29,7 @@ class TestAndroidMetadata < Minitest::Test
29
29
  @mock_webdriver.expect(:capabilities, android_capabilities.merge('viewportRect' => viewport))
30
30
 
31
31
  assert(viewport, @android_metadata.viewport)
32
- @mock_webdriver.verify
33
- end
34
-
35
- def test_device_screen_size_when_device_screen_size_is_nil
36
- # Mock capabilities to return a hash without 'deviceScreenSize'
37
- android_capabilities = get_android_capabilities
38
- android_capabilities.delete('deviceScreenSize')
39
- @mock_webdriver.expect(:capabilities, android_capabilities)
40
-
41
- # Mock driver.window_size to return a double with width and height
42
- mock_window_size = Minitest::Mock.new
43
- mock_window_size.expect(:width, 1080)
44
- mock_window_size.expect(:height, 1920)
45
- @mock_webdriver.expect(:window_size, mock_window_size)
46
-
47
- # Call the method and assert the result
48
- result = @android_metadata.device_screen_size
49
- assert_equal({ width: 1080, height: 1920 }, result)
50
32
 
51
- # Verify mocks
52
- mock_window_size.verify
53
33
  @mock_webdriver.verify
54
34
  end
55
35
 
@@ -20,24 +20,6 @@ class MetadataResolverTestCase < Minitest::Test
20
20
  assert_instance_of(Percy::AndroidMetadata, resolved_metadata)
21
21
  @mock_webdriver.verify
22
22
  end
23
-
24
- def test_android_resolved_with_PLATFORM_NAME
25
- @mock_webdriver.expect(:capabilities, { 'PLATFORM_NAME' => 'Android' })
26
- @mock_webdriver.expect(:capabilities, { 'PLATFORM_NAME' => 'Android' })
27
- resolved_metadata = Percy::MetadataResolver.resolve(@mock_webdriver)
28
-
29
- assert_instance_of(Percy::AndroidMetadata, resolved_metadata)
30
- @mock_webdriver.verify
31
- end
32
-
33
- def test_android_resolved_with_platform_name
34
- @mock_webdriver.expect(:capabilities, { 'platform_name' => 'Android' })
35
- @mock_webdriver.expect(:capabilities, { 'platform_name' => 'Android' })
36
- resolved_metadata = Percy::MetadataResolver.resolve(@mock_webdriver)
37
-
38
- assert_instance_of(Percy::AndroidMetadata, resolved_metadata)
39
- @mock_webdriver.verify
40
- end
41
23
 
42
24
  def test_ios_resolved
43
25
  @mock_webdriver.expect(:capabilities, { 'platformName' => 'iOS' })
@@ -47,23 +29,6 @@ class MetadataResolverTestCase < Minitest::Test
47
29
  @mock_webdriver.verify
48
30
  end
49
31
 
50
- def test_ios_resolved_with_platform_name
51
- @mock_webdriver.expect(:capabilities, { 'platform_name' => 'iOS' })
52
- resolved_metadata = Percy::MetadataResolver.resolve(@mock_webdriver)
53
-
54
- assert_instance_of(Percy::IOSMetadata, resolved_metadata)
55
- @mock_webdriver.verify
56
- end
57
-
58
- def test_platformName_precedence_over_platform_name
59
- @mock_webdriver.expect(:capabilities, { 'platformName' => 'Android', 'platform_name' => 'iOS' })
60
- @mock_webdriver.expect(:capabilities, { 'platformName' => 'Android', 'platform_name' => 'iOS' })
61
- resolved_metadata = Percy::MetadataResolver.resolve(@mock_webdriver)
62
-
63
- assert_instance_of(Percy::AndroidMetadata, resolved_metadata)
64
- @mock_webdriver.verify
65
- end
66
-
67
32
  def test_unknown_platform_exception
68
33
  @mock_webdriver.expect(:capabilities, { 'platformName' => 'Something Random' })
69
34
 
@@ -73,14 +38,4 @@ class MetadataResolverTestCase < Minitest::Test
73
38
 
74
39
  @mock_webdriver.verify
75
40
  end
76
-
77
- def test_unknown_platform_exception_with_platform_name
78
- @mock_webdriver.expect(:capabilities, { 'platform_name' => 'Something Random' })
79
-
80
- assert_raises(PlatformNotSupported) do
81
- Percy::MetadataResolver.resolve(@mock_webdriver)
82
- end
83
-
84
- @mock_webdriver.verify
85
- end
86
41
  end
metadata CHANGED
@@ -1,13 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: percy-appium-app
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9.beta1
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - BroswerStack
8
+ autorequire:
8
9
  bindir: bin
9
10
  cert_chain: []
10
- date: 1980-01-02 00:00:00.000000000 Z
11
+ date: 2024-10-28 00:00:00.000000000 Z
11
12
  dependencies:
12
13
  - !ruby/object:Gem::Dependency
13
14
  name: appium_lib
@@ -186,6 +187,7 @@ licenses:
186
187
  metadata:
187
188
  bug_tracker_uri: https://github.com/percy/percy-appium-ruby/issues
188
189
  source_code_uri: https://github.com/percy/percy-appium-ruby
190
+ post_install_message:
189
191
  rdoc_options: []
190
192
  require_paths:
191
193
  - percy
@@ -200,7 +202,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
200
202
  - !ruby/object:Gem::Version
201
203
  version: '0'
202
204
  requirements: []
203
- rubygems_version: 3.6.7
205
+ rubygems_version: 3.1.4
206
+ signing_key:
204
207
  specification_version: 4
205
208
  summary: Percy visual testing for Ruby Appium Mobile Apps
206
209
  test_files: []