percy-appium-app 0.0.7 → 0.0.8

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
  SHA256:
3
- metadata.gz: 8894474b866e7988f60b776f782f3c04887b4aa626cf2a384f2c97d983a534fc
4
- data.tar.gz: 461ea9e2bf18840893f9b805ea93e8005874b4c9ddbcdf447d71e691051a015f
3
+ metadata.gz: 3b46a8c2b5a23c5a4171481451b2769eb6c60954ba7a9f1d43ad8d7ac72dc47a
4
+ data.tar.gz: 0e3480e5bebad1e1d3354792d818709f43b9040e8aee7b52ecb3f80af688db82
5
5
  SHA512:
6
- metadata.gz: c91b292ad5b7a2ba6d04a64294d539caf6da3a9da7809663625a07f441563d242e00a37025ef2a96bdeafe3f604af7b286709676debeb18ca0834f22590e790c
7
- data.tar.gz: e670e5434e2d4ace31348e736134f6976d8fa2bc1548febe7b7d70faeab6f057b833fc1809c84cf1c3b7b5a21922f41d75df3134b4fc7d2167a9354775da8d86
6
+ metadata.gz: e139e6eac3e362ddeeadb9a36653e2a17dd2c2a85acdbb73e2f486afea8ee098b35db88127d35d95882beda8a825392f87ab1462e75da81709fb1f01824df974
7
+ data.tar.gz: 199703de73702fb3125607f6588a1abbeb146af01993d4d63b66b8dcc5fcf7607a5db18ee31d0008c18269c44db198dbf1fd6170a62c98bdcd972b7b3f66eefd
@@ -48,6 +48,18 @@ module Percy
48
48
  'Argument orientation should be a String and portrait/landscape'
49
49
  end
50
50
 
51
+ test_case = kwargs[:test_case]
52
+ if test_case && !test_case.is_a?(String)
53
+ raise TypeError,
54
+ 'Argument test_case should be a String'
55
+ end
56
+
57
+ th_test_case_execution_id = kwargs[:th_test_case_execution_id]
58
+ if th_test_case_execution_id && !th_test_case_execution_id.is_a?(String)
59
+ raise TypeError,
60
+ 'Argument th_test_case_execution_id should be a String'
61
+ end
62
+
51
63
  @provider.screenshot(name, **kwargs)
52
64
  end
53
65
 
@@ -49,8 +49,9 @@ module Percy
49
49
  end
50
50
 
51
51
  def post_screenshots(name, tag, tiles, external_debug_url = nil, ignored_elements_data = nil,
52
- considered_elements_data = nil, sync = nil)
53
- body = request_body(name, tag, tiles, external_debug_url, ignored_elements_data, considered_elements_data, sync)
52
+ considered_elements_data = nil, sync = nil, test_case = nil, th_test_case_execution_id = nil)
53
+ body = request_body(name, tag, tiles, external_debug_url, ignored_elements_data,
54
+ considered_elements_data, sync, test_case, th_test_case_execution_id)
54
55
  body['client_info'] = Percy::Environment.get_client_info
55
56
  body['environment_info'] = Percy::Environment.get_env_info
56
57
 
@@ -124,7 +125,8 @@ module Percy
124
125
  data
125
126
  end
126
127
 
127
- def request_body(name, tag, tiles, external_debug_url, ignored_elements_data, considered_elements_data, sync)
128
+ def request_body(name, tag, tiles, external_debug_url, ignored_elements_data, considered_elements_data, sync,
129
+ test_case, th_test_case_execution_id)
128
130
  tiles = tiles.map(&:to_h)
129
131
  {
130
132
  'name' => name,
@@ -133,7 +135,9 @@ module Percy
133
135
  'ignored_elements_data' => ignored_elements_data,
134
136
  'external_debug_url' => external_debug_url,
135
137
  'considered_elements_data' => considered_elements_data,
136
- 'sync' => sync
138
+ 'sync' => sync,
139
+ 'test_case' => test_case,
140
+ 'th_test_case_execution_id' => th_test_case_execution_id
137
141
  }
138
142
  end
139
143
  end
@@ -43,8 +43,11 @@ module Percy
43
43
  )
44
44
  }
45
45
  sync = kwargs.fetch(:sync, nil)
46
+ test_case = kwargs.fetch(:test_case, nil)
47
+ th_test_case_execution_id = kwargs.fetch(:th_test_case_execution_id, nil)
46
48
 
47
- _post_screenshots(name, tag, tiles, get_debug_url, ignore_regions, consider_regions, sync)
49
+ _post_screenshots(name, tag, tiles, get_debug_url, ignore_regions, consider_regions,
50
+ sync, test_case, th_test_case_execution_id)
48
51
  end
49
52
 
50
53
  def _get_tag(**kwargs)
@@ -81,7 +84,8 @@ module Percy
81
84
  header_height = 0
82
85
  footer_height = 0
83
86
  [
84
- Percy::Tile.new(status_bar_height, nav_bar_height, header_height, footer_height, filepath: path, fullscreen: fullscreen)
87
+ Percy::Tile.new(status_bar_height, nav_bar_height, header_height, footer_height, filepath: path,
88
+ fullscreen: fullscreen)
85
89
  ]
86
90
  end
87
91
 
@@ -94,8 +98,20 @@ module Percy
94
98
  elements_array
95
99
  end
96
100
 
97
- def _post_screenshots(name, tag, tiles, debug_url, ignored_regions, considered_regions, sync)
98
- Percy::CLIWrapper.new.post_screenshots(name, tag, tiles, debug_url, ignored_regions, considered_regions, sync)
101
+ def _post_screenshots(
102
+ name,
103
+ tag,
104
+ tiles,
105
+ debug_url,
106
+ ignored_regions,
107
+ considered_regions,
108
+ sync,
109
+ test_case,
110
+ th_test_case_execution_id
111
+ )
112
+ Percy::CLIWrapper.new.post_screenshots(
113
+ name, tag, tiles, debug_url, ignored_regions, considered_regions, sync, test_case, th_test_case_execution_id
114
+ )
99
115
  end
100
116
 
101
117
  def _write_screenshot(png_bytes, directory)
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.7'.freeze
4
+ VERSION = '0.0.8'.freeze
5
5
  end
data/specs/cli_wrapper.rb CHANGED
@@ -105,8 +105,10 @@ class TestCLIWrapper < Minitest::Test
105
105
  name = 'some-name'
106
106
  debug_url = 'debug-url'
107
107
  sync = false
108
+ test_case = 'test-case-1'
109
+ th_test_case_execution_id = 'uuid-1231231'
108
110
  response = @cli_wrapper.request_body(name, tag, [tile], debug_url, @ignored_elements_data,
109
- @considered_elements_data, sync)
111
+ @considered_elements_data, sync, test_case, th_test_case_execution_id)
110
112
  assert_equal response['name'], name
111
113
  assert_equal response['external_debug_url'], debug_url
112
114
  assert_equal response['tag'], tag
@@ -114,6 +116,8 @@ class TestCLIWrapper < Minitest::Test
114
116
  assert_equal response['ignored_elements_data'], @ignored_elements_data
115
117
  assert_equal response['considered_elements_data'], @considered_elements_data
116
118
  assert_equal response['sync'], sync
119
+ assert_equal response['test_case'], test_case
120
+ assert_equal response['th_test_case_execution_id'], th_test_case_execution_id
117
121
  end
118
122
 
119
123
  def test_request_body_when_optional_values_are_null
@@ -125,13 +129,15 @@ class TestCLIWrapper < Minitest::Test
125
129
  considered_elements_data = nil
126
130
  sync = nil
127
131
  response = @cli_wrapper.send(:request_body, name, tag, [tile], debug_url, ignored_elements_data,
128
- considered_elements_data, sync)
132
+ considered_elements_data, sync, nil, nil)
129
133
  assert_equal response['name'], name
130
- assert_equal response['external_debug_url'], debug_url
134
+ assert_nil response['external_debug_url']
131
135
  assert_equal response['tag'], tag
132
136
  assert_equal response['tiles'], [tile.to_h]
133
137
  assert_nil response['ignored_elements_data']
134
138
  assert_nil response['considered_elements_data']
135
139
  assert_nil response['sync']
140
+ assert_nil response['test_case']
141
+ assert_nil response['th_test_case_execution_id']
136
142
  end
137
143
  end
metadata CHANGED
@@ -1,14 +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.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - BroswerStack
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-29 00:00:00.000000000 Z
11
+ date: 2024-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: appium_lib