697 lines
		
	
	
		
			23 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			697 lines
		
	
	
		
			23 KiB
		
	
	
	
		
			Ruby
		
	
	
	
| # Copyright 2015 Google Inc.
 | |
| #
 | |
| # Licensed under the Apache License, Version 2.0 (the "License");
 | |
| # you may not use this file except in compliance with the License.
 | |
| # You may obtain a copy of the License at
 | |
| #
 | |
| #      http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| # See the License for the specific language governing permissions and
 | |
| # limitations under the License.
 | |
| 
 | |
| require 'date'
 | |
| require 'google/apis/core/base_service'
 | |
| require 'google/apis/core/json_representation'
 | |
| require 'google/apis/core/hashable'
 | |
| require 'google/apis/errors'
 | |
| 
 | |
| module Google
 | |
|   module Apis
 | |
|     module ToolresultsV1
 | |
|       
 | |
|       # Additional details for an ANR crash.
 | |
|       class Anr
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # A stacktrace.
 | |
|         # Corresponds to the JSON property `stackTrace`
 | |
|         # @return [Google::Apis::ToolresultsV1::StackTrace]
 | |
|         attr_accessor :stack_trace
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @stack_trace = args[:stack_trace] if args.key?(:stack_trace)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A suggestion to use deep links for a Robo run.
 | |
|       class AvailableDeepLinks
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A warning that Robo encountered a screen that was mostly blank; this may
 | |
|       # indicate a problem with the app.
 | |
|       class BlankScreen
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The screen id of the element
 | |
|         # Corresponds to the JSON property `screenId`
 | |
|         # @return [String]
 | |
|         attr_accessor :screen_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @screen_id = args[:screen_id] if args.key?(:screen_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Crash dialog was detected during the test execution
 | |
|       class CrashDialogError
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The name of the package that caused the dialog.
 | |
|         # Corresponds to the JSON property `crashPackage`
 | |
|         # @return [String]
 | |
|         attr_accessor :crash_package
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @crash_package = args[:crash_package] if args.key?(:crash_package)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details about encountered login screens.
 | |
|       class EncounteredLoginScreen
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Number of encountered distinct login screens.
 | |
|         # Corresponds to the JSON property `distinctScreens`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :distinct_screens
 | |
|       
 | |
|         # Subset of login screens.
 | |
|         # Corresponds to the JSON property `screenIds`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :screen_ids
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @distinct_screens = args[:distinct_screens] if args.key?(:distinct_screens)
 | |
|           @screen_ids = args[:screen_ids] if args.key?(:screen_ids)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details about encountered screens with elements that are not
 | |
|       # Android UI widgets.
 | |
|       class EncounteredNonAndroidUiWidgetScreen
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Number of encountered distinct screens with non Android UI widgets.
 | |
|         # Corresponds to the JSON property `distinctScreens`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :distinct_screens
 | |
|       
 | |
|         # Subset of screens which contain non Android UI widgets.
 | |
|         # Corresponds to the JSON property `screenIds`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :screen_ids
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @distinct_screens = args[:distinct_screens] if args.key?(:distinct_screens)
 | |
|           @screen_ids = args[:screen_ids] if args.key?(:screen_ids)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Failed to install the APK.
 | |
|       class FailedToInstall
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details for a fatal exception.
 | |
|       class FatalException
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # A stacktrace.
 | |
|         # Corresponds to the JSON property `stackTrace`
 | |
|         # @return [Google::Apis::ToolresultsV1::StackTrace]
 | |
|         attr_accessor :stack_trace
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @stack_trace = args[:stack_trace] if args.key?(:stack_trace)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details of in-app purchases encountered during the crawl.
 | |
|       class InAppPurchasesFound
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The total number of in-app purchases flows explored: how many times the
 | |
|         # robo tries to buy a SKU.
 | |
|         # Corresponds to the JSON property `inAppPurchasesFlowsExplored`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :in_app_purchases_flows_explored
 | |
|       
 | |
|         # The total number of in-app purchases flows started.
 | |
|         # Corresponds to the JSON property `inAppPurchasesFlowsStarted`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :in_app_purchases_flows_started
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @in_app_purchases_flows_explored = args[:in_app_purchases_flows_explored] if args.key?(:in_app_purchases_flows_explored)
 | |
|           @in_app_purchases_flows_started = args[:in_app_purchases_flows_started] if args.key?(:in_app_purchases_flows_started)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A warning that Robo did not crawl potentially important parts of the app.
 | |
|       class InsufficientCoverage
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details for an iOS app crash.
 | |
|       class IosAppCrashed
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # A stacktrace.
 | |
|         # Corresponds to the JSON property `stackTrace`
 | |
|         # @return [Google::Apis::ToolresultsV1::StackTrace]
 | |
|         attr_accessor :stack_trace
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @stack_trace = args[:stack_trace] if args.key?(:stack_trace)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Failed to find the launcher activity of an app.
 | |
|       class LauncherActivityNotFound
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details for a native crash.
 | |
|       class NativeCrash
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # A stacktrace.
 | |
|         # Corresponds to the JSON property `stackTrace`
 | |
|         # @return [Google::Apis::ToolresultsV1::StackTrace]
 | |
|         attr_accessor :stack_trace
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @stack_trace = args[:stack_trace] if args.key?(:stack_trace)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A non-sdk API and examples of it being called along with other metadata
 | |
|       # See
 | |
|       # https://developer.android.com/distribute/best-practices/develop/restrictions-
 | |
|       # non-sdk-interfaces
 | |
|       class NonSdkApi
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The signature of the Non-SDK API
 | |
|         # Corresponds to the JSON property `apiSignature`
 | |
|         # @return [String]
 | |
|         attr_accessor :api_signature
 | |
|       
 | |
|         # Example stack traces of this API being called.
 | |
|         # Corresponds to the JSON property `exampleStackTraces`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :example_stack_traces
 | |
|       
 | |
|         # Optional debugging insights for non-SDK API violations.
 | |
|         # Corresponds to the JSON property `insights`
 | |
|         # @return [Array<Google::Apis::ToolresultsV1::NonSdkApiInsight>]
 | |
|         attr_accessor :insights
 | |
|       
 | |
|         # The total number of times this API was observed to have been called.
 | |
|         # Corresponds to the JSON property `invocationCount`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :invocation_count
 | |
|       
 | |
|         # Which list this API appears on
 | |
|         # Corresponds to the JSON property `list`
 | |
|         # @return [String]
 | |
|         attr_accessor :list
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @api_signature = args[:api_signature] if args.key?(:api_signature)
 | |
|           @example_stack_traces = args[:example_stack_traces] if args.key?(:example_stack_traces)
 | |
|           @insights = args[:insights] if args.key?(:insights)
 | |
|           @invocation_count = args[:invocation_count] if args.key?(:invocation_count)
 | |
|           @list = args[:list] if args.key?(:list)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Non-SDK API insights (to address debugging solutions).
 | |
|       class NonSdkApiInsight
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Optional sample stack traces, for which this insight applies (there
 | |
|         # should be at least one).
 | |
|         # Corresponds to the JSON property `exampleTraceMessages`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :example_trace_messages
 | |
|       
 | |
|         # A unique ID, to be used for determining the effectiveness of this
 | |
|         # particular insight in the context of a matcher. (required)
 | |
|         # Corresponds to the JSON property `matcherId`
 | |
|         # @return [String]
 | |
|         attr_accessor :matcher_id
 | |
|       
 | |
|         # This insight indicates that the hidden API usage originates from a
 | |
|         # Google-provided library. Users need not take any action.
 | |
|         # Corresponds to the JSON property `pendingGoogleUpdateInsight`
 | |
|         # @return [Google::Apis::ToolresultsV1::PendingGoogleUpdateInsight]
 | |
|         attr_accessor :pending_google_update_insight
 | |
|       
 | |
|         # This insight is a recommendation to upgrade a given library to the specified
 | |
|         # version, in order to avoid dependencies on non-SDK APIs.
 | |
|         # Corresponds to the JSON property `upgradeInsight`
 | |
|         # @return [Google::Apis::ToolresultsV1::UpgradeInsight]
 | |
|         attr_accessor :upgrade_insight
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @example_trace_messages = args[:example_trace_messages] if args.key?(:example_trace_messages)
 | |
|           @matcher_id = args[:matcher_id] if args.key?(:matcher_id)
 | |
|           @pending_google_update_insight = args[:pending_google_update_insight] if args.key?(:pending_google_update_insight)
 | |
|           @upgrade_insight = args[:upgrade_insight] if args.key?(:upgrade_insight)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details for a non-sdk API usage violation.
 | |
|       class NonSdkApiUsageViolation
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Signatures of a subset of those hidden API's.
 | |
|         # Corresponds to the JSON property `apiSignatures`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :api_signatures
 | |
|       
 | |
|         # Total number of unique hidden API's accessed.
 | |
|         # Corresponds to the JSON property `uniqueApis`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :unique_apis
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @api_signatures = args[:api_signatures] if args.key?(:api_signatures)
 | |
|           @unique_apis = args[:unique_apis] if args.key?(:unique_apis)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Contains a summary and examples of non-sdk API usage violations.
 | |
|       class NonSdkApiUsageViolationReport
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Examples of the detected API usages.
 | |
|         # Corresponds to the JSON property `exampleApis`
 | |
|         # @return [Array<Google::Apis::ToolresultsV1::NonSdkApi>]
 | |
|         attr_accessor :example_apis
 | |
|       
 | |
|         # Minimum API level required for the application to run.
 | |
|         # Corresponds to the JSON property `minSdkVersion`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :min_sdk_version
 | |
|       
 | |
|         # Specifies the API Level on which the application is designed to run.
 | |
|         # Corresponds to the JSON property `targetSdkVersion`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :target_sdk_version
 | |
|       
 | |
|         # Total number of unique Non-SDK API's accessed.
 | |
|         # Corresponds to the JSON property `uniqueApis`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :unique_apis
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @example_apis = args[:example_apis] if args.key?(:example_apis)
 | |
|           @min_sdk_version = args[:min_sdk_version] if args.key?(:min_sdk_version)
 | |
|           @target_sdk_version = args[:target_sdk_version] if args.key?(:target_sdk_version)
 | |
|           @unique_apis = args[:unique_apis] if args.key?(:unique_apis)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A warning that Robo encountered a screen that has overlapping clickable
 | |
|       # elements; this may indicate a potential UI issue.
 | |
|       class OverlappingUiElements
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Resource names of the overlapping screen elements
 | |
|         # Corresponds to the JSON property `resourceName`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :resource_name
 | |
|       
 | |
|         # The screen id of the elements
 | |
|         # Corresponds to the JSON property `screenId`
 | |
|         # @return [String]
 | |
|         attr_accessor :screen_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @resource_name = args[:resource_name] if args.key?(:resource_name)
 | |
|           @screen_id = args[:screen_id] if args.key?(:screen_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # This insight indicates that the hidden API usage originates from a
 | |
|       # Google-provided library. Users need not take any action.
 | |
|       class PendingGoogleUpdateInsight
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The name of the Google-provided library with the non-SDK API dependency.
 | |
|         # Corresponds to the JSON property `nameOfGoogleLibrary`
 | |
|         # @return [String]
 | |
|         attr_accessor :name_of_google_library
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @name_of_google_library = args[:name_of_google_library] if args.key?(:name_of_google_library)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A notification that Robo signed in with Google.
 | |
|       class PerformedGoogleLogin
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A notification that Robo performed some monkey actions.
 | |
|       class PerformedMonkeyActions
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The total number of monkey actions performed during the crawl.
 | |
|         # Corresponds to the JSON property `totalActions`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :total_actions
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @total_actions = args[:total_actions] if args.key?(:total_actions)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Execution stats for a user-provided Robo script.
 | |
|       class RoboScriptExecution
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The number of Robo script actions executed successfully.
 | |
|         # Corresponds to the JSON property `successfulActions`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :successful_actions
 | |
|       
 | |
|         # The total number of actions in the Robo script.
 | |
|         # Corresponds to the JSON property `totalActions`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :total_actions
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @successful_actions = args[:successful_actions] if args.key?(:successful_actions)
 | |
|           @total_actions = args[:total_actions] if args.key?(:total_actions)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A stacktrace.
 | |
|       class StackTrace
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The stack trace message.
 | |
|         # Required
 | |
|         # Corresponds to the JSON property `exception`
 | |
|         # @return [String]
 | |
|         attr_accessor :exception
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @exception = args[:exception] if args.key?(:exception)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # User provided intent failed to resolve to an activity.
 | |
|       class StartActivityNotFound
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `action`
 | |
|         # @return [String]
 | |
|         attr_accessor :action
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `uri`
 | |
|         # @return [String]
 | |
|         attr_accessor :uri
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @action = args[:action] if args.key?(:action)
 | |
|           @uri = args[:uri] if args.key?(:uri)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A warning that the screen hierarchy is deeper than the recommended threshold.
 | |
|       class UiElementTooDeep
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The depth of the screen element
 | |
|         # Corresponds to the JSON property `depth`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :depth
 | |
|       
 | |
|         # The screen id of the element
 | |
|         # Corresponds to the JSON property `screenId`
 | |
|         # @return [String]
 | |
|         attr_accessor :screen_id
 | |
|       
 | |
|         # The screen state id of the element
 | |
|         # Corresponds to the JSON property `screenStateId`
 | |
|         # @return [String]
 | |
|         attr_accessor :screen_state_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @depth = args[:depth] if args.key?(:depth)
 | |
|           @screen_id = args[:screen_id] if args.key?(:screen_id)
 | |
|           @screen_state_id = args[:screen_state_id] if args.key?(:screen_state_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Default unspecified warning.
 | |
|       class UnspecifiedWarning
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details of an unused robodirective.
 | |
|       class UnusedRoboDirective
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The name of the resource that was unused.
 | |
|         # Corresponds to the JSON property `resourceName`
 | |
|         # @return [String]
 | |
|         attr_accessor :resource_name
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @resource_name = args[:resource_name] if args.key?(:resource_name)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # This insight is a recommendation to upgrade a given library to the specified
 | |
|       # version, in order to avoid dependencies on non-SDK APIs.
 | |
|       class UpgradeInsight
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The name of the package to be upgraded.
 | |
|         # Corresponds to the JSON property `packageName`
 | |
|         # @return [String]
 | |
|         attr_accessor :package_name
 | |
|       
 | |
|         # The suggested version to upgrade to.
 | |
|         # Optional: In case we are not sure which version solves this problem
 | |
|         # Corresponds to the JSON property `upgradeToVersion`
 | |
|         # @return [String]
 | |
|         attr_accessor :upgrade_to_version
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @package_name = args[:package_name] if args.key?(:package_name)
 | |
|           @upgrade_to_version = args[:upgrade_to_version] if args.key?(:upgrade_to_version)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details of a used Robo directive.
 | |
|       class UsedRoboDirective
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The name of the resource that was used.
 | |
|         # Corresponds to the JSON property `resourceName`
 | |
|         # @return [String]
 | |
|         attr_accessor :resource_name
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @resource_name = args[:resource_name] if args.key?(:resource_name)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Additional details of a used Robo directive with an ignore action.
 | |
|       # Note: This is a different scenario than unused directive.
 | |
|       class UsedRoboIgnoreDirective
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The name of the resource that was ignored.
 | |
|         # Corresponds to the JSON property `resourceName`
 | |
|         # @return [String]
 | |
|         attr_accessor :resource_name
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @resource_name = args[:resource_name] if args.key?(:resource_name)
 | |
|         end
 | |
|       end
 | |
|     end
 | |
|   end
 | |
| end
 |