Skip to content

Commit 127ce99

Browse files
committed
Android: Extract payload key names as constants
1 parent a36b67b commit 127ce99

File tree

2 files changed

+18
-11
lines changed

2 files changed

+18
-11
lines changed

lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_send_app_size_metrics.rb

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,13 @@
33
module Fastlane
44
module Actions
55
class AndroidSendAppSizeMetricsAction < Action
6+
# Keys used by the metrics payload
7+
AAB_FILE_SIZE_KEY = 'AAB File Size'.freeze # value from `File.size` of the `.aab`
8+
UNIVERSAL_APK_FILE_SIZE_KEY = 'Universal APK File Size'.freeze # value from `File.size` of the Universal `.apk`
9+
UNIVERSAL_APK_SPLIT_NAME = 'Universal'.freeze # pseudo-name of the split representing the Universal `.apk`
10+
APK_OPTIMIZED_FILE_SIZE_KEY = 'Optimized APK File Size'.freeze # value from `apkanalyzer apk file-size`
11+
APK_OPTIMIZED_DOWNLOAD_SIZE_KEY = 'Download Size'.freeze # value from `apkanalyzer apk download-size`
12+
613
def self.run(params)
714
# Check input parameters
815
api_url = URI(params[:api_url])
@@ -25,9 +32,9 @@ def self.run(params)
2532
Source: params[:source]
2633
)
2734
# Add AAB file size
28-
metrics_helper.add_metric(name: 'AAB File Size', value: File.size(params[:aab_path])) unless params[:aab_path].nil?
35+
metrics_helper.add_metric(name: AAB_FILE_SIZE_KEY, value: File.size(params[:aab_path])) unless params[:aab_path].nil?
2936
# Add Universal APK file size
30-
metrics_helper.add_metric(name: 'Universal APK File Size', value: File.size(params[:universal_apk_path])) unless params[:universal_apk_path].nil?
37+
metrics_helper.add_metric(name: UNIVERSAL_APK_FILE_SIZE_KEY, value: File.size(params[:universal_apk_path])) unless params[:universal_apk_path].nil?
3138

3239
# Add optimized file and download sizes for each split `.apk` metrics to the payload if a `:include_split_sizes` is enabled
3340
if params[:include_split_sizes]
@@ -48,7 +55,7 @@ def self.run(params)
4855
end
4956
end
5057
unless params[:universal_apk_path].nil?
51-
add_apk_size_metrics(helper: metrics_helper, apk: params[:universal_apk_path], split_name: 'Universal')
58+
add_apk_size_metrics(helper: metrics_helper, apk: params[:universal_apk_path], split_name: UNIVERSAL_APK_SPLIT_NAME)
5259
end
5360
end
5461

@@ -81,8 +88,8 @@ def self.add_apk_size_metrics(helper:, apk:, split_name:)
8188
UI.message("[App Size Metrics] Computing file and download size of #{File.basename(apk)}...")
8289
file_size = Action.sh(apkanalyzer_binary!, 'apk', 'file-size', apk, print_command: false, print_command_output: false).chomp.to_i
8390
download_size = Action.sh(apkanalyzer_binary!, 'apk', 'download-size', apk, print_command: false, print_command_output: false).chomp.to_i
84-
helper.add_metric(name: 'APK File Size', value: file_size, metadata: { split: split_name })
85-
helper.add_metric(name: 'Download Size', value: download_size, metadata: { split: split_name })
91+
helper.add_metric(name: APK_OPTIMIZED_FILE_SIZE_KEY, value: file_size, metadata: { split: split_name })
92+
helper.add_metric(name: APK_OPTIMIZED_DOWNLOAD_SIZE_KEY, value: download_size, metadata: { split: split_name })
8693
end
8794

8895
#####################################################

spec/test-data/app_size_metrics/android-metrics-payload.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,17 @@
1010
],
1111
"metrics": [
1212
{ "name": "AAB File Size", "value": 987654321 },
13-
{ "name": "APK File Size", "value": 164082, "meta": [{ "name": "split", "value": "base-arm64_v8a_2" }] },
13+
{ "name": "Optimized APK File Size", "value": 164082, "meta": [{ "name": "split", "value": "base-arm64_v8a_2" }] },
1414
{ "name": "Download Size", "value": 64082, "meta": [{ "name": "split", "value": "base-arm64_v8a_2" }] },
15-
{ "name": "APK File Size", "value": 150072, "meta": [{ "name": "split", "value": "base-armeabi_v7a_2" }] },
15+
{ "name": "Optimized APK File Size", "value": 150072, "meta": [{ "name": "split", "value": "base-armeabi_v7a_2" }] },
1616
{ "name": "Download Size", "value": 50072, "meta": [{ "name": "split", "value": "base-armeabi_v7a_2" }] },
17-
{ "name": "APK File Size", "value": 150002, "meta": [{ "name": "split", "value": "base-armeabi_2" }] },
17+
{ "name": "Optimized APK File Size", "value": 150002, "meta": [{ "name": "split", "value": "base-armeabi_2" }] },
1818
{ "name": "Download Size", "value": 50002, "meta": [{ "name": "split", "value": "base-armeabi_2" }] },
19-
{ "name": "APK File Size", "value": 164080, "meta": [{ "name": "split", "value": "base-arm64_v8a" }] },
19+
{ "name": "Optimized APK File Size", "value": 164080, "meta": [{ "name": "split", "value": "base-arm64_v8a" }] },
2020
{ "name": "Download Size", "value": 64080, "meta": [{ "name": "split", "value": "base-arm64_v8a" }] },
21-
{ "name": "APK File Size", "value": 150000, "meta": [{ "name": "split", "value": "base-armeabi" }] },
21+
{ "name": "Optimized APK File Size", "value": 150000, "meta": [{ "name": "split", "value": "base-armeabi" }] },
2222
{ "name": "Download Size", "value": 50000, "meta": [{ "name": "split", "value": "base-armeabi" }] },
23-
{ "name": "APK File Size", "value": 150070, "meta": [{ "name": "split", "value": "base-armeabi_v7a" }] },
23+
{ "name": "Optimized APK File Size", "value": 150070, "meta": [{ "name": "split", "value": "base-armeabi_v7a" }] },
2424
{ "name": "Download Size", "value": 50070, "meta": [{ "name": "split", "value": "base-armeabi_v7a" }] }
2525
]
2626
}

0 commit comments

Comments
 (0)