percy-appium-app 0.0.9.beta0 → 0.0.9.beta1

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: dc4c4c4f66c3a7ecfe019e07eef6a8dfdffd17d57935c12780b441388703a5af
4
- data.tar.gz: 7ee0cd5c07b82d25a5718894fee9891bc612c02ed665cb34cf7f1e46d1fa95d1
3
+ metadata.gz: 47bb435221c28272d50b8e17f6540177bf9c656f128bcfb51f3e5468bf89772d
4
+ data.tar.gz: 5ea3c75e8ea54331a06729fd253219fa40acbabf3936929b0465b77ca10b6c84
5
5
  SHA512:
6
- metadata.gz: a6e82f7ada4e367c5e74f24a8e9652619b581c3ec00076212ffbeced9e3f203928ad77cf067d0be3270fee228c734963bfbbf8ac5a3c0e6e9d7ad3fe6041aeed
7
- data.tar.gz: f991caac478c3035ae723faf96fb0cc0010631de9832eb5976e6beb325861c52aaf5caa6db658e9d716fcfea2fd9199203fd15c894028e7526b79b8bfd107c11
6
+ metadata.gz: c73191b25d04b044662995228926349eb37838cb03edd9a3f25c72afc6898872dde22b2b01a87f54f4d7b9277873e2784e8874766c40ae947b4e5690f5fc2118
7
+ data.tar.gz: b3b16e11cb7c83f5845d92e1773d71d140b4a0b4ccc5c905cbdab11a52beeb96b1d40762e02a0ba8ace7ce25cb45c112711226d0db08b9eef8824bfbaa21cc6e
@@ -9,7 +9,8 @@ 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
- platform_name = capabilities.fetch('platformName', '').downcase
12
+ key = capabilities.keys.find { |k| k.downcase.gsub('_', '') == 'platformname' }
13
+ platform_name = capabilities[key]&.downcase
13
14
  case platform_name
14
15
  when 'android'
15
16
  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.beta0'.freeze
4
+ VERSION = '0.0.9.beta1'.freeze
5
5
  end
@@ -20,6 +20,24 @@ 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
23
41
 
24
42
  def test_ios_resolved
25
43
  @mock_webdriver.expect(:capabilities, { 'platformName' => 'iOS' })
@@ -29,6 +47,23 @@ class MetadataResolverTestCase < Minitest::Test
29
47
  @mock_webdriver.verify
30
48
  end
31
49
 
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
+
32
67
  def test_unknown_platform_exception
33
68
  @mock_webdriver.expect(:capabilities, { 'platformName' => 'Something Random' })
34
69
 
@@ -38,4 +73,14 @@ class MetadataResolverTestCase < Minitest::Test
38
73
 
39
74
  @mock_webdriver.verify
40
75
  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
41
86
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: percy-appium-app
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9.beta0
4
+ version: 0.0.9.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - BroswerStack