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
 |