blob: 99a3b6f8e4a77d302a78372b8cdeb1503ee0995a [file] [log] [blame]
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: testplans/target_test_requirements_config.proto
package testplans
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
wrappers "github.com/golang/protobuf/ptypes/wrappers"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type HwTestCfg_HwTestSuiteType int32
const (
HwTestCfg_HW_TEST_SUITE_TYPE_UNSPECIFIED HwTestCfg_HwTestSuiteType = 0
HwTestCfg_AUTOTEST HwTestCfg_HwTestSuiteType = 1
HwTestCfg_TAST HwTestCfg_HwTestSuiteType = 2
)
var HwTestCfg_HwTestSuiteType_name = map[int32]string{
0: "HW_TEST_SUITE_TYPE_UNSPECIFIED",
1: "AUTOTEST",
2: "TAST",
}
var HwTestCfg_HwTestSuiteType_value = map[string]int32{
"HW_TEST_SUITE_TYPE_UNSPECIFIED": 0,
"AUTOTEST": 1,
"TAST": 2,
}
func (x HwTestCfg_HwTestSuiteType) String() string {
return proto.EnumName(HwTestCfg_HwTestSuiteType_name, int32(x))
}
func (HwTestCfg_HwTestSuiteType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{1, 0}
}
type TestSuiteCommon struct {
// 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 *wrappers.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"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *TestSuiteCommon) Reset() { *m = TestSuiteCommon{} }
func (m *TestSuiteCommon) String() string { return proto.CompactTextString(m) }
func (*TestSuiteCommon) ProtoMessage() {}
func (*TestSuiteCommon) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{0}
}
func (m *TestSuiteCommon) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TestSuiteCommon.Unmarshal(m, b)
}
func (m *TestSuiteCommon) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_TestSuiteCommon.Marshal(b, m, deterministic)
}
func (m *TestSuiteCommon) XXX_Merge(src proto.Message) {
xxx_messageInfo_TestSuiteCommon.Merge(m, src)
}
func (m *TestSuiteCommon) XXX_Size() int {
return xxx_messageInfo_TestSuiteCommon.Size(m)
}
func (m *TestSuiteCommon) XXX_DiscardUnknown() {
xxx_messageInfo_TestSuiteCommon.DiscardUnknown(m)
}
var xxx_messageInfo_TestSuiteCommon proto.InternalMessageInfo
func (m *TestSuiteCommon) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (m *TestSuiteCommon) GetCritical() *wrappers.BoolValue {
if m != nil {
return m.Critical
}
return nil
}
func (m *TestSuiteCommon) GetTestSuiteGroups() []*TestSuiteCommon_TestSuiteGroup {
if m != nil {
return m.TestSuiteGroups
}
return nil
}
func (m *TestSuiteCommon) GetDisableByDefault() bool {
if m != nil {
return m.DisableByDefault
}
return false
}
type TestSuiteCommon_TestSuiteGroup struct {
TestSuiteGroup string `protobuf:"bytes,1,opt,name=test_suite_group,json=testSuiteGroup,proto3" json:"test_suite_group,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *TestSuiteCommon_TestSuiteGroup) Reset() { *m = TestSuiteCommon_TestSuiteGroup{} }
func (m *TestSuiteCommon_TestSuiteGroup) String() string { return proto.CompactTextString(m) }
func (*TestSuiteCommon_TestSuiteGroup) ProtoMessage() {}
func (*TestSuiteCommon_TestSuiteGroup) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{0, 0}
}
func (m *TestSuiteCommon_TestSuiteGroup) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TestSuiteCommon_TestSuiteGroup.Unmarshal(m, b)
}
func (m *TestSuiteCommon_TestSuiteGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_TestSuiteCommon_TestSuiteGroup.Marshal(b, m, deterministic)
}
func (m *TestSuiteCommon_TestSuiteGroup) XXX_Merge(src proto.Message) {
xxx_messageInfo_TestSuiteCommon_TestSuiteGroup.Merge(m, src)
}
func (m *TestSuiteCommon_TestSuiteGroup) XXX_Size() int {
return xxx_messageInfo_TestSuiteCommon_TestSuiteGroup.Size(m)
}
func (m *TestSuiteCommon_TestSuiteGroup) XXX_DiscardUnknown() {
xxx_messageInfo_TestSuiteCommon_TestSuiteGroup.DiscardUnknown(m)
}
var xxx_messageInfo_TestSuiteCommon_TestSuiteGroup proto.InternalMessageInfo
func (m *TestSuiteCommon_TestSuiteGroup) GetTestSuiteGroup() string {
if m != nil {
return m.TestSuiteGroup
}
return ""
}
type HwTestCfg struct {
HwTest []*HwTestCfg_HwTest `protobuf:"bytes,1,rep,name=hw_test,json=hwTest,proto3" json:"hw_test,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *HwTestCfg) Reset() { *m = HwTestCfg{} }
func (m *HwTestCfg) String() string { return proto.CompactTextString(m) }
func (*HwTestCfg) ProtoMessage() {}
func (*HwTestCfg) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{1}
}
func (m *HwTestCfg) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_HwTestCfg.Unmarshal(m, b)
}
func (m *HwTestCfg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_HwTestCfg.Marshal(b, m, deterministic)
}
func (m *HwTestCfg) XXX_Merge(src proto.Message) {
xxx_messageInfo_HwTestCfg.Merge(m, src)
}
func (m *HwTestCfg) XXX_Size() int {
return xxx_messageInfo_HwTestCfg.Size(m)
}
func (m *HwTestCfg) XXX_DiscardUnknown() {
xxx_messageInfo_HwTestCfg.DiscardUnknown(m)
}
var xxx_messageInfo_HwTestCfg proto.InternalMessageInfo
func (m *HwTestCfg) GetHwTest() []*HwTestCfg_HwTest {
if m != nil {
return m.HwTest
}
return nil
}
// Configuration for a hardware test suite.
type HwTestCfg_HwTest struct {
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"`
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"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *HwTestCfg_HwTest) Reset() { *m = HwTestCfg_HwTest{} }
func (m *HwTestCfg_HwTest) String() string { return proto.CompactTextString(m) }
func (*HwTestCfg_HwTest) ProtoMessage() {}
func (*HwTestCfg_HwTest) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{1, 0}
}
func (m *HwTestCfg_HwTest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_HwTestCfg_HwTest.Unmarshal(m, b)
}
func (m *HwTestCfg_HwTest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_HwTestCfg_HwTest.Marshal(b, m, deterministic)
}
func (m *HwTestCfg_HwTest) XXX_Merge(src proto.Message) {
xxx_messageInfo_HwTestCfg_HwTest.Merge(m, src)
}
func (m *HwTestCfg_HwTest) XXX_Size() int {
return xxx_messageInfo_HwTestCfg_HwTest.Size(m)
}
func (m *HwTestCfg_HwTest) XXX_DiscardUnknown() {
xxx_messageInfo_HwTestCfg_HwTest.DiscardUnknown(m)
}
var xxx_messageInfo_HwTestCfg_HwTest proto.InternalMessageInfo
func (m *HwTestCfg_HwTest) GetCommon() *TestSuiteCommon {
if m != nil {
return m.Common
}
return nil
}
func (m *HwTestCfg_HwTest) GetSuite() string {
if m != nil {
return m.Suite
}
return ""
}
func (m *HwTestCfg_HwTest) GetSkylabBoard() string {
if m != nil {
return m.SkylabBoard
}
return ""
}
func (m *HwTestCfg_HwTest) GetHwTestSuiteType() HwTestCfg_HwTestSuiteType {
if m != nil {
return m.HwTestSuiteType
}
return HwTestCfg_HW_TEST_SUITE_TYPE_UNSPECIFIED
}
type MoblabVmTestCfg struct {
MoblabTest []*MoblabVmTestCfg_MoblabTest `protobuf:"bytes,1,rep,name=moblab_test,json=moblabTest,proto3" json:"moblab_test,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *MoblabVmTestCfg) Reset() { *m = MoblabVmTestCfg{} }
func (m *MoblabVmTestCfg) String() string { return proto.CompactTextString(m) }
func (*MoblabVmTestCfg) ProtoMessage() {}
func (*MoblabVmTestCfg) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{2}
}
func (m *MoblabVmTestCfg) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MoblabVmTestCfg.Unmarshal(m, b)
}
func (m *MoblabVmTestCfg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_MoblabVmTestCfg.Marshal(b, m, deterministic)
}
func (m *MoblabVmTestCfg) XXX_Merge(src proto.Message) {
xxx_messageInfo_MoblabVmTestCfg.Merge(m, src)
}
func (m *MoblabVmTestCfg) XXX_Size() int {
return xxx_messageInfo_MoblabVmTestCfg.Size(m)
}
func (m *MoblabVmTestCfg) XXX_DiscardUnknown() {
xxx_messageInfo_MoblabVmTestCfg.DiscardUnknown(m)
}
var xxx_messageInfo_MoblabVmTestCfg proto.InternalMessageInfo
func (m *MoblabVmTestCfg) GetMoblabTest() []*MoblabVmTestCfg_MoblabTest {
if m != nil {
return m.MoblabTest
}
return nil
}
type MoblabVmTestCfg_MoblabTest struct {
Common *TestSuiteCommon `protobuf:"bytes,3,opt,name=common,proto3" json:"common,omitempty"`
// Test type to be run.
TestType string `protobuf:"bytes,1,opt,name=test_type,json=testType,proto3" json:"test_type,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *MoblabVmTestCfg_MoblabTest) Reset() { *m = MoblabVmTestCfg_MoblabTest{} }
func (m *MoblabVmTestCfg_MoblabTest) String() string { return proto.CompactTextString(m) }
func (*MoblabVmTestCfg_MoblabTest) ProtoMessage() {}
func (*MoblabVmTestCfg_MoblabTest) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{2, 0}
}
func (m *MoblabVmTestCfg_MoblabTest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MoblabVmTestCfg_MoblabTest.Unmarshal(m, b)
}
func (m *MoblabVmTestCfg_MoblabTest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_MoblabVmTestCfg_MoblabTest.Marshal(b, m, deterministic)
}
func (m *MoblabVmTestCfg_MoblabTest) XXX_Merge(src proto.Message) {
xxx_messageInfo_MoblabVmTestCfg_MoblabTest.Merge(m, src)
}
func (m *MoblabVmTestCfg_MoblabTest) XXX_Size() int {
return xxx_messageInfo_MoblabVmTestCfg_MoblabTest.Size(m)
}
func (m *MoblabVmTestCfg_MoblabTest) XXX_DiscardUnknown() {
xxx_messageInfo_MoblabVmTestCfg_MoblabTest.DiscardUnknown(m)
}
var xxx_messageInfo_MoblabVmTestCfg_MoblabTest proto.InternalMessageInfo
func (m *MoblabVmTestCfg_MoblabTest) GetCommon() *TestSuiteCommon {
if m != nil {
return m.Common
}
return nil
}
func (m *MoblabVmTestCfg_MoblabTest) GetTestType() string {
if m != nil {
return m.TestType
}
return ""
}
type TastVmTestCfg struct {
TastVmTest []*TastVmTestCfg_TastVmTest `protobuf:"bytes,1,rep,name=tast_vm_test,json=tastVmTest,proto3" json:"tast_vm_test,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *TastVmTestCfg) Reset() { *m = TastVmTestCfg{} }
func (m *TastVmTestCfg) String() string { return proto.CompactTextString(m) }
func (*TastVmTestCfg) ProtoMessage() {}
func (*TastVmTestCfg) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{3}
}
func (m *TastVmTestCfg) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TastVmTestCfg.Unmarshal(m, b)
}
func (m *TastVmTestCfg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_TastVmTestCfg.Marshal(b, m, deterministic)
}
func (m *TastVmTestCfg) XXX_Merge(src proto.Message) {
xxx_messageInfo_TastVmTestCfg.Merge(m, src)
}
func (m *TastVmTestCfg) XXX_Size() int {
return xxx_messageInfo_TastVmTestCfg.Size(m)
}
func (m *TastVmTestCfg) XXX_DiscardUnknown() {
xxx_messageInfo_TastVmTestCfg.DiscardUnknown(m)
}
var xxx_messageInfo_TastVmTestCfg proto.InternalMessageInfo
func (m *TastVmTestCfg) GetTastVmTest() []*TastVmTestCfg_TastVmTest {
if m != nil {
return m.TastVmTest
}
return nil
}
type TastVmTestCfg_TastTestExpr struct {
// 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"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *TastVmTestCfg_TastTestExpr) Reset() { *m = TastVmTestCfg_TastTestExpr{} }
func (m *TastVmTestCfg_TastTestExpr) String() string { return proto.CompactTextString(m) }
func (*TastVmTestCfg_TastTestExpr) ProtoMessage() {}
func (*TastVmTestCfg_TastTestExpr) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{3, 0}
}
func (m *TastVmTestCfg_TastTestExpr) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TastVmTestCfg_TastTestExpr.Unmarshal(m, b)
}
func (m *TastVmTestCfg_TastTestExpr) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_TastVmTestCfg_TastTestExpr.Marshal(b, m, deterministic)
}
func (m *TastVmTestCfg_TastTestExpr) XXX_Merge(src proto.Message) {
xxx_messageInfo_TastVmTestCfg_TastTestExpr.Merge(m, src)
}
func (m *TastVmTestCfg_TastTestExpr) XXX_Size() int {
return xxx_messageInfo_TastVmTestCfg_TastTestExpr.Size(m)
}
func (m *TastVmTestCfg_TastTestExpr) XXX_DiscardUnknown() {
xxx_messageInfo_TastVmTestCfg_TastTestExpr.DiscardUnknown(m)
}
var xxx_messageInfo_TastVmTestCfg_TastTestExpr proto.InternalMessageInfo
func (m *TastVmTestCfg_TastTestExpr) GetTestExpr() string {
if m != nil {
return m.TestExpr
}
return ""
}
type TastVmTestCfg_TastVmTest struct {
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"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *TastVmTestCfg_TastVmTest) Reset() { *m = TastVmTestCfg_TastVmTest{} }
func (m *TastVmTestCfg_TastVmTest) String() string { return proto.CompactTextString(m) }
func (*TastVmTestCfg_TastVmTest) ProtoMessage() {}
func (*TastVmTestCfg_TastVmTest) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{3, 1}
}
func (m *TastVmTestCfg_TastVmTest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TastVmTestCfg_TastVmTest.Unmarshal(m, b)
}
func (m *TastVmTestCfg_TastVmTest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_TastVmTestCfg_TastVmTest.Marshal(b, m, deterministic)
}
func (m *TastVmTestCfg_TastVmTest) XXX_Merge(src proto.Message) {
xxx_messageInfo_TastVmTestCfg_TastVmTest.Merge(m, src)
}
func (m *TastVmTestCfg_TastVmTest) XXX_Size() int {
return xxx_messageInfo_TastVmTestCfg_TastVmTest.Size(m)
}
func (m *TastVmTestCfg_TastVmTest) XXX_DiscardUnknown() {
xxx_messageInfo_TastVmTestCfg_TastVmTest.DiscardUnknown(m)
}
var xxx_messageInfo_TastVmTestCfg_TastVmTest proto.InternalMessageInfo
func (m *TastVmTestCfg_TastVmTest) GetCommon() *TestSuiteCommon {
if m != nil {
return m.Common
}
return nil
}
func (m *TastVmTestCfg_TastVmTest) GetSuiteName() string {
if m != nil {
return m.SuiteName
}
return ""
}
func (m *TastVmTestCfg_TastVmTest) GetTastTestExpr() []*TastVmTestCfg_TastTestExpr {
if m != nil {
return m.TastTestExpr
}
return nil
}
type VmTestCfg struct {
VmTest []*VmTestCfg_VmTest `protobuf:"bytes,1,rep,name=vm_test,json=vmTest,proto3" json:"vm_test,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *VmTestCfg) Reset() { *m = VmTestCfg{} }
func (m *VmTestCfg) String() string { return proto.CompactTextString(m) }
func (*VmTestCfg) ProtoMessage() {}
func (*VmTestCfg) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{4}
}
func (m *VmTestCfg) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_VmTestCfg.Unmarshal(m, b)
}
func (m *VmTestCfg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_VmTestCfg.Marshal(b, m, deterministic)
}
func (m *VmTestCfg) XXX_Merge(src proto.Message) {
xxx_messageInfo_VmTestCfg.Merge(m, src)
}
func (m *VmTestCfg) XXX_Size() int {
return xxx_messageInfo_VmTestCfg.Size(m)
}
func (m *VmTestCfg) XXX_DiscardUnknown() {
xxx_messageInfo_VmTestCfg.DiscardUnknown(m)
}
var xxx_messageInfo_VmTestCfg proto.InternalMessageInfo
func (m *VmTestCfg) GetVmTest() []*VmTestCfg_VmTest {
if m != nil {
return m.VmTest
}
return nil
}
type VmTestCfg_VmTest struct {
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"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *VmTestCfg_VmTest) Reset() { *m = VmTestCfg_VmTest{} }
func (m *VmTestCfg_VmTest) String() string { return proto.CompactTextString(m) }
func (*VmTestCfg_VmTest) ProtoMessage() {}
func (*VmTestCfg_VmTest) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{4, 0}
}
func (m *VmTestCfg_VmTest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_VmTestCfg_VmTest.Unmarshal(m, b)
}
func (m *VmTestCfg_VmTest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_VmTestCfg_VmTest.Marshal(b, m, deterministic)
}
func (m *VmTestCfg_VmTest) XXX_Merge(src proto.Message) {
xxx_messageInfo_VmTestCfg_VmTest.Merge(m, src)
}
func (m *VmTestCfg_VmTest) XXX_Size() int {
return xxx_messageInfo_VmTestCfg_VmTest.Size(m)
}
func (m *VmTestCfg_VmTest) XXX_DiscardUnknown() {
xxx_messageInfo_VmTestCfg_VmTest.DiscardUnknown(m)
}
var xxx_messageInfo_VmTestCfg_VmTest proto.InternalMessageInfo
func (m *VmTestCfg_VmTest) GetCommon() *TestSuiteCommon {
if m != nil {
return m.Common
}
return nil
}
func (m *VmTestCfg_VmTest) GetTestSuite() string {
if m != nil {
return m.TestSuite
}
return ""
}
// Specifies a CrOS builder to target.
type TargetCriteria struct {
// DEPRECATED: we need to target builder_name instead. build_target
// has to go away. See https://crbug.com/1016536
//
// Types that are valid to be assigned 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"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *TargetCriteria) Reset() { *m = TargetCriteria{} }
func (m *TargetCriteria) String() string { return proto.CompactTextString(m) }
func (*TargetCriteria) ProtoMessage() {}
func (*TargetCriteria) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{5}
}
func (m *TargetCriteria) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TargetCriteria.Unmarshal(m, b)
}
func (m *TargetCriteria) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_TargetCriteria.Marshal(b, m, deterministic)
}
func (m *TargetCriteria) XXX_Merge(src proto.Message) {
xxx_messageInfo_TargetCriteria.Merge(m, src)
}
func (m *TargetCriteria) XXX_Size() int {
return xxx_messageInfo_TargetCriteria.Size(m)
}
func (m *TargetCriteria) XXX_DiscardUnknown() {
xxx_messageInfo_TargetCriteria.DiscardUnknown(m)
}
var xxx_messageInfo_TargetCriteria proto.InternalMessageInfo
type isTargetCriteria_TargetType interface {
isTargetCriteria_TargetType()
}
type TargetCriteria_BuildTarget struct {
BuildTarget string `protobuf:"bytes,2,opt,name=build_target,json=buildTarget,proto3,oneof"`
}
func (*TargetCriteria_BuildTarget) isTargetCriteria_TargetType() {}
func (m *TargetCriteria) GetTargetType() isTargetCriteria_TargetType {
if m != nil {
return m.TargetType
}
return nil
}
func (m *TargetCriteria) GetBuildTarget() string {
if x, ok := m.GetTargetType().(*TargetCriteria_BuildTarget); ok {
return x.BuildTarget
}
return ""
}
func (m *TargetCriteria) GetBuilderName() string {
if m != nil {
return m.BuilderName
}
return ""
}
// XXX_OneofWrappers is for the internal use of the proto package.
func (*TargetCriteria) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*TargetCriteria_BuildTarget)(nil),
}
}
// Details which testing is needed for a single CrOS build target.
type PerTargetTestRequirements struct {
// 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"`
MoblabVmTestCfg *MoblabVmTestCfg `protobuf:"bytes,4,opt,name=moblab_vm_test_cfg,json=moblabVmTestCfg,proto3" json:"moblab_vm_test_cfg,omitempty"`
VmTestCfg *VmTestCfg `protobuf:"bytes,5,opt,name=vm_test_cfg,json=vmTestCfg,proto3" json:"vm_test_cfg,omitempty"`
TastVmTestCfg *TastVmTestCfg `protobuf:"bytes,6,opt,name=tast_vm_test_cfg,json=tastVmTestCfg,proto3" json:"tast_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"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *PerTargetTestRequirements) Reset() { *m = PerTargetTestRequirements{} }
func (m *PerTargetTestRequirements) String() string { return proto.CompactTextString(m) }
func (*PerTargetTestRequirements) ProtoMessage() {}
func (*PerTargetTestRequirements) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{6}
}
func (m *PerTargetTestRequirements) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PerTargetTestRequirements.Unmarshal(m, b)
}
func (m *PerTargetTestRequirements) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PerTargetTestRequirements.Marshal(b, m, deterministic)
}
func (m *PerTargetTestRequirements) XXX_Merge(src proto.Message) {
xxx_messageInfo_PerTargetTestRequirements.Merge(m, src)
}
func (m *PerTargetTestRequirements) XXX_Size() int {
return xxx_messageInfo_PerTargetTestRequirements.Size(m)
}
func (m *PerTargetTestRequirements) XXX_DiscardUnknown() {
xxx_messageInfo_PerTargetTestRequirements.DiscardUnknown(m)
}
var xxx_messageInfo_PerTargetTestRequirements proto.InternalMessageInfo
func (m *PerTargetTestRequirements) GetTargetCriteria() *TargetCriteria {
if m != nil {
return m.TargetCriteria
}
return nil
}
func (m *PerTargetTestRequirements) GetHwTestCfg() *HwTestCfg {
if m != nil {
return m.HwTestCfg
}
return nil
}
func (m *PerTargetTestRequirements) GetMoblabVmTestCfg() *MoblabVmTestCfg {
if m != nil {
return m.MoblabVmTestCfg
}
return nil
}
func (m *PerTargetTestRequirements) GetVmTestCfg() *VmTestCfg {
if m != nil {
return m.VmTestCfg
}
return nil
}
func (m *PerTargetTestRequirements) GetTastVmTestCfg() *TastVmTestCfg {
if m != nil {
return m.TastVmTestCfg
}
return nil
}
func (m *PerTargetTestRequirements) GetDirectTastVmTestCfg() *TastVmTestCfg {
if m != nil {
return m.DirectTastVmTestCfg
}
return nil
}
// A listing of all testing that should be done for all CrOS builds.
type TargetTestRequirementsCfg struct {
// 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"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *TargetTestRequirementsCfg) Reset() { *m = TargetTestRequirementsCfg{} }
func (m *TargetTestRequirementsCfg) String() string { return proto.CompactTextString(m) }
func (*TargetTestRequirementsCfg) ProtoMessage() {}
func (*TargetTestRequirementsCfg) Descriptor() ([]byte, []int) {
return fileDescriptor_4af54ecd79c6f0f9, []int{7}
}
func (m *TargetTestRequirementsCfg) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TargetTestRequirementsCfg.Unmarshal(m, b)
}
func (m *TargetTestRequirementsCfg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_TargetTestRequirementsCfg.Marshal(b, m, deterministic)
}
func (m *TargetTestRequirementsCfg) XXX_Merge(src proto.Message) {
xxx_messageInfo_TargetTestRequirementsCfg.Merge(m, src)
}
func (m *TargetTestRequirementsCfg) XXX_Size() int {
return xxx_messageInfo_TargetTestRequirementsCfg.Size(m)
}
func (m *TargetTestRequirementsCfg) XXX_DiscardUnknown() {
xxx_messageInfo_TargetTestRequirementsCfg.DiscardUnknown(m)
}
var xxx_messageInfo_TargetTestRequirementsCfg proto.InternalMessageInfo
func (m *TargetTestRequirementsCfg) GetPerTargetTestRequirements() []*PerTargetTestRequirements {
if m != nil {
return m.PerTargetTestRequirements
}
return nil
}
func init() {
proto.RegisterEnum("testplans.HwTestCfg_HwTestSuiteType", HwTestCfg_HwTestSuiteType_name, HwTestCfg_HwTestSuiteType_value)
proto.RegisterType((*TestSuiteCommon)(nil), "testplans.TestSuiteCommon")
proto.RegisterType((*TestSuiteCommon_TestSuiteGroup)(nil), "testplans.TestSuiteCommon.TestSuiteGroup")
proto.RegisterType((*HwTestCfg)(nil), "testplans.HwTestCfg")
proto.RegisterType((*HwTestCfg_HwTest)(nil), "testplans.HwTestCfg.HwTest")
proto.RegisterType((*MoblabVmTestCfg)(nil), "testplans.MoblabVmTestCfg")
proto.RegisterType((*MoblabVmTestCfg_MoblabTest)(nil), "testplans.MoblabVmTestCfg.MoblabTest")
proto.RegisterType((*TastVmTestCfg)(nil), "testplans.TastVmTestCfg")
proto.RegisterType((*TastVmTestCfg_TastTestExpr)(nil), "testplans.TastVmTestCfg.TastTestExpr")
proto.RegisterType((*TastVmTestCfg_TastVmTest)(nil), "testplans.TastVmTestCfg.TastVmTest")
proto.RegisterType((*VmTestCfg)(nil), "testplans.VmTestCfg")
proto.RegisterType((*VmTestCfg_VmTest)(nil), "testplans.VmTestCfg.VmTest")
proto.RegisterType((*TargetCriteria)(nil), "testplans.TargetCriteria")
proto.RegisterType((*PerTargetTestRequirements)(nil), "testplans.PerTargetTestRequirements")
proto.RegisterType((*TargetTestRequirementsCfg)(nil), "testplans.TargetTestRequirementsCfg")
}
func init() {
proto.RegisterFile("testplans/target_test_requirements_config.proto", fileDescriptor_4af54ecd79c6f0f9)
}
var fileDescriptor_4af54ecd79c6f0f9 = []byte{
// 908 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0x4f, 0x8f, 0xdb, 0x44,
0x14, 0xaf, 0x93, 0x34, 0x6b, 0x3f, 0x67, 0x13, 0x33, 0x54, 0xc2, 0x9b, 0x42, 0x15, 0x5c, 0x90,
0x82, 0x40, 0x89, 0x94, 0x2e, 0x1c, 0xb8, 0x6d, 0xb6, 0x69, 0x77, 0x17, 0x75, 0x59, 0x1c, 0xa7,
0x08, 0x2e, 0x96, 0xed, 0x4c, 0x1c, 0x0b, 0x3b, 0x36, 0xe3, 0xc9, 0x6e, 0x73, 0xe5, 0xe3, 0x20,
0xf5, 0xc2, 0x89, 0x13, 0x1f, 0x81, 0xef, 0xc0, 0x37, 0x41, 0x9e, 0x99, 0xf8, 0x4f, 0xd2, 0xc0,
0xf6, 0x94, 0x79, 0xbf, 0x79, 0x6f, 0xe6, 0xf7, 0x7e, 0x6f, 0xde, 0x8b, 0x61, 0x48, 0x71, 0x4a,
0x93, 0xd0, 0x59, 0xa5, 0x43, 0xea, 0x10, 0x1f, 0x53, 0x3b, 0x03, 0x6c, 0x82, 0x7f, 0x5d, 0x07,
0x04, 0x47, 0x78, 0x45, 0x53, 0xdb, 0x8b, 0x57, 0x8b, 0xc0, 0x1f, 0x24, 0x24, 0xa6, 0x31, 0x52,
0xf2, 0x80, 0xee, 0x13, 0x3f, 0x8e, 0xfd, 0x10, 0x0f, 0xd9, 0x86, 0xbb, 0x5e, 0x0c, 0xef, 0x88,
0x93, 0x24, 0x98, 0xa4, 0xdc, 0xd5, 0x78, 0x5b, 0x83, 0x8e, 0x85, 0x53, 0x3a, 0x5d, 0x07, 0x14,
0x9f, 0xc7, 0x51, 0x14, 0xaf, 0xd0, 0xa7, 0xd0, 0x9a, 0x07, 0x69, 0x12, 0x3a, 0x1b, 0x7b, 0xe5,
0x44, 0x58, 0x97, 0x7a, 0x52, 0x5f, 0x31, 0x55, 0x81, 0x5d, 0x3b, 0x11, 0x46, 0xdf, 0x80, 0xec,
0x91, 0x80, 0x06, 0x9e, 0x13, 0xea, 0xb5, 0x9e, 0xd4, 0x57, 0x47, 0xdd, 0x01, 0xbf, 0x69, 0xb0,
0xbd, 0x69, 0x30, 0x8e, 0xe3, 0xf0, 0xb5, 0x13, 0xae, 0xb1, 0x99, 0xfb, 0xa2, 0x19, 0x7c, 0xc0,
0xb8, 0xa7, 0xd9, 0x75, 0xb6, 0x4f, 0xe2, 0x75, 0x92, 0xea, 0xf5, 0x5e, 0xbd, 0xaf, 0x8e, 0xbe,
0x18, 0xe4, 0xac, 0x07, 0x3b, 0x8c, 0x0a, 0xfb, 0x65, 0x16, 0x61, 0x76, 0x68, 0xc5, 0x4e, 0xd1,
0x57, 0x80, 0xe6, 0x41, 0xea, 0xb8, 0x21, 0xb6, 0xdd, 0x8d, 0x3d, 0xc7, 0x0b, 0x67, 0x1d, 0x52,
0xbd, 0xd1, 0x93, 0xfa, 0xb2, 0xa9, 0x89, 0x9d, 0xf1, 0xe6, 0x39, 0xc7, 0xbb, 0xdf, 0x42, 0xbb,
0x7a, 0x20, 0xea, 0x83, 0xb6, 0x4b, 0x4b, 0x64, 0xdd, 0xae, 0x5e, 0x65, 0xfc, 0x53, 0x03, 0xe5,
0xe2, 0x2e, 0x0b, 0x3f, 0x5f, 0xf8, 0xe8, 0x14, 0x8e, 0x96, 0x77, 0xac, 0x1a, 0xba, 0xc4, 0x92,
0x78, 0x5c, 0x4a, 0x22, 0x77, 0x13, 0x2b, 0xb3, 0xb9, 0x64, 0xbf, 0xdd, 0xbf, 0x25, 0x68, 0x72,
0x08, 0x8d, 0xa0, 0xe9, 0xb1, 0x14, 0xf5, 0x96, 0x50, 0xf1, 0xa0, 0x08, 0xa6, 0xf0, 0x44, 0x8f,
0xe0, 0x21, 0xe3, 0x29, 0x18, 0x72, 0x23, 0x2b, 0x5a, 0xfa, 0xcb, 0x26, 0x74, 0x5c, 0xdb, 0x8d,
0x1d, 0x32, 0xd7, 0x55, 0x5e, 0x34, 0x8e, 0x8d, 0x33, 0x08, 0xfd, 0x00, 0x48, 0xb0, 0x15, 0x89,
0xd2, 0x4d, 0x82, 0xf5, 0xe3, 0x9e, 0xd4, 0x6f, 0x8f, 0x3e, 0xfb, 0x0f, 0xe2, 0x8c, 0x84, 0xb5,
0x49, 0xb0, 0xd9, 0x59, 0x56, 0x81, 0xab, 0x86, 0x5c, 0xd3, 0x54, 0xe3, 0x15, 0x74, 0x76, 0x3c,
0x91, 0x01, 0x4f, 0x2e, 0x7e, 0xb4, 0xad, 0xc9, 0xd4, 0xb2, 0xa7, 0xb3, 0x4b, 0x6b, 0x62, 0x5b,
0x3f, 0xdd, 0x4c, 0xec, 0xd9, 0xf5, 0xf4, 0x66, 0x72, 0x7e, 0xf9, 0xe2, 0x72, 0xf2, 0x5c, 0x7b,
0x80, 0x5a, 0x20, 0x9f, 0xcd, 0xac, 0xef, 0x33, 0x27, 0x4d, 0x42, 0x32, 0x34, 0xac, 0xb3, 0xa9,
0xa5, 0xd5, 0x8c, 0xbf, 0x24, 0xe8, 0xbc, 0x8a, 0xdd, 0xd0, 0x71, 0x5f, 0x47, 0x5b, 0xa5, 0x5f,
0x80, 0x1a, 0x31, 0xa8, 0xac, 0xf6, 0xe7, 0x25, 0xd2, 0x3b, 0x01, 0xc2, 0x66, 0xba, 0x43, 0x94,
0xaf, 0xbb, 0x1e, 0x40, 0xb1, 0x53, 0x92, 0xbf, 0x7e, 0x6f, 0xf9, 0x1f, 0x03, 0x6b, 0x2f, 0x2e,
0x1e, 0x2f, 0x81, 0x9c, 0x01, 0xb9, 0x1e, 0x75, 0xe3, 0xcf, 0x1a, 0x1c, 0x5b, 0x4e, 0x4a, 0x0b,
0xfa, 0x13, 0x68, 0x51, 0x27, 0xa5, 0xf6, 0x6d, 0x54, 0xe6, 0xff, 0xb4, 0x7c, 0x5d, 0xd9, 0xbf,
0x64, 0x99, 0x40, 0xf3, 0x75, 0xf7, 0x4b, 0x68, 0x65, 0x3b, 0xd9, 0x7a, 0xf2, 0x26, 0x21, 0x39,
0x17, 0xfc, 0x26, 0x21, 0x65, 0x2e, 0xd9, 0x66, 0xf7, 0x0f, 0x09, 0xa0, 0x38, 0xa7, 0x94, 0x6b,
0xe3, 0xde, 0xb9, 0x7e, 0x02, 0xc0, 0x5f, 0x4a, 0x69, 0x0e, 0x28, 0x0c, 0x61, 0x53, 0xe0, 0x3b,
0x68, 0xb3, 0xac, 0x0a, 0x0e, 0xb5, 0xbd, 0xba, 0xec, 0xe7, 0xb5, 0x65, 0x6f, 0x32, 0x49, 0xb6,
0xd6, 0x55, 0x43, 0xae, 0x6b, 0x0d, 0xe3, 0x77, 0x09, 0x94, 0x42, 0xb6, 0x53, 0x38, 0xaa, 0x2a,
0x56, 0xee, 0xaf, 0xe2, 0x54, 0xa1, 0x54, 0xf3, 0x96, 0xab, 0xe4, 0x43, 0x73, 0x2f, 0x67, 0xf9,
0x7d, 0x72, 0x2e, 0x5a, 0x84, 0x0d, 0x37, 0xc5, 0x54, 0xf2, 0x29, 0x70, 0xd5, 0x90, 0x25, 0xad,
0xc6, 0xc8, 0xca, 0x86, 0x0f, 0x6d, 0x8b, 0x0d, 0xe4, 0x73, 0x12, 0x50, 0x4c, 0x02, 0x07, 0x3d,
0x85, 0x96, 0xbb, 0x0e, 0xc2, 0xb9, 0xcd, 0x07, 0x35, 0x0f, 0xbf, 0x78, 0x60, 0xaa, 0x0c, 0xe5,
0xce, 0x59, 0xab, 0x32, 0x13, 0x13, 0xae, 0x6b, 0x9d, 0xb7, 0xaa, 0xc0, 0x32, 0x65, 0xc7, 0xc7,
0xa0, 0x6e, 0x47, 0xfd, 0x26, 0xc1, 0xc6, 0xdb, 0x3a, 0x9c, 0xdc, 0x60, 0xc2, 0xe3, 0x59, 0xae,
0xa5, 0xd9, 0x8f, 0xc6, 0xd0, 0x11, 0xce, 0x9e, 0xe0, 0xc1, 0x4a, 0xa5, 0x8e, 0x4e, 0x2a, 0x75,
0x28, 0x13, 0x35, 0xdb, 0xb4, 0x4a, 0xfc, 0x14, 0xd4, 0xed, 0x6c, 0xf0, 0x16, 0xbe, 0x68, 0x87,
0x47, 0xef, 0x1a, 0x0a, 0xa6, 0xb2, 0xcc, 0xe7, 0xdf, 0x4b, 0x40, 0xa2, 0x2b, 0x45, 0x99, 0x58,
0xf0, 0xfe, 0xfb, 0xda, 0x69, 0x4e, 0xb3, 0x13, 0xed, 0xb4, 0xf7, 0x29, 0xa8, 0xe5, 0x13, 0x1e,
0xee, 0x5d, 0x5f, 0xc4, 0x2a, 0xb7, 0x79, 0xd4, 0x19, 0x68, 0xe5, 0xae, 0x62, 0xa1, 0x4d, 0x16,
0xaa, 0x1f, 0x7a, 0x81, 0xe6, 0x31, 0xad, 0x34, 0xe6, 0x35, 0x7c, 0x34, 0x0f, 0x08, 0xf6, 0xa8,
0xbd, 0x77, 0xd2, 0xd1, 0xff, 0x9c, 0xf4, 0x21, 0x0f, 0xac, 0x80, 0x62, 0x00, 0xfc, 0x26, 0xc1,
0xc9, 0xbb, 0x8b, 0x95, 0xdd, 0x89, 0xe1, 0xe3, 0x04, 0x13, 0xfb, 0xd0, 0x7f, 0xb9, 0x78, 0xea,
0xe5, 0x89, 0x7c, 0xb0, 0xf6, 0xe6, 0x49, 0x72, 0x68, 0x6b, 0xfc, 0xf5, 0xcf, 0xcf, 0xfc, 0x78,
0xe0, 0x2d, 0x49, 0x1c, 0x05, 0xeb, 0x68, 0x10, 0x13, 0x7f, 0xb8, 0x35, 0xe2, 0x74, 0x18, 0xac,
0x16, 0xc4, 0xe1, 0x9f, 0x05, 0x43, 0x3f, 0x2e, 0x3e, 0x31, 0xdc, 0x26, 0xc3, 0x9e, 0xfd, 0x1b,
0x00, 0x00, 0xff, 0xff, 0xb5, 0x30, 0xb7, 0x83, 0x76, 0x08, 0x00, 0x00,
}