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.



2106
2107
2108
# File 'lib/google/apis/testing_v1/classes.rb', line 2106

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



2089
2090
2091
# File 'lib/google/apis/testing_v1/classes.rb', line 2089

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



2094
2095
2096
# File 'lib/google/apis/testing_v1/classes.rb', line 2094

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



2104
2105
2106
# File 'lib/google/apis/testing_v1/classes.rb', line 2104

def uniform_sharding
  @uniform_sharding
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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