Class: Google::Apis::TestingV1::ShardingOption

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/testing_v1/classes.rb,
lib/google/apis/testing_v1/representations.rb,
lib/google/apis/testing_v1/representations.rb

Overview

Options for enabling sharding.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ShardingOption

Returns a new instance of ShardingOption.



2074
2075
2076
# File 'lib/google/apis/testing_v1/classes.rb', line 2074

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#manual_shardingGoogle::Apis::TestingV1::ManualSharding

Shards test cases into the specified groups of packages, classes, and/or methods. With manual sharding enabled, specifying test targets via environment_variables or in InstrumentationTest is invalid. Corresponds to the JSON property manualSharding



2057
2058
2059
# File 'lib/google/apis/testing_v1/classes.rb', line 2057

def manual_sharding
  @manual_sharding
end

#smart_shardingGoogle::Apis::TestingV1::SmartSharding

Shards test based on previous test case timing records. Corresponds to the JSON property smartSharding



2062
2063
2064
# File 'lib/google/apis/testing_v1/classes.rb', line 2062

def smart_sharding
  @smart_sharding
end

#uniform_shardingGoogle::Apis::TestingV1::UniformSharding

Uniformly shards test cases given a total number of shards. For instrumentation tests, it will be translated to "-e numShard" and "-e shardIndex" AndroidJUnitRunner arguments. With uniform sharding enabled, specifying either of these sharding arguments via environment_variables is invalid. Based on the sharding mechanism AndroidJUnitRunner uses, there is no guarantee that test cases will be distributed uniformly across all shards. Corresponds to the JSON property uniformSharding



2072
2073
2074
# File 'lib/google/apis/testing_v1/classes.rb', line 2072

def uniform_sharding
  @uniform_sharding
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2079
2080
2081
2082
2083
# File 'lib/google/apis/testing_v1/classes.rb', line 2079

def update!(**args)
  @manual_sharding = args[:manual_sharding] if args.key?(:manual_sharding)
  @smart_sharding = args[:smart_sharding] if args.key?(:smart_sharding)
  @uniform_sharding = args[:uniform_sharding] if args.key?(:uniform_sharding)
end