Documentation
¶
Index ¶
- Variables
- type Attribute
- type Contact
- func (*Contact) Descriptor() ([]byte, []int)deprecated
- func (x *Contact) GetEmail() string
- func (x *Contact) GetMdbGroup() string
- func (m *Contact) GetType() isContact_Type
- func (*Contact) ProtoMessage()
- func (x *Contact) ProtoReflect() protoreflect.Message
- func (x *Contact) Reset()
- func (x *Contact) String() string
- type Contact_Email
- type Contact_MdbGroup
- type DUTCondition
- type DUTCondition_Scope
- func (*DUTCondition_Scope) Descriptor() ([]byte, []int)deprecated
- func (x *DUTCondition_Scope) GetHardwareFeatures() *api.HardwareFeatures
- func (x *DUTCondition_Scope) GetHardwareTopology() *api.HardwareTopology
- func (x *DUTCondition_Scope) GetSetup() *v1.DeviceUnderTest
- func (*DUTCondition_Scope) ProtoMessage()
- func (x *DUTCondition_Scope) ProtoReflect() protoreflect.Message
- func (x *DUTCondition_Scope) Reset()
- func (x *DUTCondition_Scope) String() string
- type DUTConfigConstraint
- func (*DUTConfigConstraint) Descriptor() ([]byte, []int)deprecated
- func (x *DUTConfigConstraint) GetExpression() string
- func (*DUTConfigConstraint) ProtoMessage()
- func (x *DUTConfigConstraint) ProtoReflect() protoreflect.Message
- func (x *DUTConfigConstraint) Reset()
- func (x *DUTConfigConstraint) String() string
- type DUTConfigConstraint_DUT
- func (*DUTConfigConstraint_DUT) Descriptor() ([]byte, []int)deprecated
- func (x *DUTConfigConstraint_DUT) GetHardwareFeatures() *api.HardwareFeatures
- func (*DUTConfigConstraint_DUT) ProtoMessage()
- func (x *DUTConfigConstraint_DUT) ProtoReflect() protoreflect.Message
- func (x *DUTConfigConstraint_DUT) Reset()
- func (x *DUTConfigConstraint_DUT) String() string
- type DUTConstraint
- func (*DUTConstraint) Descriptor() ([]byte, []int)deprecated
- func (x *DUTConstraint) GetConfig() *DUTConfigConstraint
- func (x *DUTConstraint) GetSetup() *DUTSetupConstraint
- func (*DUTConstraint) ProtoMessage()
- func (x *DUTConstraint) ProtoReflect() protoreflect.Message
- func (x *DUTConstraint) Reset()
- func (x *DUTConstraint) String() string
- type DUTSetupConstraint
- func (*DUTSetupConstraint) Descriptor() ([]byte, []int)deprecated
- func (x *DUTSetupConstraint) GetExpression() string
- func (*DUTSetupConstraint) ProtoMessage()
- func (x *DUTSetupConstraint) ProtoReflect() protoreflect.Message
- func (x *DUTSetupConstraint) Reset()
- func (x *DUTSetupConstraint) String() string
- type DUTSetupConstraint_DUT
- func (*DUTSetupConstraint_DUT) Descriptor() ([]byte, []int)deprecated
- func (x *DUTSetupConstraint_DUT) GetSetup() *v1.DeviceUnderTest
- func (*DUTSetupConstraint_DUT) ProtoMessage()
- func (x *DUTSetupConstraint_DUT) ProtoReflect() protoreflect.Message
- func (x *DUTSetupConstraint_DUT) Reset()
- func (x *DUTSetupConstraint_DUT) String() string
- type DockerImage
- type Informational
- func (*Informational) Descriptor() ([]byte, []int)deprecated
- func (x *Informational) GetAuthors() []*Contact
- func (x *Informational) GetDetails() *structpb.Struct
- func (*Informational) ProtoMessage()
- func (x *Informational) ProtoReflect() protoreflect.Message
- func (x *Informational) Reset()
- func (x *Informational) String() string
- type RemoteTestDriver
- func (*RemoteTestDriver) Descriptor() ([]byte, []int)deprecated
- func (x *RemoteTestDriver) GetCommand() string
- func (x *RemoteTestDriver) GetDockerImage() *DockerImage
- func (x *RemoteTestDriver) GetName() string
- func (x *RemoteTestDriver) GetTests() []*Test
- func (*RemoteTestDriver) ProtoMessage()
- func (x *RemoteTestDriver) ProtoReflect() protoreflect.Message
- func (x *RemoteTestDriver) Reset()
- func (x *RemoteTestDriver) String() string
- type Specification
- type Test
- func (*Test) Descriptor() ([]byte, []int)deprecated
- func (x *Test) GetAttributes() []*Attribute
- func (x *Test) GetDutCondition() *DUTConditiondeprecated
- func (x *Test) GetDutConstraint() *DUTConstraint
- func (x *Test) GetInformational() *Informational
- func (x *Test) GetName() string
- func (*Test) ProtoMessage()
- func (x *Test) ProtoReflect() protoreflect.Message
- func (x *Test) Reset()
- func (x *Test) String() string
Constants ¶
This section is empty.
Variables ¶
var File_chromiumos_config_api_test_metadata_v1_metadata_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type Attribute ¶
type Attribute struct { // Opaque name for this attribute. // // Value MUST be valid resource names per https://aip.dev/122. // // MUST NOT be interpreted by Test Lab Environments. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // contains filtered or unexported fields }
Attributes used to include tests in test plans.
func (*Attribute) Descriptor
deprecated
func (*Attribute) ProtoMessage ¶
func (*Attribute) ProtoMessage()
func (*Attribute) ProtoReflect ¶
func (x *Attribute) ProtoReflect() protoreflect.Message
type Contact ¶
type Contact struct { // Types that are assignable to Type: // *Contact_Email // *Contact_MdbGroup Type isContact_Type `protobuf_oneof:"type"` // contains filtered or unexported fields }
Contact information of individuals or teams.
func (*Contact) Descriptor
deprecated
func (*Contact) GetMdbGroup ¶
func (*Contact) ProtoMessage ¶
func (*Contact) ProtoMessage()
func (*Contact) ProtoReflect ¶
func (x *Contact) ProtoReflect() protoreflect.Message
type Contact_Email ¶
type Contact_Email struct { // e.g.: user@google.com Email string `protobuf:"bytes,1,opt,name=email,proto3,oneof"` }
type Contact_MdbGroup ¶
type Contact_MdbGroup struct { // e.g.: team-name (not mdb/team-name) MdbGroup string `protobuf:"bytes,2,opt,name=mdb_group,json=mdbGroup,proto3,oneof"` }
type DUTCondition ¶
type DUTCondition struct { Expression string `protobuf:"bytes,1,opt,name=expression,proto3" json:"expression,omitempty"` // contains filtered or unexported fields }
Deprecated. Use DutConstraint instead. This message will be deleted once all clients have migrated.
func (*DUTCondition) Descriptor
deprecated
func (*DUTCondition) Descriptor() ([]byte, []int)
Deprecated: Use DUTCondition.ProtoReflect.Descriptor instead.
func (*DUTCondition) GetExpression ¶
func (x *DUTCondition) GetExpression() string
func (*DUTCondition) ProtoMessage ¶
func (*DUTCondition) ProtoMessage()
func (*DUTCondition) ProtoReflect ¶
func (x *DUTCondition) ProtoReflect() protoreflect.Message
func (*DUTCondition) Reset ¶
func (x *DUTCondition) Reset()
func (*DUTCondition) String ¶
func (x *DUTCondition) String() string
type DUTCondition_Scope ¶
type DUTCondition_Scope struct { Setup *v1.DeviceUnderTest `protobuf:"bytes,1,opt,name=setup,proto3" json:"setup,omitempty"` HardwareTopology *api.HardwareTopology `protobuf:"bytes,2,opt,name=hardware_topology,json=hardwareTopology,proto3" json:"hardware_topology,omitempty"` HardwareFeatures *api.HardwareFeatures `protobuf:"bytes,3,opt,name=hardware_features,json=hardwareFeatures,proto3" json:"hardware_features,omitempty"` // contains filtered or unexported fields }
func (*DUTCondition_Scope) Descriptor
deprecated
func (*DUTCondition_Scope) Descriptor() ([]byte, []int)
Deprecated: Use DUTCondition_Scope.ProtoReflect.Descriptor instead.
func (*DUTCondition_Scope) GetHardwareFeatures ¶
func (x *DUTCondition_Scope) GetHardwareFeatures() *api.HardwareFeatures
func (*DUTCondition_Scope) GetHardwareTopology ¶
func (x *DUTCondition_Scope) GetHardwareTopology() *api.HardwareTopology
func (*DUTCondition_Scope) GetSetup ¶
func (x *DUTCondition_Scope) GetSetup() *v1.DeviceUnderTest
func (*DUTCondition_Scope) ProtoMessage ¶
func (*DUTCondition_Scope) ProtoMessage()
func (*DUTCondition_Scope) ProtoReflect ¶
func (x *DUTCondition_Scope) ProtoReflect() protoreflect.Message
func (*DUTCondition_Scope) Reset ¶
func (x *DUTCondition_Scope) Reset()
func (*DUTCondition_Scope) String ¶
func (x *DUTCondition_Scope) String() string
type DUTConfigConstraint ¶
type DUTConfigConstraint struct { // A Common Expression Language (CEL) expression to specify constraints on a // Device Under Test's Chrome OS configuration payload. `expression` MUST // evaluate to a boolean value in the evaluation context described below. // // Test Lab Environments may optionally support scheduling test requests on // Devices Under Test that satisfy some constraints on their Chrome OS // configuration. // When supported, the Test Lab Environment MUST effectively evaluate // `expression` with the following declarations in scope for each available // Device Under Test and ensure that the test is scheduled on a Device Under // Test for which `expression` evaluates to true. // // - Constant: `dut` of type DUTConfigConstraint.DUT defined below, set to the // Chrome OS configuration payload of a particular Device Under Test. // - Types: Protobuf messages from `chromiumos.config.api.*` // - Additionally available with the short-hand `api.*` // // ## Examples // // Typical examples of expressions are: // // - Must run on a device with a given screen size: // dut.hardware_features.screen.milliinch.value == 14000 // - Must run on a device with LTE support: // dut.hardware_features.lte == api.HardwareFeatures.Present.PRESENT // - or equivalently, // (dut.hardware_features.lte == // chromiumos.config.api.HardwareFeatures.Present.PRESENT) // - Must not run on a device with a specific form factor: // (dut.hardware_features.form_factor.form_factor != // api.HardwareFeatures.FormFactor.CLAMSHELL) // // ## CEL support // // The full CEL spec can be found at https://github.com/google/cel-spec. // // Current support for `expression` evaluation is very restricted due to // limitations in the scheduling infrastructure used by Test Platform. // // As this API matures, features will be added to the scheduling // infrastructure of Test Platform and restrictions here will be lifted based // on requirements collected from test authors. See milestones in // go/cros-f20-plan for expected feature iterations. Test Lab Environments // SHOULD validate the expression and reject use of unsupported features. // // TODO(crbug.com/1051689) Add reference to the metadata validator package. // // ### Syntax // // See full syntax definition at // https://github.com/google/cel-spec/blob/master/doc/langdef.md#syntax // // CEL standard syntax allows expressions that evaluate to errors (e.g., // syntax allows negation of lists, which has no semantics in CEL). // Thus, this spec does not attempt to restrict the syntax, but specifies what // operations are unsupported to aid metadata producers. Ultimately, the // reference metadata validator is the authority on what expressions are // allowed. // // Unsupported standard CEL semantics: // - Binary arithmetic operations // e.g.: +, *, /, % ... // - Relational Operators beyond (in)equality are not supported. // e.g.: (>, <, >=, <= ...) // - Logical OR in expressions is not supported. // e.g.: (a || b), !(a && b) ... // // ### Macros // // See full macro definition at // https://github.com/google/cel-spec/blob/master/doc/langdef.md#macros // // Supported macros: has(), e.all() // Unsupported macros: e.exists(), e.exists_one(), e.map(), e.filter() // // ### Standard functions // // See full list of standard definitions at // https://github.com/google/cel-spec/blob/master/doc/langdef.md#standard-definitions // // Most standard functions are not supported. // // - Supported operators: !_, -_, _!=_, _&&_, _=_, _[_] // - All other operators are not supported. // - All other standard functions are not supported. In particular: // - size() is not supported. // - string functions like endsWith() and contains() are not supported. // - type conversions like int() and string() are not supported. // - reflection with type(), null_type() and dyn() is not supported. Expression string `protobuf:"bytes,1,opt,name=expression,proto3" json:"expression,omitempty"` // contains filtered or unexported fields }
Conditions to be met for the Chrome OS configuration of each Device Under Test targeted by a test.
func (*DUTConfigConstraint) Descriptor
deprecated
func (*DUTConfigConstraint) Descriptor() ([]byte, []int)
Deprecated: Use DUTConfigConstraint.ProtoReflect.Descriptor instead.
func (*DUTConfigConstraint) GetExpression ¶
func (x *DUTConfigConstraint) GetExpression() string
func (*DUTConfigConstraint) ProtoMessage ¶
func (*DUTConfigConstraint) ProtoMessage()
func (*DUTConfigConstraint) ProtoReflect ¶
func (x *DUTConfigConstraint) ProtoReflect() protoreflect.Message
func (*DUTConfigConstraint) Reset ¶
func (x *DUTConfigConstraint) Reset()
func (*DUTConfigConstraint) String ¶
func (x *DUTConfigConstraint) String() string
type DUTConfigConstraint_DUT ¶
type DUTConfigConstraint_DUT struct { HardwareFeatures *api.HardwareFeatures `protobuf:"bytes,1,opt,name=hardware_features,json=hardwareFeatures,proto3" json:"hardware_features,omitempty"` // contains filtered or unexported fields }
The evaluation context for `expression` MUST include the Chrome OS configuration payload for a particular Device Under Test as a typed constant of the following type.
func (*DUTConfigConstraint_DUT) Descriptor
deprecated
func (*DUTConfigConstraint_DUT) Descriptor() ([]byte, []int)
Deprecated: Use DUTConfigConstraint_DUT.ProtoReflect.Descriptor instead.
func (*DUTConfigConstraint_DUT) GetHardwareFeatures ¶
func (x *DUTConfigConstraint_DUT) GetHardwareFeatures() *api.HardwareFeatures
func (*DUTConfigConstraint_DUT) ProtoMessage ¶
func (*DUTConfigConstraint_DUT) ProtoMessage()
func (*DUTConfigConstraint_DUT) ProtoReflect ¶
func (x *DUTConfigConstraint_DUT) ProtoReflect() protoreflect.Message
func (*DUTConfigConstraint_DUT) Reset ¶
func (x *DUTConfigConstraint_DUT) Reset()
func (*DUTConfigConstraint_DUT) String ¶
func (x *DUTConfigConstraint_DUT) String() string
type DUTConstraint ¶
type DUTConstraint struct { // Conditions on the Chrome OS configuration payload. Config *DUTConfigConstraint `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` // Conditions on device setup. Setup *DUTSetupConstraint `protobuf:"bytes,2,opt,name=setup,proto3" json:"setup,omitempty"` // contains filtered or unexported fields }
Conditions to be met for each Device Under Test targeted by a test.
func (*DUTConstraint) Descriptor
deprecated
func (*DUTConstraint) Descriptor() ([]byte, []int)
Deprecated: Use DUTConstraint.ProtoReflect.Descriptor instead.
func (*DUTConstraint) GetConfig ¶
func (x *DUTConstraint) GetConfig() *DUTConfigConstraint
func (*DUTConstraint) GetSetup ¶
func (x *DUTConstraint) GetSetup() *DUTSetupConstraint
func (*DUTConstraint) ProtoMessage ¶
func (*DUTConstraint) ProtoMessage()
func (*DUTConstraint) ProtoReflect ¶
func (x *DUTConstraint) ProtoReflect() protoreflect.Message
func (*DUTConstraint) Reset ¶
func (x *DUTConstraint) Reset()
func (*DUTConstraint) String ¶
func (x *DUTConstraint) String() string
type DUTSetupConstraint ¶
type DUTSetupConstraint struct { // A Common Expression Language (CEL) expression to specify constraints on a // Device Under Test setup. `expression` MUST evaluate to a boolean value in // the evaluation context described below. // // Test Lab Environments may optionally support scheduling test requests on // Devices Under Test that satisfy some constraints on how they are setup. // When supported, the Test Lab Environment MUST effectively evaluate // `expression` with the following declarations in scope for each available // Device Under Test and ensure that the test is scheduled on a Device Under // Test for which `expression` evaluates to true. // // - Constant: `dut` of type DUTSetupConstraint.DUT defined below, set to the // setup configuration payload of a particular Device Under Test. // - Type: Protobuf messages `chromiumos.config.api.test.dut.v1.*`, e.g. // `chromiumos.config.api.test.dut.v1.DeviceUnderTest` // - Additionally available with short-hands `DeviceUnderTest` etc. // // ## Examples // // Typical examples of expressions are: // // - Must run on a DUT with servo present: // dut.setup.peripheral.servo.present // - Must run on a DUT which is in a camera box with a front facing camera: // dut.setup.peripheral.camerabox.facing == Camerabox.Facing.FRONT // - Or, equivalently: // (dut.setup.peripheral.camerabox.facing == // chromiumos.config.api.test.dut.v1.Camerabox.Facing.FRONT) // // ## CEL support // // The full CEL spec can be found at https://github.com/google/cel-spec. // // Current support for `expression` evaluation is very restricted due to // limitations in the scheduling infrastructure used by Test Platform. // // As this API matures, features will be added to the scheduling // infrastructure of Test Platform and restrictions here will be lifted based // on requirements collected from test authors. See milestones in // go/cros-f20-plan for expected feature iterations. Test Lab Environments // SHOULD validate the expression and reject use of unsupported features. // // TODO(crbug.com/1051689) Add reference to the metadata validator package. // // ### Syntax // // See full syntax definition at // https://github.com/google/cel-spec/blob/master/doc/langdef.md#syntax // // CEL standard syntax allows expressions that evaluate to errors (e.g., // syntax allows negation of lists, which has no semantics in CEL). // Thus, this spec does not attempt to restrict the syntax, but specifies what // operations are unsupported to aid metadata producers. Ultimately, the // reference metadata validator is the authority on what expressions are // allowed. // // Unsupported standard CEL semantics: // - Binary arithmetic operations // e.g.: +, *, /, % ... // - Relational Operators beyond (in)equality are not supported. // e.g.: (>, <, >=, <= ...) // - Logical OR in expressions is not supported. // e.g.: (a || b), !(a && b) ... // // ### Macros // // See full macro definition at // https://github.com/google/cel-spec/blob/master/doc/langdef.md#macros // // Supported macros: has(), e.all() // Unsupported macros: e.exists(), e.exists_one(), e.map(), e.filter() // // ### Standard functions // // See full list of standard definitions at // https://github.com/google/cel-spec/blob/master/doc/langdef.md#standard-definitions // // Most standard functions are not supported. // // - Supported operators: !_, -_, _!=_, _&&_, _=_, _[_] // - All other operators are not supported. // - All other standard functions are not supported. In particular: // - size() is not supported. // - string functions like endsWith() and contains() are not supported. // - type conversions like int() and string() are not supported. // - reflection with type(), null_type() and dyn() is not supported. Expression string `protobuf:"bytes,1,opt,name=expression,proto3" json:"expression,omitempty"` // contains filtered or unexported fields }
Conditions to be met for the setup of each Device Under Test targeted by a test.
func (*DUTSetupConstraint) Descriptor
deprecated
func (*DUTSetupConstraint) Descriptor() ([]byte, []int)
Deprecated: Use DUTSetupConstraint.ProtoReflect.Descriptor instead.
func (*DUTSetupConstraint) GetExpression ¶
func (x *DUTSetupConstraint) GetExpression() string
func (*DUTSetupConstraint) ProtoMessage ¶
func (*DUTSetupConstraint) ProtoMessage()
func (*DUTSetupConstraint) ProtoReflect ¶
func (x *DUTSetupConstraint) ProtoReflect() protoreflect.Message
func (*DUTSetupConstraint) Reset ¶
func (x *DUTSetupConstraint) Reset()
func (*DUTSetupConstraint) String ¶
func (x *DUTSetupConstraint) String() string
type DUTSetupConstraint_DUT ¶
type DUTSetupConstraint_DUT struct { // Peripherals information about the lab deployment of the device Setup *v1.DeviceUnderTest `protobuf:"bytes,1,opt,name=setup,proto3" json:"setup,omitempty"` // contains filtered or unexported fields }
The evaluation context for `expression` MUST include the dut setup configuration payload for a particular Device Under Test as a typed constant of the following type.
func (*DUTSetupConstraint_DUT) Descriptor
deprecated
func (*DUTSetupConstraint_DUT) Descriptor() ([]byte, []int)
Deprecated: Use DUTSetupConstraint_DUT.ProtoReflect.Descriptor instead.
func (*DUTSetupConstraint_DUT) GetSetup ¶
func (x *DUTSetupConstraint_DUT) GetSetup() *v1.DeviceUnderTest
func (*DUTSetupConstraint_DUT) ProtoMessage ¶
func (*DUTSetupConstraint_DUT) ProtoMessage()
func (*DUTSetupConstraint_DUT) ProtoReflect ¶
func (x *DUTSetupConstraint_DUT) ProtoReflect() protoreflect.Message
func (*DUTSetupConstraint_DUT) Reset ¶
func (x *DUTSetupConstraint_DUT) Reset()
func (*DUTSetupConstraint_DUT) String ¶
func (x *DUTSetupConstraint_DUT) String() string
type DockerImage ¶
type DockerImage struct { // The Docker image digest is a content-addressable identifier for an image. // // The source of the Remote Test Driver images (e.g., a Docker registry, or // a local Docker server) is specified in the Test Lab Environment request. // The test metadata only contains the digest of the image to use. // // TLEs SHOULD verify the downloaded image against the digest. // // The digest MUST be set in metadata payload used by the Test Lab // Environments. There is only one case where the digest may be elided: // // It may be useful for Remote Test Driver images to contain a // copy of the metadata payload (e.g. to map from Test name to some Remote // Test Driver-internal execution behaviour). This creates a chicken-and-egg // problem: Changing the image name changes the image content, thereby // changing the image hash again. In such cases, digest may be elided in the // metadata payload inside the Remote Test Driver image. Digest string `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"` // contains filtered or unexported fields }
Remote Test Driver images are pre-packaged Docker images.
func (*DockerImage) Descriptor
deprecated
func (*DockerImage) Descriptor() ([]byte, []int)
Deprecated: Use DockerImage.ProtoReflect.Descriptor instead.
func (*DockerImage) GetDigest ¶
func (x *DockerImage) GetDigest() string
func (*DockerImage) ProtoMessage ¶
func (*DockerImage) ProtoMessage()
func (*DockerImage) ProtoReflect ¶
func (x *DockerImage) ProtoReflect() protoreflect.Message
func (*DockerImage) Reset ¶
func (x *DockerImage) Reset()
func (*DockerImage) String ¶
func (x *DockerImage) String() string
type Informational ¶
type Informational struct { // Contacts for ownership / flakiness notification etc. Authors []*Contact `protobuf:"bytes,1,rep,name=authors,proto3" json:"authors,omitempty"` // Machine readable test-specific information. // // Remote Test Drivers SHOULD include detailed information to aid analytics. // For example, test authors may minimize code duplication by writing // paramterized tests. Thus, multiple test metadata may refer to the // same test implementation with different arguments. It is useful to include // this information as details. An example for Tauto: // { // "test_project": "chromiumos/third_party/autotest", // "control_file": "site_tests/dummy_Pass/control.stress", // "args": { // "run_count": 35 // } // } // // This field MUST NOT be interpreted by the Test Lab Environments, but Remote // Test Drivers can enrich analytics by using uniform stable schema for // details across all their tests. Details *structpb.Struct `protobuf:"bytes,2,opt,name=details,proto3" json:"details,omitempty"` // contains filtered or unexported fields }
Contains metadata about the test that doesn't affect scheduling or execution.
func (*Informational) Descriptor
deprecated
func (*Informational) Descriptor() ([]byte, []int)
Deprecated: Use Informational.ProtoReflect.Descriptor instead.
func (*Informational) GetAuthors ¶
func (x *Informational) GetAuthors() []*Contact
func (*Informational) GetDetails ¶
func (x *Informational) GetDetails() *structpb.Struct
func (*Informational) ProtoMessage ¶
func (*Informational) ProtoMessage()
func (*Informational) ProtoReflect ¶
func (x *Informational) ProtoReflect() protoreflect.Message
func (*Informational) Reset ¶
func (x *Informational) Reset()
func (*Informational) String ¶
func (x *Informational) String() string
type RemoteTestDriver ¶
type RemoteTestDriver struct { // Globally unique name for a Remote Test Driver package. // // // MUST be a valid resource per https://aip.dev/122. // // Pattern: remoteTestDrivers/{remoteTestDriver} // // The two most commonly used Remote Test Drivers are named // - remoteTestDrivers/tauto // - remoteTestDrivers/tast // and contain the common public tests written in the Tauto and Tast framework // respectively. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // A Docker image containing all the required dependencies and other build // artifacts required for test invocations. // // Test Lab Environments SHOULD fail with an error indicating that the request // was invalid if the image fails to be found for a test invocation. // // See go/cros-f20-rtd-design for details about how the docker image should // be prepared. DockerImage *DockerImage `protobuf:"bytes,5,opt,name=docker_image,json=dockerImage,proto3" json:"docker_image,omitempty"` // Command to invoke the Remote Test Driver inside `image`. // // Remote Test Servers MUST run `command` as // $ ${command} -input ${input} // where ${command} and ${input} are absolute paths inside the container. // // Remote Test Servers MUST populate `input` with a binaryproto file // representing a test.invocation.Invocation message. Command string `protobuf:"bytes,3,opt,name=command,proto3" json:"command,omitempty"` // Metadata for the smallest schedulable test units. Tests []*Test `protobuf:"bytes,4,rep,name=tests,proto3" json:"tests,omitempty"` // contains filtered or unexported fields }
go/cros-rtd-spec describes the Remote Test Driver bootstrapping flow inside the Remote Test Server. Remote Test Driver configures the bootstrapping flow for a test invocation.
func (*RemoteTestDriver) Descriptor
deprecated
func (*RemoteTestDriver) Descriptor() ([]byte, []int)
Deprecated: Use RemoteTestDriver.ProtoReflect.Descriptor instead.
func (*RemoteTestDriver) GetCommand ¶
func (x *RemoteTestDriver) GetCommand() string
func (*RemoteTestDriver) GetDockerImage ¶
func (x *RemoteTestDriver) GetDockerImage() *DockerImage
func (*RemoteTestDriver) GetName ¶
func (x *RemoteTestDriver) GetName() string
func (*RemoteTestDriver) GetTests ¶
func (x *RemoteTestDriver) GetTests() []*Test
func (*RemoteTestDriver) ProtoMessage ¶
func (*RemoteTestDriver) ProtoMessage()
func (*RemoteTestDriver) ProtoReflect ¶
func (x *RemoteTestDriver) ProtoReflect() protoreflect.Message
func (*RemoteTestDriver) Reset ¶
func (x *RemoteTestDriver) Reset()
func (*RemoteTestDriver) String ¶
func (x *RemoteTestDriver) String() string
type Specification ¶
type Specification struct { // A set of Remote Test Driver packages. // // In practice, a complete specification of all known Remote Test Drivers may // consist of multiple Specification instances. In that case the test names // MUST be unique across different Specification instances. // // Unlike tests, a RemoteTestDriver (identified by its name) may be specified // multiple times, in a single Specification or across different Specification // instances. In that case, all fields except the list of tests MUST be // identical across these RemoteTestDriver instances. The list of tests across // these instances will be concatenated together. RemoteTestDrivers []*RemoteTestDriver `protobuf:"bytes,1,rep,name=remote_test_drivers,json=remoteTestDrivers,proto3" json:"remote_test_drivers,omitempty"` // contains filtered or unexported fields }
The test metadata specification.
Test metadata MUST be generated for each Remote Test Driver as one of the test artifacts generated from Chrome OS build system.
func (*Specification) Descriptor
deprecated
func (*Specification) Descriptor() ([]byte, []int)
Deprecated: Use Specification.ProtoReflect.Descriptor instead.
func (*Specification) GetRemoteTestDrivers ¶
func (x *Specification) GetRemoteTestDrivers() []*RemoteTestDriver
func (*Specification) ProtoMessage ¶
func (*Specification) ProtoMessage()
func (*Specification) ProtoReflect ¶
func (x *Specification) ProtoReflect() protoreflect.Message
func (*Specification) Reset ¶
func (x *Specification) Reset()
func (*Specification) String ¶
func (x *Specification) String() string
type Test ¶
type Test struct { // Globally unique name for this test. // // MUST be a valid resource per https://aip.dev/122. // // Pattern: remoteTestDrivers/{remoteTestDriver}/tests/{test} // where {remoteTestDriver} is the Remote Test Driver package that // contains this test. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Attributes are used to include tests in test plans. // // See Also: // Test plans: test/plan/plan.proto Attributes []*Attribute `protobuf:"bytes,2,rep,name=attributes,proto3" json:"attributes,omitempty"` // Required conditions to be met for the Devices Under Test targeted by this // test. // // Constraint enforcement is an optional feature for test scheduling, i.e., // some Test Lab Environments may ignore conditions entirely. // // If the test execution is sharded over multiple devices, each must satisfy // these conditions. DutConstraint *DUTConstraint `protobuf:"bytes,6,opt,name=dut_constraint,json=dutConstraint,proto3" json:"dut_constraint,omitempty"` // Metadata about the test that doesn't affect scheduling. Informational *Informational `protobuf:"bytes,4,opt,name=informational,proto3" json:"informational,omitempty"` // Will be deleted (& reserved) once all clients have migrated. // // Deprecated: Do not use. DutCondition *DUTCondition `protobuf:"bytes,5,opt,name=dut_condition,json=dutCondition,proto3" json:"dut_condition,omitempty"` // contains filtered or unexported fields }
Related Test objects may be marked as such via the Informational field. See the documentation of test.metadata.v1.Informational for details.
A single test platform request or Remote Test Driver invocation may contain multiple instances of multiple Tests, but each instance of a Test MUST correspond to exactly one reported result.
See Also:
Test Platform request: TODO(pprabhu) Remote Test Driver invocation request: test/rtd/invocation.proto Remote Test Driver progress API: test/rtd/progress.proto
func (*Test) Descriptor
deprecated
func (*Test) GetAttributes ¶
func (*Test) GetDutCondition
deprecated
func (x *Test) GetDutCondition() *DUTCondition
Deprecated: Do not use.
func (*Test) GetDutConstraint ¶
func (x *Test) GetDutConstraint() *DUTConstraint
func (*Test) GetInformational ¶
func (x *Test) GetInformational() *Informational
func (*Test) ProtoMessage ¶
func (*Test) ProtoMessage()
func (*Test) ProtoReflect ¶
func (x *Test) ProtoReflect() protoreflect.Message