blob: 313f0e4446d7677f9d4bdf156f7caad169d4a956 [file] [log] [blame]
// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.27.1
// protoc v3.17.1
// source: testplans/target_test_requirements_config.proto
package testplans
import (
api "go.chromium.org/chromiumos/config/go/test/api"
lab "go.chromium.org/chromiumos/infra/proto/go/lab"
common "go.chromium.org/chromiumos/infra/proto/go/test_platform/common"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type HwTestCfg_HwTestSuiteType int32
const (
HwTestCfg_HW_TEST_SUITE_TYPE_UNSPECIFIED HwTestCfg_HwTestSuiteType = 0
HwTestCfg_AUTOTEST HwTestCfg_HwTestSuiteType = 1
HwTestCfg_TAST HwTestCfg_HwTestSuiteType = 2
)
// Enum value maps for HwTestCfg_HwTestSuiteType.
var (
HwTestCfg_HwTestSuiteType_name = map[int32]string{
0: "HW_TEST_SUITE_TYPE_UNSPECIFIED",
1: "AUTOTEST",
2: "TAST",
}
HwTestCfg_HwTestSuiteType_value = map[string]int32{
"HW_TEST_SUITE_TYPE_UNSPECIFIED": 0,
"AUTOTEST": 1,
"TAST": 2,
}
)
func (x HwTestCfg_HwTestSuiteType) Enum() *HwTestCfg_HwTestSuiteType {
p := new(HwTestCfg_HwTestSuiteType)
*p = x
return p
}
func (x HwTestCfg_HwTestSuiteType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (HwTestCfg_HwTestSuiteType) Descriptor() protoreflect.EnumDescriptor {
return file_testplans_target_test_requirements_config_proto_enumTypes[0].Descriptor()
}
func (HwTestCfg_HwTestSuiteType) Type() protoreflect.EnumType {
return &file_testplans_target_test_requirements_config_proto_enumTypes[0]
}
func (x HwTestCfg_HwTestSuiteType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use HwTestCfg_HwTestSuiteType.Descriptor instead.
func (HwTestCfg_HwTestSuiteType) EnumDescriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{3, 0}
}
type TestSuiteCommon struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Human-readable consistent name for a build target, test type pair.
DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
// Whether or not the test suite is considered critical.
Critical *wrapperspb.BoolValue `protobuf:"bytes,2,opt,name=critical,proto3" json:"critical,omitempty"`
// A list of groups to which this test suite belongs.
// This is a key into other testingconfig modules.
TestSuiteGroups []*TestSuiteCommon_TestSuiteGroup `protobuf:"bytes,3,rep,name=test_suite_groups,json=testSuiteGroups,proto3" json:"test_suite_groups,omitempty"`
// Whether this suite should be disabled by default. It will only be enabled
// if some other rule forces it to be put into the test plan.
DisableByDefault bool `protobuf:"varint,4,opt,name=disable_by_default,json=disableByDefault,proto3" json:"disable_by_default,omitempty"`
}
func (x *TestSuiteCommon) Reset() {
*x = TestSuiteCommon{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TestSuiteCommon) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TestSuiteCommon) ProtoMessage() {}
func (x *TestSuiteCommon) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TestSuiteCommon.ProtoReflect.Descriptor instead.
func (*TestSuiteCommon) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{0}
}
func (x *TestSuiteCommon) GetDisplayName() string {
if x != nil {
return x.DisplayName
}
return ""
}
func (x *TestSuiteCommon) GetCritical() *wrapperspb.BoolValue {
if x != nil {
return x.Critical
}
return nil
}
func (x *TestSuiteCommon) GetTestSuiteGroups() []*TestSuiteCommon_TestSuiteGroup {
if x != nil {
return x.TestSuiteGroups
}
return nil
}
func (x *TestSuiteCommon) GetDisableByDefault() bool {
if x != nil {
return x.DisableByDefault
}
return false
}
// Specs for a companion DUT in multi-dut tests.
type TestCompanion struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Board means Cros board or an Android phone family (e.g. pixel7, which
// includes pixel7a, pixel7 and pixel7pro models) following the same naming
// convention as in suite scheduler: http://shortn/_Xphologdnc
// The initial implementation of multi-dut in CQ only support board-level.
// Future improvements may add model and other specs.
Board string `protobuf:"bytes,1,opt,name=board,proto3" json:"board,omitempty"`
// Provision config for the companion.
Config *api.CompanionConfig `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"`
}
func (x *TestCompanion) Reset() {
*x = TestCompanion{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TestCompanion) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TestCompanion) ProtoMessage() {}
func (x *TestCompanion) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TestCompanion.ProtoReflect.Descriptor instead.
func (*TestCompanion) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{1}
}
func (x *TestCompanion) GetBoard() string {
if x != nil {
return x.Board
}
return ""
}
func (x *TestCompanion) GetConfig() *api.CompanionConfig {
if x != nil {
return x.Config
}
return nil
}
type TastTestShard struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The total number of shards to be used in a test run.
TotalShards int64 `protobuf:"varint,1,opt,name=total_shards,json=totalShards,proto3" json:"total_shards,omitempty"`
// The index of the shard to use.
// Note: This value is 0-indexed.
ShardIndex int64 `protobuf:"varint,2,opt,name=shard_index,json=shardIndex,proto3" json:"shard_index,omitempty"`
}
func (x *TastTestShard) Reset() {
*x = TastTestShard{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TastTestShard) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TastTestShard) ProtoMessage() {}
func (x *TastTestShard) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TastTestShard.ProtoReflect.Descriptor instead.
func (*TastTestShard) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{2}
}
func (x *TastTestShard) GetTotalShards() int64 {
if x != nil {
return x.TotalShards
}
return 0
}
func (x *TastTestShard) GetShardIndex() int64 {
if x != nil {
return x.ShardIndex
}
return 0
}
type HwTestCfg struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
HwTest []*HwTestCfg_HwTest `protobuf:"bytes,1,rep,name=hw_test,json=hwTest,proto3" json:"hw_test,omitempty"`
}
func (x *HwTestCfg) Reset() {
*x = HwTestCfg{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HwTestCfg) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HwTestCfg) ProtoMessage() {}
func (x *HwTestCfg) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use HwTestCfg.ProtoReflect.Descriptor instead.
func (*HwTestCfg) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{3}
}
func (x *HwTestCfg) GetHwTest() []*HwTestCfg_HwTest {
if x != nil {
return x.HwTest
}
return nil
}
type TastVmTestCfg struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TastVmTest []*TastVmTestCfg_TastVmTest `protobuf:"bytes,1,rep,name=tast_vm_test,json=tastVmTest,proto3" json:"tast_vm_test,omitempty"`
}
func (x *TastVmTestCfg) Reset() {
*x = TastVmTestCfg{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TastVmTestCfg) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TastVmTestCfg) ProtoMessage() {}
func (x *TastVmTestCfg) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TastVmTestCfg.ProtoReflect.Descriptor instead.
func (*TastVmTestCfg) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{4}
}
func (x *TastVmTestCfg) GetTastVmTest() []*TastVmTestCfg_TastVmTest {
if x != nil {
return x.TastVmTest
}
return nil
}
type TastGceTestCfg struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TastGceTest []*TastGceTestCfg_TastGceTest `protobuf:"bytes,1,rep,name=tast_gce_test,json=tastGceTest,proto3" json:"tast_gce_test,omitempty"`
}
func (x *TastGceTestCfg) Reset() {
*x = TastGceTestCfg{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TastGceTestCfg) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TastGceTestCfg) ProtoMessage() {}
func (x *TastGceTestCfg) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TastGceTestCfg.ProtoReflect.Descriptor instead.
func (*TastGceTestCfg) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{5}
}
func (x *TastGceTestCfg) GetTastGceTest() []*TastGceTestCfg_TastGceTest {
if x != nil {
return x.TastGceTest
}
return nil
}
type VmTestCfg struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
VmTest []*VmTestCfg_VmTest `protobuf:"bytes,1,rep,name=vm_test,json=vmTest,proto3" json:"vm_test,omitempty"`
}
func (x *VmTestCfg) Reset() {
*x = VmTestCfg{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *VmTestCfg) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*VmTestCfg) ProtoMessage() {}
func (x *VmTestCfg) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use VmTestCfg.ProtoReflect.Descriptor instead.
func (*VmTestCfg) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{6}
}
func (x *VmTestCfg) GetVmTest() []*VmTestCfg_VmTest {
if x != nil {
return x.VmTest
}
return nil
}
// Specifies a CrOS builder to target.
type TargetCriteria struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// DEPRECATED: we need to target builder_name instead. build_target
// has to go away. See https://crbug.com/1016536
//
// Types that are assignable to TargetType:
// *TargetCriteria_BuildTarget
TargetType isTargetCriteria_TargetType `protobuf_oneof:"target_type"`
// A CrOS builder to target for testing, e.g. eve-postsubmit or
// amd64-generic-kernel-v5_4-cq.
BuilderName string `protobuf:"bytes,3,opt,name=builder_name,json=builderName,proto3" json:"builder_name,omitempty"`
}
func (x *TargetCriteria) Reset() {
*x = TargetCriteria{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TargetCriteria) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TargetCriteria) ProtoMessage() {}
func (x *TargetCriteria) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TargetCriteria.ProtoReflect.Descriptor instead.
func (*TargetCriteria) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{7}
}
func (m *TargetCriteria) GetTargetType() isTargetCriteria_TargetType {
if m != nil {
return m.TargetType
}
return nil
}
func (x *TargetCriteria) GetBuildTarget() string {
if x, ok := x.GetTargetType().(*TargetCriteria_BuildTarget); ok {
return x.BuildTarget
}
return ""
}
func (x *TargetCriteria) GetBuilderName() string {
if x != nil {
return x.BuilderName
}
return ""
}
type isTargetCriteria_TargetType interface {
isTargetCriteria_TargetType()
}
type TargetCriteria_BuildTarget struct {
// Any CrOS build target, such as "kevin". This should correspond to a
// Portage overlay.
BuildTarget string `protobuf:"bytes,2,opt,name=build_target,json=buildTarget,proto3,oneof"`
}
func (*TargetCriteria_BuildTarget) isTargetCriteria_TargetType() {}
// Details which testing is needed for a single CrOS build target.
type PerTargetTestRequirements struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Specifies the crieria for builds to target for testing.
TargetCriteria *TargetCriteria `protobuf:"bytes,1,opt,name=target_criteria,json=targetCriteria,proto3" json:"target_criteria,omitempty"`
// These configure what testing is needed for these BuildCriteria.
HwTestCfg *HwTestCfg `protobuf:"bytes,3,opt,name=hw_test_cfg,json=hwTestCfg,proto3" json:"hw_test_cfg,omitempty"`
VmTestCfg *VmTestCfg `protobuf:"bytes,5,opt,name=vm_test_cfg,json=vmTestCfg,proto3" json:"vm_test_cfg,omitempty"`
DirectTastVmTestCfg *TastVmTestCfg `protobuf:"bytes,7,opt,name=direct_tast_vm_test_cfg,json=directTastVmTestCfg,proto3" json:"direct_tast_vm_test_cfg,omitempty"`
TastGceTestCfg *TastGceTestCfg `protobuf:"bytes,8,opt,name=tast_gce_test_cfg,json=tastGceTestCfg,proto3" json:"tast_gce_test_cfg,omitempty"`
}
func (x *PerTargetTestRequirements) Reset() {
*x = PerTargetTestRequirements{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PerTargetTestRequirements) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PerTargetTestRequirements) ProtoMessage() {}
func (x *PerTargetTestRequirements) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PerTargetTestRequirements.ProtoReflect.Descriptor instead.
func (*PerTargetTestRequirements) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{8}
}
func (x *PerTargetTestRequirements) GetTargetCriteria() *TargetCriteria {
if x != nil {
return x.TargetCriteria
}
return nil
}
func (x *PerTargetTestRequirements) GetHwTestCfg() *HwTestCfg {
if x != nil {
return x.HwTestCfg
}
return nil
}
func (x *PerTargetTestRequirements) GetVmTestCfg() *VmTestCfg {
if x != nil {
return x.VmTestCfg
}
return nil
}
func (x *PerTargetTestRequirements) GetDirectTastVmTestCfg() *TastVmTestCfg {
if x != nil {
return x.DirectTastVmTestCfg
}
return nil
}
func (x *PerTargetTestRequirements) GetTastGceTestCfg() *TastGceTestCfg {
if x != nil {
return x.TastGceTestCfg
}
return nil
}
// A listing of all testing that should be done for all CrOS builds.
type TargetTestRequirementsCfg struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The testing that should be performed for a single set of target criteria.
PerTargetTestRequirements []*PerTargetTestRequirements `protobuf:"bytes,1,rep,name=per_target_test_requirements,json=perTargetTestRequirements,proto3" json:"per_target_test_requirements,omitempty"`
}
func (x *TargetTestRequirementsCfg) Reset() {
*x = TargetTestRequirementsCfg{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TargetTestRequirementsCfg) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TargetTestRequirementsCfg) ProtoMessage() {}
func (x *TargetTestRequirementsCfg) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TargetTestRequirementsCfg.ProtoReflect.Descriptor instead.
func (*TargetTestRequirementsCfg) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{9}
}
func (x *TargetTestRequirementsCfg) GetPerTargetTestRequirements() []*PerTargetTestRequirements {
if x != nil {
return x.PerTargetTestRequirements
}
return nil
}
type TestSuiteCommon_TestSuiteGroup struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TestSuiteGroup string `protobuf:"bytes,1,opt,name=test_suite_group,json=testSuiteGroup,proto3" json:"test_suite_group,omitempty"`
}
func (x *TestSuiteCommon_TestSuiteGroup) Reset() {
*x = TestSuiteCommon_TestSuiteGroup{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TestSuiteCommon_TestSuiteGroup) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TestSuiteCommon_TestSuiteGroup) ProtoMessage() {}
func (x *TestSuiteCommon_TestSuiteGroup) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TestSuiteCommon_TestSuiteGroup.ProtoReflect.Descriptor instead.
func (*TestSuiteCommon_TestSuiteGroup) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{0, 0}
}
func (x *TestSuiteCommon_TestSuiteGroup) GetTestSuiteGroup() string {
if x != nil {
return x.TestSuiteGroup
}
return ""
}
// Configuration for a hardware test suite.
// NEXT ID: 25
type HwTestCfg_HwTest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Common *TestSuiteCommon `protobuf:"bytes,12,opt,name=common,proto3" json:"common,omitempty"`
// Name of the test suite to run.
Suite string `protobuf:"bytes,1,opt,name=suite,proto3" json:"suite,omitempty"`
// The key that identifies a distinct type of device in Skylab.
// Skylab uses the term "board", hence use of this otherwise controversial
// word.
// e.g. could use device_target 'caroline' to test the build_target
// 'caroline-arcnext'.
SkylabBoard string `protobuf:"bytes,11,opt,name=skylab_board,json=skylabBoard,proto3" json:"skylab_board,omitempty"`
// Key that further specifies the device to test on in Skylab.
// e.g. for skylab_board 'octopus', may require skylab_model 'ampton'
SkylabModel string `protobuf:"bytes,15,opt,name=skylab_model,json=skylabModel,proto3" json:"skylab_model,omitempty"`
HwTestSuiteType HwTestCfg_HwTestSuiteType `protobuf:"varint,13,opt,name=hw_test_suite_type,json=hwTestSuiteType,proto3,enum=testplans.HwTestCfg_HwTestSuiteType" json:"hw_test_suite_type,omitempty"`
// The swarming pool in which to run the test suite, e.g. DUT_POOL_QUOTA.
Pool string `protobuf:"bytes,14,opt,name=pool,proto3" json:"pool,omitempty"`
// The licenses required for the DUT the test will run on.
Licenses []lab.LicenseType `protobuf:"varint,16,rep,packed,name=licenses,proto3,enum=lab.LicenseType" json:"licenses,omitempty"`
// If true, then run test via containerized autoserv binary rather than
// autoserv on the drone. This allows opt-in to the containerized execution
// path.
// TODO(b/227666105): Deprecate after removing all references.
RunViaContainer bool `protobuf:"varint,17,opt,name=run_via_container,json=runViaContainer,proto3" json:"run_via_container,omitempty"`
// If true, then run test via CFT workflow.
// This allows opt-in to the CFT execution path.
RunViaCft bool `protobuf:"varint,18,opt,name=run_via_cft,json=runViaCft,proto3" json:"run_via_cft,omitempty"`
// Tags criteria that will be used to enumerate tests for CFT test execution
// workflow.
TagCriteria *api.TestSuite_TestCaseTagCriteria `protobuf:"bytes,19,opt,name=tag_criteria,json=tagCriteria,proto3" json:"tag_criteria,omitempty"`
// The total number of shards to be used in a test run. Only used when
// tag_criteria is also set.
TotalShards int64 `protobuf:"varint,22,opt,name=total_shards,json=totalShards,proto3" json:"total_shards,omitempty"`
// If true, then run test via cros_test_runner(trv2) workflow.
// This flag can only be true if run_via_cft is true.
RunViaTrv2 bool `protobuf:"varint,20,opt,name=run_via_trv2,json=runViaTrv2,proto3" json:"run_via_trv2,omitempty"`
// Steps config for cft test execution. If not provided, all desired steps
// will be executed by default. Will only be passed on to trv2 if
// run_via_cft & run_via_trv2 is true.
Trv2StepsConfig *common.CftStepsConfig `protobuf:"bytes,21,opt,name=trv2_steps_config,json=trv2StepsConfig,proto3" json:"trv2_steps_config,omitempty"`
// Optional companion DUTs for multi-dut tests.
Companions []*TestCompanion `protobuf:"bytes,23,rep,name=companions,proto3" json:"companions,omitempty"`
// If true, then autotest tests will be sharded
EnableAutotestSharding bool `protobuf:"varint,24,opt,name=enable_autotest_sharding,json=enableAutotestSharding,proto3" json:"enable_autotest_sharding,omitempty"`
}
func (x *HwTestCfg_HwTest) Reset() {
*x = HwTestCfg_HwTest{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HwTestCfg_HwTest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HwTestCfg_HwTest) ProtoMessage() {}
func (x *HwTestCfg_HwTest) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use HwTestCfg_HwTest.ProtoReflect.Descriptor instead.
func (*HwTestCfg_HwTest) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{3, 0}
}
func (x *HwTestCfg_HwTest) GetCommon() *TestSuiteCommon {
if x != nil {
return x.Common
}
return nil
}
func (x *HwTestCfg_HwTest) GetSuite() string {
if x != nil {
return x.Suite
}
return ""
}
func (x *HwTestCfg_HwTest) GetSkylabBoard() string {
if x != nil {
return x.SkylabBoard
}
return ""
}
func (x *HwTestCfg_HwTest) GetSkylabModel() string {
if x != nil {
return x.SkylabModel
}
return ""
}
func (x *HwTestCfg_HwTest) GetHwTestSuiteType() HwTestCfg_HwTestSuiteType {
if x != nil {
return x.HwTestSuiteType
}
return HwTestCfg_HW_TEST_SUITE_TYPE_UNSPECIFIED
}
func (x *HwTestCfg_HwTest) GetPool() string {
if x != nil {
return x.Pool
}
return ""
}
func (x *HwTestCfg_HwTest) GetLicenses() []lab.LicenseType {
if x != nil {
return x.Licenses
}
return nil
}
func (x *HwTestCfg_HwTest) GetRunViaContainer() bool {
if x != nil {
return x.RunViaContainer
}
return false
}
func (x *HwTestCfg_HwTest) GetRunViaCft() bool {
if x != nil {
return x.RunViaCft
}
return false
}
func (x *HwTestCfg_HwTest) GetTagCriteria() *api.TestSuite_TestCaseTagCriteria {
if x != nil {
return x.TagCriteria
}
return nil
}
func (x *HwTestCfg_HwTest) GetTotalShards() int64 {
if x != nil {
return x.TotalShards
}
return 0
}
func (x *HwTestCfg_HwTest) GetRunViaTrv2() bool {
if x != nil {
return x.RunViaTrv2
}
return false
}
func (x *HwTestCfg_HwTest) GetTrv2StepsConfig() *common.CftStepsConfig {
if x != nil {
return x.Trv2StepsConfig
}
return nil
}
func (x *HwTestCfg_HwTest) GetCompanions() []*TestCompanion {
if x != nil {
return x.Companions
}
return nil
}
func (x *HwTestCfg_HwTest) GetEnableAutotestSharding() bool {
if x != nil {
return x.EnableAutotestSharding
}
return false
}
type TastVmTestCfg_TastTestExpr struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A single tast test expression. See https://goo.gl/UPNEgT
TestExpr string `protobuf:"bytes,1,opt,name=test_expr,json=testExpr,proto3" json:"test_expr,omitempty"`
}
func (x *TastVmTestCfg_TastTestExpr) Reset() {
*x = TastVmTestCfg_TastTestExpr{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TastVmTestCfg_TastTestExpr) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TastVmTestCfg_TastTestExpr) ProtoMessage() {}
func (x *TastVmTestCfg_TastTestExpr) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TastVmTestCfg_TastTestExpr.ProtoReflect.Descriptor instead.
func (*TastVmTestCfg_TastTestExpr) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{4, 0}
}
func (x *TastVmTestCfg_TastTestExpr) GetTestExpr() string {
if x != nil {
return x.TestExpr
}
return ""
}
type TastVmTestCfg_TastVmTest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Common *TestSuiteCommon `protobuf:"bytes,4,opt,name=common,proto3" json:"common,omitempty"`
// String containing short human-readable name describing test suite.
SuiteName string `protobuf:"bytes,1,opt,name=suite_name,json=suiteName,proto3" json:"suite_name,omitempty"`
// List of string expressions describing which tests to run; this
// is passed directly to the 'tast run' command. See
// https://goo.gl/UPNEgT for info about test expressions.
TastTestExpr []*TastVmTestCfg_TastTestExpr `protobuf:"bytes,2,rep,name=tast_test_expr,json=tastTestExpr,proto3" json:"tast_test_expr,omitempty"`
TastTestShard *TastTestShard `protobuf:"bytes,5,opt,name=tast_test_shard,json=tastTestShard,proto3" json:"tast_test_shard,omitempty"`
}
func (x *TastVmTestCfg_TastVmTest) Reset() {
*x = TastVmTestCfg_TastVmTest{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TastVmTestCfg_TastVmTest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TastVmTestCfg_TastVmTest) ProtoMessage() {}
func (x *TastVmTestCfg_TastVmTest) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TastVmTestCfg_TastVmTest.ProtoReflect.Descriptor instead.
func (*TastVmTestCfg_TastVmTest) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{4, 1}
}
func (x *TastVmTestCfg_TastVmTest) GetCommon() *TestSuiteCommon {
if x != nil {
return x.Common
}
return nil
}
func (x *TastVmTestCfg_TastVmTest) GetSuiteName() string {
if x != nil {
return x.SuiteName
}
return ""
}
func (x *TastVmTestCfg_TastVmTest) GetTastTestExpr() []*TastVmTestCfg_TastTestExpr {
if x != nil {
return x.TastTestExpr
}
return nil
}
func (x *TastVmTestCfg_TastVmTest) GetTastTestShard() *TastTestShard {
if x != nil {
return x.TastTestShard
}
return nil
}
type TastGceTestCfg_TastTestExpr struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A single tast test expression. See https://goo.gl/UPNEgT
TestExpr string `protobuf:"bytes,1,opt,name=test_expr,json=testExpr,proto3" json:"test_expr,omitempty"`
}
func (x *TastGceTestCfg_TastTestExpr) Reset() {
*x = TastGceTestCfg_TastTestExpr{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TastGceTestCfg_TastTestExpr) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TastGceTestCfg_TastTestExpr) ProtoMessage() {}
func (x *TastGceTestCfg_TastTestExpr) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TastGceTestCfg_TastTestExpr.ProtoReflect.Descriptor instead.
func (*TastGceTestCfg_TastTestExpr) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{5, 0}
}
func (x *TastGceTestCfg_TastTestExpr) GetTestExpr() string {
if x != nil {
return x.TestExpr
}
return ""
}
type TastGceTestCfg_TastGceTest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Common *TestSuiteCommon `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"`
// String containing short human-readable name describing test suite.
SuiteName string `protobuf:"bytes,2,opt,name=suite_name,json=suiteName,proto3" json:"suite_name,omitempty"`
// List of string expressions describing which tests to run; this
// is passed directly to the 'tast run' command. See
// https://goo.gl/UPNEgT for info about test expressions.
TastTestExpr []*TastGceTestCfg_TastTestExpr `protobuf:"bytes,3,rep,name=tast_test_expr,json=tastTestExpr,proto3" json:"tast_test_expr,omitempty"`
// GCE instace metadata to run the tests on.
GceMetadata *TastGceTestCfg_TastGceTest_GceMetadata `protobuf:"bytes,4,opt,name=gce_metadata,json=gceMetadata,proto3" json:"gce_metadata,omitempty"`
TastTestShard *TastTestShard `protobuf:"bytes,5,opt,name=tast_test_shard,json=tastTestShard,proto3" json:"tast_test_shard,omitempty"`
}
func (x *TastGceTestCfg_TastGceTest) Reset() {
*x = TastGceTestCfg_TastGceTest{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TastGceTestCfg_TastGceTest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TastGceTestCfg_TastGceTest) ProtoMessage() {}
func (x *TastGceTestCfg_TastGceTest) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[15]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TastGceTestCfg_TastGceTest.ProtoReflect.Descriptor instead.
func (*TastGceTestCfg_TastGceTest) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{5, 1}
}
func (x *TastGceTestCfg_TastGceTest) GetCommon() *TestSuiteCommon {
if x != nil {
return x.Common
}
return nil
}
func (x *TastGceTestCfg_TastGceTest) GetSuiteName() string {
if x != nil {
return x.SuiteName
}
return ""
}
func (x *TastGceTestCfg_TastGceTest) GetTastTestExpr() []*TastGceTestCfg_TastTestExpr {
if x != nil {
return x.TastTestExpr
}
return nil
}
func (x *TastGceTestCfg_TastGceTest) GetGceMetadata() *TastGceTestCfg_TastGceTest_GceMetadata {
if x != nil {
return x.GceMetadata
}
return nil
}
func (x *TastGceTestCfg_TastGceTest) GetTastTestShard() *TastTestShard {
if x != nil {
return x.TastTestShard
}
return nil
}
// This message should be used to fill
// recipes.chromeos.gce_test.GceTestProperties.GceMetadata.
type TastGceTestCfg_TastGceTest_GceMetadata struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The GCE project in which we create GCE images/instances for test.
Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
// The GCE zone in which we create GCE instances for test.
Zone string `protobuf:"bytes,2,opt,name=zone,proto3" json:"zone,omitempty"`
// The machine type of the GCE instance (e.g. n2-standard-8).
MachineType string `protobuf:"bytes,3,opt,name=machine_type,json=machineType,proto3" json:"machine_type,omitempty"`
// The network the GCE instance should be part of.
Network string `protobuf:"bytes,4,opt,name=network,proto3" json:"network,omitempty"`
// The subnet the GCE instance should be part of.
Subnet string `protobuf:"bytes,5,opt,name=subnet,proto3" json:"subnet,omitempty"`
}
func (x *TastGceTestCfg_TastGceTest_GceMetadata) Reset() {
*x = TastGceTestCfg_TastGceTest_GceMetadata{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TastGceTestCfg_TastGceTest_GceMetadata) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TastGceTestCfg_TastGceTest_GceMetadata) ProtoMessage() {}
func (x *TastGceTestCfg_TastGceTest_GceMetadata) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[16]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use TastGceTestCfg_TastGceTest_GceMetadata.ProtoReflect.Descriptor instead.
func (*TastGceTestCfg_TastGceTest_GceMetadata) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{5, 1, 0}
}
func (x *TastGceTestCfg_TastGceTest_GceMetadata) GetProject() string {
if x != nil {
return x.Project
}
return ""
}
func (x *TastGceTestCfg_TastGceTest_GceMetadata) GetZone() string {
if x != nil {
return x.Zone
}
return ""
}
func (x *TastGceTestCfg_TastGceTest_GceMetadata) GetMachineType() string {
if x != nil {
return x.MachineType
}
return ""
}
func (x *TastGceTestCfg_TastGceTest_GceMetadata) GetNetwork() string {
if x != nil {
return x.Network
}
return ""
}
func (x *TastGceTestCfg_TastGceTest_GceMetadata) GetSubnet() string {
if x != nil {
return x.Subnet
}
return ""
}
type VmTestCfg_VmTest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Common *TestSuiteCommon `protobuf:"bytes,8,opt,name=common,proto3" json:"common,omitempty"`
// Test suite to be run in VMTest.
TestSuite string `protobuf:"bytes,2,opt,name=test_suite,json=testSuite,proto3" json:"test_suite,omitempty"`
}
func (x *VmTestCfg_VmTest) Reset() {
*x = VmTestCfg_VmTest{}
if protoimpl.UnsafeEnabled {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *VmTestCfg_VmTest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*VmTestCfg_VmTest) ProtoMessage() {}
func (x *VmTestCfg_VmTest) ProtoReflect() protoreflect.Message {
mi := &file_testplans_target_test_requirements_config_proto_msgTypes[17]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use VmTestCfg_VmTest.ProtoReflect.Descriptor instead.
func (*VmTestCfg_VmTest) Descriptor() ([]byte, []int) {
return file_testplans_target_test_requirements_config_proto_rawDescGZIP(), []int{6, 0}
}
func (x *VmTestCfg_VmTest) GetCommon() *TestSuiteCommon {
if x != nil {
return x.Common
}
return nil
}
func (x *VmTestCfg_VmTest) GetTestSuite() string {
if x != nil {
return x.TestSuite
}
return ""
}
var File_testplans_target_test_requirements_config_proto protoreflect.FileDescriptor
var file_testplans_target_test_requirements_config_proto_rawDesc = []byte{
0x0a, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2f, 0x74, 0x61, 0x72, 0x67,
0x65, 0x74, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d,
0x65, 0x6e, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x09, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x1a, 0x1e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72,
0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x29, 0x63, 0x68,
0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
0x6d, 0x6f, 0x73, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x65, 0x73,
0x74, 0x5f, 0x73, 0x75, 0x69, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2b, 0x74,
0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x63, 0x6f, 0x6d,
0x6d, 0x6f, 0x6e, 0x2f, 0x63, 0x66, 0x74, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x73, 0x5f, 0x63, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x6c, 0x61, 0x62, 0x2f,
0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xad, 0x02,
0x0a, 0x0f, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f,
0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
0x4e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x52, 0x08, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x12, 0x55, 0x0a, 0x11,
0x74, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x75, 0x69, 0x74, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c,
0x61, 0x6e, 0x73, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d,
0x6d, 0x6f, 0x6e, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x47, 0x72, 0x6f,
0x75, 0x70, 0x52, 0x0f, 0x74, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x47, 0x72, 0x6f,
0x75, 0x70, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x62,
0x79, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52,
0x10, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x79, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c,
0x74, 0x1a, 0x3a, 0x0a, 0x0e, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x47, 0x72,
0x6f, 0x75, 0x70, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x75, 0x69, 0x74,
0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74,
0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x63, 0x0a,
0x0d, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x14,
0x0a, 0x05, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62,
0x6f, 0x61, 0x72, 0x64, 0x12, 0x3c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
0x73, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x61,
0x6e, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x22, 0x53, 0x0a, 0x0d, 0x54, 0x61, 0x73, 0x74, 0x54, 0x65, 0x73, 0x74, 0x53, 0x68,
0x61, 0x72, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x61,
0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c,
0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f,
0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x68, 0x61,
0x72, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xf4, 0x06, 0x0a, 0x09, 0x48, 0x77, 0x54, 0x65,
0x73, 0x74, 0x43, 0x66, 0x67, 0x12, 0x34, 0x0a, 0x07, 0x68, 0x77, 0x5f, 0x74, 0x65, 0x73, 0x74,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61,
0x6e, 0x73, 0x2e, 0x48, 0x77, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x2e, 0x48, 0x77, 0x54,
0x65, 0x73, 0x74, 0x52, 0x06, 0x68, 0x77, 0x54, 0x65, 0x73, 0x74, 0x1a, 0xe1, 0x05, 0x0a, 0x06,
0x48, 0x77, 0x54, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61,
0x6e, 0x73, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d,
0x6f, 0x6e, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x75,
0x69, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x75, 0x69, 0x74, 0x65,
0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, 0x62, 0x6f, 0x61, 0x72, 0x64,
0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x42, 0x6f,
0x61, 0x72, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, 0x6d, 0x6f,
0x64, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x6b, 0x79, 0x6c, 0x61,
0x62, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x51, 0x0a, 0x12, 0x68, 0x77, 0x5f, 0x74, 0x65, 0x73,
0x74, 0x5f, 0x73, 0x75, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x24, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e, 0x48,
0x77, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x2e, 0x48, 0x77, 0x54, 0x65, 0x73, 0x74, 0x53,
0x75, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0f, 0x68, 0x77, 0x54, 0x65, 0x73, 0x74,
0x53, 0x75, 0x69, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x6f,
0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x12, 0x2c, 0x0a,
0x08, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0e, 0x32,
0x10, 0x2e, 0x6c, 0x61, 0x62, 0x2e, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70,
0x65, 0x52, 0x08, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x72,
0x75, 0x6e, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72,
0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x72, 0x75, 0x6e, 0x56, 0x69, 0x61, 0x43, 0x6f,
0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x72, 0x75, 0x6e, 0x5f, 0x76,
0x69, 0x61, 0x5f, 0x63, 0x66, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x75,
0x6e, 0x56, 0x69, 0x61, 0x43, 0x66, 0x74, 0x12, 0x55, 0x0a, 0x0c, 0x74, 0x61, 0x67, 0x5f, 0x63,
0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e,
0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x2e,
0x61, 0x70, 0x69, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x2e, 0x54, 0x65,
0x73, 0x74, 0x43, 0x61, 0x73, 0x65, 0x54, 0x61, 0x67, 0x43, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69,
0x61, 0x52, 0x0b, 0x74, 0x61, 0x67, 0x43, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x12, 0x21,
0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x18, 0x16,
0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x68, 0x61, 0x72, 0x64,
0x73, 0x12, 0x20, 0x0a, 0x0c, 0x72, 0x75, 0x6e, 0x5f, 0x76, 0x69, 0x61, 0x5f, 0x74, 0x72, 0x76,
0x32, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x75, 0x6e, 0x56, 0x69, 0x61, 0x54,
0x72, 0x76, 0x32, 0x12, 0x50, 0x0a, 0x11, 0x74, 0x72, 0x76, 0x32, 0x5f, 0x73, 0x74, 0x65, 0x70,
0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24,
0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x63,
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x66, 0x74, 0x53, 0x74, 0x65, 0x70, 0x73, 0x43, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x74, 0x72, 0x76, 0x32, 0x53, 0x74, 0x65, 0x70, 0x73, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x69,
0x6f, 0x6e, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74,
0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x6e,
0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x69, 0x6f, 0x6e, 0x73, 0x12,
0x38, 0x0a, 0x18, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x74, 0x65,
0x73, 0x74, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x18, 0x20, 0x01, 0x28,
0x08, 0x52, 0x16, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x74, 0x65, 0x73,
0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x0b, 0x22,
0x4d, 0x0a, 0x0f, 0x48, 0x77, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x54, 0x79,
0x70, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x48, 0x57, 0x5f, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x53, 0x55,
0x49, 0x54, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x55, 0x54, 0x4f, 0x54, 0x45,
0x53, 0x54, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x41, 0x53, 0x54, 0x10, 0x02, 0x22, 0xfa,
0x02, 0x0a, 0x0d, 0x54, 0x61, 0x73, 0x74, 0x56, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67,
0x12, 0x45, 0x0a, 0x0c, 0x74, 0x61, 0x73, 0x74, 0x5f, 0x76, 0x6d, 0x5f, 0x74, 0x65, 0x73, 0x74,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61,
0x6e, 0x73, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x56, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67,
0x2e, 0x54, 0x61, 0x73, 0x74, 0x56, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x74, 0x61, 0x73,
0x74, 0x56, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x74, 0x54,
0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x73, 0x74, 0x5f,
0x65, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x73, 0x74,
0x45, 0x78, 0x70, 0x72, 0x1a, 0xf4, 0x01, 0x0a, 0x0a, 0x54, 0x61, 0x73, 0x74, 0x56, 0x6d, 0x54,
0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x04, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e,
0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52,
0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x75, 0x69, 0x74, 0x65,
0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x75, 0x69,
0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x0e, 0x74, 0x61, 0x73, 0x74, 0x5f, 0x74,
0x65, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25,
0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x56,
0x6d, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x54, 0x65, 0x73,
0x74, 0x45, 0x78, 0x70, 0x72, 0x52, 0x0c, 0x74, 0x61, 0x73, 0x74, 0x54, 0x65, 0x73, 0x74, 0x45,
0x78, 0x70, 0x72, 0x12, 0x40, 0x0a, 0x0f, 0x74, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x65, 0x73, 0x74,
0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x74,
0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x54, 0x65, 0x73,
0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x0d, 0x74, 0x61, 0x73, 0x74, 0x54, 0x65, 0x73, 0x74,
0x53, 0x68, 0x61, 0x72, 0x64, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x22, 0xf8, 0x04, 0x0a, 0x0e,
0x54, 0x61, 0x73, 0x74, 0x47, 0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x12, 0x49,
0x0a, 0x0d, 0x74, 0x61, 0x73, 0x74, 0x5f, 0x67, 0x63, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e,
0x73, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x47, 0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67,
0x2e, 0x54, 0x61, 0x73, 0x74, 0x47, 0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x52, 0x0b, 0x74, 0x61,
0x73, 0x74, 0x47, 0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x0a, 0x0c, 0x54, 0x61, 0x73,
0x74, 0x54, 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x73,
0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65,
0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x1a, 0xd9, 0x03, 0x0a, 0x0b, 0x54, 0x61, 0x73, 0x74, 0x47,
0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61,
0x6e, 0x73, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d,
0x6f, 0x6e, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x75,
0x69, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
0x73, 0x75, 0x69, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x0e, 0x74, 0x61, 0x73,
0x74, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x26, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e, 0x54, 0x61,
0x73, 0x74, 0x47, 0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x2e, 0x54, 0x61, 0x73,
0x74, 0x54, 0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x52, 0x0c, 0x74, 0x61, 0x73, 0x74, 0x54,
0x65, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x54, 0x0a, 0x0c, 0x67, 0x63, 0x65, 0x5f, 0x6d,
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e,
0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x47, 0x63,
0x65, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x47, 0x63, 0x65,
0x54, 0x65, 0x73, 0x74, 0x2e, 0x47, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
0x52, 0x0b, 0x67, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x40, 0x0a,
0x0f, 0x74, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64,
0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61,
0x6e, 0x73, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x54, 0x65, 0x73, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64,
0x52, 0x0d, 0x74, 0x61, 0x73, 0x74, 0x54, 0x65, 0x73, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x1a,
0x90, 0x01, 0x0a, 0x0b, 0x47, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12,
0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x7a, 0x6f, 0x6e,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x7a, 0x6f, 0x6e, 0x65, 0x12, 0x21, 0x0a,
0x0c, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x79, 0x70, 0x65,
0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75,
0x62, 0x6e, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x6e,
0x65, 0x74, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x0c, 0x67, 0x63, 0x65, 0x5f, 0x6d, 0x65,
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xaa, 0x01, 0x0a, 0x09, 0x56, 0x6d, 0x54, 0x65, 0x73,
0x74, 0x43, 0x66, 0x67, 0x12, 0x34, 0x0a, 0x07, 0x76, 0x6d, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e,
0x73, 0x2e, 0x56, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x2e, 0x56, 0x6d, 0x54, 0x65,
0x73, 0x74, 0x52, 0x06, 0x76, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x1a, 0x67, 0x0a, 0x06, 0x56, 0x6d,
0x54, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x08,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73,
0x2e, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x65, 0x73, 0x74,
0x5f, 0x73, 0x75, 0x69, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x65,
0x73, 0x74, 0x53, 0x75, 0x69, 0x74, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x4a, 0x04, 0x08,
0x03, 0x10, 0x08, 0x22, 0x67, 0x0a, 0x0e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x72, 0x69,
0x74, 0x65, 0x72, 0x69, 0x61, 0x12, 0x23, 0x0a, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x74,
0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x62,
0x75, 0x69, 0x6c, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x75,
0x69, 0x6c, 0x64, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x0b, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x42, 0x0d, 0x0a,
0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0xf3, 0x02, 0x0a,
0x19, 0x50, 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65,
0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x0f, 0x74, 0x61,
0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e,
0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x52, 0x0e,
0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61, 0x12, 0x34,
0x0a, 0x0b, 0x68, 0x77, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x66, 0x67, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e,
0x48, 0x77, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x52, 0x09, 0x68, 0x77, 0x54, 0x65, 0x73,
0x74, 0x43, 0x66, 0x67, 0x12, 0x34, 0x0a, 0x0b, 0x76, 0x6d, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f,
0x63, 0x66, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x65, 0x73, 0x74,
0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e, 0x56, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x52,
0x09, 0x76, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x12, 0x4e, 0x0a, 0x17, 0x64, 0x69,
0x72, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x61, 0x73, 0x74, 0x5f, 0x76, 0x6d, 0x5f, 0x74, 0x65, 0x73,
0x74, 0x5f, 0x63, 0x66, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x74, 0x65,
0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x56, 0x6d, 0x54, 0x65,
0x73, 0x74, 0x43, 0x66, 0x67, 0x52, 0x13, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x54, 0x61, 0x73,
0x74, 0x56, 0x6d, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67, 0x12, 0x44, 0x0a, 0x11, 0x74, 0x61,
0x73, 0x74, 0x5f, 0x67, 0x63, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x66, 0x67, 0x18,
0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e,
0x73, 0x2e, 0x54, 0x61, 0x73, 0x74, 0x47, 0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67,
0x52, 0x0e, 0x74, 0x61, 0x73, 0x74, 0x47, 0x63, 0x65, 0x54, 0x65, 0x73, 0x74, 0x43, 0x66, 0x67,
0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04, 0x08, 0x06,
0x10, 0x07, 0x22, 0x82, 0x01, 0x0a, 0x19, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x73,
0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x66, 0x67,
0x12, 0x65, 0x0a, 0x1c, 0x70, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x74,
0x65, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61,
0x6e, 0x73, 0x2e, 0x50, 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x73, 0x74,
0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x19, 0x70, 0x65,
0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69,
0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x35, 0x5a, 0x33, 0x67, 0x6f, 0x2e, 0x63, 0x68,
0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d,
0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2f, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_testplans_target_test_requirements_config_proto_rawDescOnce sync.Once
file_testplans_target_test_requirements_config_proto_rawDescData = file_testplans_target_test_requirements_config_proto_rawDesc
)
func file_testplans_target_test_requirements_config_proto_rawDescGZIP() []byte {
file_testplans_target_test_requirements_config_proto_rawDescOnce.Do(func() {
file_testplans_target_test_requirements_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_testplans_target_test_requirements_config_proto_rawDescData)
})
return file_testplans_target_test_requirements_config_proto_rawDescData
}
var file_testplans_target_test_requirements_config_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_testplans_target_test_requirements_config_proto_msgTypes = make([]protoimpl.MessageInfo, 18)
var file_testplans_target_test_requirements_config_proto_goTypes = []interface{}{
(HwTestCfg_HwTestSuiteType)(0), // 0: testplans.HwTestCfg.HwTestSuiteType
(*TestSuiteCommon)(nil), // 1: testplans.TestSuiteCommon
(*TestCompanion)(nil), // 2: testplans.TestCompanion
(*TastTestShard)(nil), // 3: testplans.TastTestShard
(*HwTestCfg)(nil), // 4: testplans.HwTestCfg
(*TastVmTestCfg)(nil), // 5: testplans.TastVmTestCfg
(*TastGceTestCfg)(nil), // 6: testplans.TastGceTestCfg
(*VmTestCfg)(nil), // 7: testplans.VmTestCfg
(*TargetCriteria)(nil), // 8: testplans.TargetCriteria
(*PerTargetTestRequirements)(nil), // 9: testplans.PerTargetTestRequirements
(*TargetTestRequirementsCfg)(nil), // 10: testplans.TargetTestRequirementsCfg
(*TestSuiteCommon_TestSuiteGroup)(nil), // 11: testplans.TestSuiteCommon.TestSuiteGroup
(*HwTestCfg_HwTest)(nil), // 12: testplans.HwTestCfg.HwTest
(*TastVmTestCfg_TastTestExpr)(nil), // 13: testplans.TastVmTestCfg.TastTestExpr
(*TastVmTestCfg_TastVmTest)(nil), // 14: testplans.TastVmTestCfg.TastVmTest
(*TastGceTestCfg_TastTestExpr)(nil), // 15: testplans.TastGceTestCfg.TastTestExpr
(*TastGceTestCfg_TastGceTest)(nil), // 16: testplans.TastGceTestCfg.TastGceTest
(*TastGceTestCfg_TastGceTest_GceMetadata)(nil), // 17: testplans.TastGceTestCfg.TastGceTest.GceMetadata
(*VmTestCfg_VmTest)(nil), // 18: testplans.VmTestCfg.VmTest
(*wrapperspb.BoolValue)(nil), // 19: google.protobuf.BoolValue
(*api.CompanionConfig)(nil), // 20: chromiumos.test.api.CompanionConfig
(lab.LicenseType)(0), // 21: lab.LicenseType
(*api.TestSuite_TestCaseTagCriteria)(nil), // 22: chromiumos.test.api.TestSuite.TestCaseTagCriteria
(*common.CftStepsConfig)(nil), // 23: test_platform.common.CftStepsConfig
}
var file_testplans_target_test_requirements_config_proto_depIdxs = []int32{
19, // 0: testplans.TestSuiteCommon.critical:type_name -> google.protobuf.BoolValue
11, // 1: testplans.TestSuiteCommon.test_suite_groups:type_name -> testplans.TestSuiteCommon.TestSuiteGroup
20, // 2: testplans.TestCompanion.config:type_name -> chromiumos.test.api.CompanionConfig
12, // 3: testplans.HwTestCfg.hw_test:type_name -> testplans.HwTestCfg.HwTest
14, // 4: testplans.TastVmTestCfg.tast_vm_test:type_name -> testplans.TastVmTestCfg.TastVmTest
16, // 5: testplans.TastGceTestCfg.tast_gce_test:type_name -> testplans.TastGceTestCfg.TastGceTest
18, // 6: testplans.VmTestCfg.vm_test:type_name -> testplans.VmTestCfg.VmTest
8, // 7: testplans.PerTargetTestRequirements.target_criteria:type_name -> testplans.TargetCriteria
4, // 8: testplans.PerTargetTestRequirements.hw_test_cfg:type_name -> testplans.HwTestCfg
7, // 9: testplans.PerTargetTestRequirements.vm_test_cfg:type_name -> testplans.VmTestCfg
5, // 10: testplans.PerTargetTestRequirements.direct_tast_vm_test_cfg:type_name -> testplans.TastVmTestCfg
6, // 11: testplans.PerTargetTestRequirements.tast_gce_test_cfg:type_name -> testplans.TastGceTestCfg
9, // 12: testplans.TargetTestRequirementsCfg.per_target_test_requirements:type_name -> testplans.PerTargetTestRequirements
1, // 13: testplans.HwTestCfg.HwTest.common:type_name -> testplans.TestSuiteCommon
0, // 14: testplans.HwTestCfg.HwTest.hw_test_suite_type:type_name -> testplans.HwTestCfg.HwTestSuiteType
21, // 15: testplans.HwTestCfg.HwTest.licenses:type_name -> lab.LicenseType
22, // 16: testplans.HwTestCfg.HwTest.tag_criteria:type_name -> chromiumos.test.api.TestSuite.TestCaseTagCriteria
23, // 17: testplans.HwTestCfg.HwTest.trv2_steps_config:type_name -> test_platform.common.CftStepsConfig
2, // 18: testplans.HwTestCfg.HwTest.companions:type_name -> testplans.TestCompanion
1, // 19: testplans.TastVmTestCfg.TastVmTest.common:type_name -> testplans.TestSuiteCommon
13, // 20: testplans.TastVmTestCfg.TastVmTest.tast_test_expr:type_name -> testplans.TastVmTestCfg.TastTestExpr
3, // 21: testplans.TastVmTestCfg.TastVmTest.tast_test_shard:type_name -> testplans.TastTestShard
1, // 22: testplans.TastGceTestCfg.TastGceTest.common:type_name -> testplans.TestSuiteCommon
15, // 23: testplans.TastGceTestCfg.TastGceTest.tast_test_expr:type_name -> testplans.TastGceTestCfg.TastTestExpr
17, // 24: testplans.TastGceTestCfg.TastGceTest.gce_metadata:type_name -> testplans.TastGceTestCfg.TastGceTest.GceMetadata
3, // 25: testplans.TastGceTestCfg.TastGceTest.tast_test_shard:type_name -> testplans.TastTestShard
1, // 26: testplans.VmTestCfg.VmTest.common:type_name -> testplans.TestSuiteCommon
27, // [27:27] is the sub-list for method output_type
27, // [27:27] is the sub-list for method input_type
27, // [27:27] is the sub-list for extension type_name
27, // [27:27] is the sub-list for extension extendee
0, // [0:27] is the sub-list for field type_name
}
func init() { file_testplans_target_test_requirements_config_proto_init() }
func file_testplans_target_test_requirements_config_proto_init() {
if File_testplans_target_test_requirements_config_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_testplans_target_test_requirements_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TestSuiteCommon); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TestCompanion); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TastTestShard); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*HwTestCfg); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TastVmTestCfg); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TastGceTestCfg); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*VmTestCfg); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TargetCriteria); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PerTargetTestRequirements); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TargetTestRequirementsCfg); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TestSuiteCommon_TestSuiteGroup); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*HwTestCfg_HwTest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TastVmTestCfg_TastTestExpr); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TastVmTestCfg_TastVmTest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TastGceTestCfg_TastTestExpr); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TastGceTestCfg_TastGceTest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TastGceTestCfg_TastGceTest_GceMetadata); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*VmTestCfg_VmTest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_testplans_target_test_requirements_config_proto_msgTypes[7].OneofWrappers = []interface{}{
(*TargetCriteria_BuildTarget)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_testplans_target_test_requirements_config_proto_rawDesc,
NumEnums: 1,
NumMessages: 18,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_testplans_target_test_requirements_config_proto_goTypes,
DependencyIndexes: file_testplans_target_test_requirements_config_proto_depIdxs,
EnumInfos: file_testplans_target_test_requirements_config_proto_enumTypes,
MessageInfos: file_testplans_target_test_requirements_config_proto_msgTypes,
}.Build()
File_testplans_target_test_requirements_config_proto = out.File
file_testplans_target_test_requirements_config_proto_rawDesc = nil
file_testplans_target_test_requirements_config_proto_goTypes = nil
file_testplans_target_test_requirements_config_proto_depIdxs = nil
}