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.



2113
2114
2115
# File 'lib/google/apis/testing_v1/classes.rb', line 2113

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



2096
2097
2098
# File 'lib/google/apis/testing_v1/classes.rb', line 2096

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



2101
2102
2103
# File 'lib/google/apis/testing_v1/classes.rb', line 2101

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



2111
2112
2113
# File 'lib/google/apis/testing_v1/classes.rb', line 2111

def uniform_sharding
  @uniform_sharding
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2118
2119
2120
2121
2122
# File 'lib/google/apis/testing_v1/classes.rb', line 2118

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