blob: c858a178fc2817f85ead0a740a37b5134975f4d2 [file] [log] [blame]
// Copyright 2019 The LUCI Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.33.0
// protoc v5.26.1
// source: go.chromium.org/luci/resultdb/proto/v1/predicate.proto
package resultpb
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
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)
)
// Filters test results based on TestResult.expected field.
type TestResultPredicate_Expectancy int32
const (
// All test results satisfy this.
// WARNING: using this significantly increases response size and latency.
TestResultPredicate_ALL TestResultPredicate_Expectancy = 0
// A test result must belong to a test variant that has one or more
// unexpected results. It can be used to fetch both unexpected and flakily
// expected results.
//
// Note that the predicate is defined at the test variant level.
// For example, if a test variant expects a PASS and has results
// [FAIL, FAIL, PASS], then all results satisfy the predicate because
// the variant satisfies the predicate.
TestResultPredicate_VARIANTS_WITH_UNEXPECTED_RESULTS TestResultPredicate_Expectancy = 1
// Similar to VARIANTS_WITH_UNEXPECTED_RESULTS, but the test variant
// must not have any expected results.
TestResultPredicate_VARIANTS_WITH_ONLY_UNEXPECTED_RESULTS TestResultPredicate_Expectancy = 2
)
// Enum value maps for TestResultPredicate_Expectancy.
var (
TestResultPredicate_Expectancy_name = map[int32]string{
0: "ALL",
1: "VARIANTS_WITH_UNEXPECTED_RESULTS",
2: "VARIANTS_WITH_ONLY_UNEXPECTED_RESULTS",
}
TestResultPredicate_Expectancy_value = map[string]int32{
"ALL": 0,
"VARIANTS_WITH_UNEXPECTED_RESULTS": 1,
"VARIANTS_WITH_ONLY_UNEXPECTED_RESULTS": 2,
}
)
func (x TestResultPredicate_Expectancy) Enum() *TestResultPredicate_Expectancy {
p := new(TestResultPredicate_Expectancy)
*p = x
return p
}
func (x TestResultPredicate_Expectancy) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (TestResultPredicate_Expectancy) Descriptor() protoreflect.EnumDescriptor {
return file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_enumTypes[0].Descriptor()
}
func (TestResultPredicate_Expectancy) Type() protoreflect.EnumType {
return &file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_enumTypes[0]
}
func (x TestResultPredicate_Expectancy) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use TestResultPredicate_Expectancy.Descriptor instead.
func (TestResultPredicate_Expectancy) EnumDescriptor() ([]byte, []int) {
return file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescGZIP(), []int{0, 0}
}
// Represents a function TestResult -> bool.
// Empty message matches all test results.
//
// Most clients would want to set expected_results to
// VARIANTS_WITH_UNEXPECTED_RESULTS.
type TestResultPredicate struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A test result must have a test id matching this regular expression
// entirely, i.e. the expression is implicitly wrapped with ^ and $.
TestIdRegexp string `protobuf:"bytes,1,opt,name=test_id_regexp,json=testIdRegexp,proto3" json:"test_id_regexp,omitempty"`
// A test result must have a variant satisfying this predicate.
Variant *VariantPredicate `protobuf:"bytes,2,opt,name=variant,proto3" json:"variant,omitempty"`
// A test result must match this predicate based on TestResult.expected field.
// Most clients would want to override this field because the default
// typically causes a large response size.
Expectancy TestResultPredicate_Expectancy `protobuf:"varint,3,opt,name=expectancy,proto3,enum=luci.resultdb.v1.TestResultPredicate_Expectancy" json:"expectancy,omitempty"`
// If true, filter out exonerated test variants.
// Mutually exclusive with Expectancy.ALL.
//
// If false, the filter is NOT applied.
// That is, the test result may or may not be exonerated.
ExcludeExonerated bool `protobuf:"varint,4,opt,name=exclude_exonerated,json=excludeExonerated,proto3" json:"exclude_exonerated,omitempty"`
}
func (x *TestResultPredicate) Reset() {
*x = TestResultPredicate{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TestResultPredicate) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TestResultPredicate) ProtoMessage() {}
func (x *TestResultPredicate) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_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 TestResultPredicate.ProtoReflect.Descriptor instead.
func (*TestResultPredicate) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescGZIP(), []int{0}
}
func (x *TestResultPredicate) GetTestIdRegexp() string {
if x != nil {
return x.TestIdRegexp
}
return ""
}
func (x *TestResultPredicate) GetVariant() *VariantPredicate {
if x != nil {
return x.Variant
}
return nil
}
func (x *TestResultPredicate) GetExpectancy() TestResultPredicate_Expectancy {
if x != nil {
return x.Expectancy
}
return TestResultPredicate_ALL
}
func (x *TestResultPredicate) GetExcludeExonerated() bool {
if x != nil {
return x.ExcludeExonerated
}
return false
}
// Represents a function TestExoneration -> bool.
// Empty message matches all test exonerations.
type TestExonerationPredicate struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A test exoneration must have a test id matching this regular expression
// entirely, i.e. the expression is implicitly wrapped with ^ and $.
TestIdRegexp string `protobuf:"bytes,1,opt,name=test_id_regexp,json=testIdRegexp,proto3" json:"test_id_regexp,omitempty"`
// A test exoneration must have a variant satisfying this predicate.
Variant *VariantPredicate `protobuf:"bytes,2,opt,name=variant,proto3" json:"variant,omitempty"`
}
func (x *TestExonerationPredicate) Reset() {
*x = TestExonerationPredicate{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TestExonerationPredicate) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TestExonerationPredicate) ProtoMessage() {}
func (x *TestExonerationPredicate) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_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 TestExonerationPredicate.ProtoReflect.Descriptor instead.
func (*TestExonerationPredicate) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescGZIP(), []int{1}
}
func (x *TestExonerationPredicate) GetTestIdRegexp() string {
if x != nil {
return x.TestIdRegexp
}
return ""
}
func (x *TestExonerationPredicate) GetVariant() *VariantPredicate {
if x != nil {
return x.Variant
}
return nil
}
// Represents a function Variant -> bool.
type VariantPredicate struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Predicate:
//
// *VariantPredicate_Equals
// *VariantPredicate_Contains
Predicate isVariantPredicate_Predicate `protobuf_oneof:"predicate"`
}
func (x *VariantPredicate) Reset() {
*x = VariantPredicate{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *VariantPredicate) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*VariantPredicate) ProtoMessage() {}
func (x *VariantPredicate) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_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 VariantPredicate.ProtoReflect.Descriptor instead.
func (*VariantPredicate) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescGZIP(), []int{2}
}
func (m *VariantPredicate) GetPredicate() isVariantPredicate_Predicate {
if m != nil {
return m.Predicate
}
return nil
}
func (x *VariantPredicate) GetEquals() *Variant {
if x, ok := x.GetPredicate().(*VariantPredicate_Equals); ok {
return x.Equals
}
return nil
}
func (x *VariantPredicate) GetContains() *Variant {
if x, ok := x.GetPredicate().(*VariantPredicate_Contains); ok {
return x.Contains
}
return nil
}
type isVariantPredicate_Predicate interface {
isVariantPredicate_Predicate()
}
type VariantPredicate_Equals struct {
// A variant must be equal this definition exactly.
Equals *Variant `protobuf:"bytes,1,opt,name=equals,proto3,oneof"`
}
type VariantPredicate_Contains struct {
// A variant's key-value pairs must contain those in this one.
Contains *Variant `protobuf:"bytes,2,opt,name=contains,proto3,oneof"`
}
func (*VariantPredicate_Equals) isVariantPredicate_Predicate() {}
func (*VariantPredicate_Contains) isVariantPredicate_Predicate() {}
// Represents a function Artifact -> bool.
type ArtifactPredicate struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Specifies which edges to follow when retrieving directly/indirectly
// included artifacts.
// For example,
// - to retrieve only invocation-level artifacts, use
// {included_invocations: true}.
// - to retrieve only test-result-level artifacts, use {test_results: true}.
//
// By default, follows all edges.
FollowEdges *ArtifactPredicate_EdgeTypeSet `protobuf:"bytes,1,opt,name=follow_edges,json=followEdges,proto3" json:"follow_edges,omitempty"` // defaults to All.
// If an Artifact belongs to a TestResult, then the test result must satisfy
// this predicate.
// Note: this predicate does NOT apply to invocation-level artifacts.
// To exclude them from the response, use follow_edges.
TestResultPredicate *TestResultPredicate `protobuf:"bytes,2,opt,name=test_result_predicate,json=testResultPredicate,proto3" json:"test_result_predicate,omitempty"`
// An artifact must have a content type matching this regular expression
// entirely, i.e. the expression is implicitly wrapped with ^ and $.
// Defaults to ".*".
ContentTypeRegexp string `protobuf:"bytes,3,opt,name=content_type_regexp,json=contentTypeRegexp,proto3" json:"content_type_regexp,omitempty"`
// An artifact must have an ID matching this regular expression entirely, i.e.
// the expression is implicitly wrapped with ^ and $. Defaults to ".*".
ArtifactIdRegexp string `protobuf:"bytes,4,opt,name=artifact_id_regexp,json=artifactIdRegexp,proto3" json:"artifact_id_regexp,omitempty"`
}
func (x *ArtifactPredicate) Reset() {
*x = ArtifactPredicate{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ArtifactPredicate) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ArtifactPredicate) ProtoMessage() {}
func (x *ArtifactPredicate) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_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 ArtifactPredicate.ProtoReflect.Descriptor instead.
func (*ArtifactPredicate) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescGZIP(), []int{3}
}
func (x *ArtifactPredicate) GetFollowEdges() *ArtifactPredicate_EdgeTypeSet {
if x != nil {
return x.FollowEdges
}
return nil
}
func (x *ArtifactPredicate) GetTestResultPredicate() *TestResultPredicate {
if x != nil {
return x.TestResultPredicate
}
return nil
}
func (x *ArtifactPredicate) GetContentTypeRegexp() string {
if x != nil {
return x.ContentTypeRegexp
}
return ""
}
func (x *ArtifactPredicate) GetArtifactIdRegexp() string {
if x != nil {
return x.ArtifactIdRegexp
}
return ""
}
// Represents a function TestMetadata -> bool.
// Empty message matches all test metadata.
type TestMetadataPredicate struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A test metadata must have the test id in this list.
TestIds []string `protobuf:"bytes,1,rep,name=test_ids,json=testIds,proto3" json:"test_ids,omitempty"`
}
func (x *TestMetadataPredicate) Reset() {
*x = TestMetadataPredicate{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TestMetadataPredicate) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TestMetadataPredicate) ProtoMessage() {}
func (x *TestMetadataPredicate) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_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 TestMetadataPredicate.ProtoReflect.Descriptor instead.
func (*TestMetadataPredicate) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescGZIP(), []int{4}
}
func (x *TestMetadataPredicate) GetTestIds() []string {
if x != nil {
return x.TestIds
}
return nil
}
// A set of Invocation's outgoing edge types.
type ArtifactPredicate_EdgeTypeSet struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The edges represented by Invocation.included_invocations field.
IncludedInvocations bool `protobuf:"varint,1,opt,name=included_invocations,json=includedInvocations,proto3" json:"included_invocations,omitempty"`
// The parent-child relationship between Invocation and TestResult.
TestResults bool `protobuf:"varint,2,opt,name=test_results,json=testResults,proto3" json:"test_results,omitempty"`
}
func (x *ArtifactPredicate_EdgeTypeSet) Reset() {
*x = ArtifactPredicate_EdgeTypeSet{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ArtifactPredicate_EdgeTypeSet) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ArtifactPredicate_EdgeTypeSet) ProtoMessage() {}
func (x *ArtifactPredicate_EdgeTypeSet) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_resultdb_proto_v1_predicate_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 ArtifactPredicate_EdgeTypeSet.ProtoReflect.Descriptor instead.
func (*ArtifactPredicate_EdgeTypeSet) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescGZIP(), []int{3, 0}
}
func (x *ArtifactPredicate_EdgeTypeSet) GetIncludedInvocations() bool {
if x != nil {
return x.IncludedInvocations
}
return false
}
func (x *ArtifactPredicate_EdgeTypeSet) GetTestResults() bool {
if x != nil {
return x.TestResults
}
return false
}
var File_go_chromium_org_luci_resultdb_proto_v1_predicate_proto protoreflect.FileDescriptor
var file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDesc = []byte{
0x0a, 0x36, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2f,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61,
0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72,
0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x1a, 0x33, 0x67, 0x6f, 0x2e, 0x63,
0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69,
0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
0xe2, 0x02, 0x0a, 0x13, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x50, 0x72,
0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x65, 0x73, 0x74, 0x5f,
0x69, 0x64, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0c, 0x74, 0x65, 0x73, 0x74, 0x49, 0x64, 0x52, 0x65, 0x67, 0x65, 0x78, 0x70, 0x12, 0x3c, 0x0a,
0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76,
0x31, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61,
0x74, 0x65, 0x52, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x0a, 0x65,
0x78, 0x70, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x30, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e,
0x76, 0x31, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x65,
0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x63,
0x79, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x63, 0x79, 0x12, 0x2d, 0x0a,
0x12, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x6f, 0x6e, 0x65, 0x72, 0x61,
0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x65, 0x78, 0x63, 0x6c, 0x75,
0x64, 0x65, 0x45, 0x78, 0x6f, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x22, 0x66, 0x0a, 0x0a,
0x45, 0x78, 0x70, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x63, 0x79, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4c,
0x4c, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x56, 0x41, 0x52, 0x49, 0x41, 0x4e, 0x54, 0x53, 0x5f,
0x57, 0x49, 0x54, 0x48, 0x5f, 0x55, 0x4e, 0x45, 0x58, 0x50, 0x45, 0x43, 0x54, 0x45, 0x44, 0x5f,
0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x56, 0x41, 0x52,
0x49, 0x41, 0x4e, 0x54, 0x53, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x5f,
0x55, 0x4e, 0x45, 0x58, 0x50, 0x45, 0x43, 0x54, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c,
0x54, 0x53, 0x10, 0x02, 0x22, 0x7e, 0x0a, 0x18, 0x54, 0x65, 0x73, 0x74, 0x45, 0x78, 0x6f, 0x6e,
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65,
0x12, 0x24, 0x0a, 0x0e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x5f, 0x72, 0x65, 0x67, 0x65,
0x78, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x65, 0x73, 0x74, 0x49, 0x64,
0x52, 0x65, 0x67, 0x65, 0x78, 0x70, 0x12, 0x3c, 0x0a, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e,
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72,
0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61,
0x6e, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x07, 0x76, 0x61, 0x72,
0x69, 0x61, 0x6e, 0x74, 0x22, 0x8d, 0x01, 0x0a, 0x10, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74,
0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x33, 0x0a, 0x06, 0x65, 0x71, 0x75,
0x61, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6c, 0x75, 0x63, 0x69,
0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61, 0x72,
0x69, 0x61, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x06, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x12, 0x37,
0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x19, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62,
0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x08, 0x63,
0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x70, 0x72, 0x65, 0x64, 0x69,
0x63, 0x61, 0x74, 0x65, 0x22, 0x85, 0x03, 0x0a, 0x11, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63,
0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x52, 0x0a, 0x0c, 0x66, 0x6f,
0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x65, 0x64, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x2f, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62,
0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x50, 0x72, 0x65, 0x64,
0x69, 0x63, 0x61, 0x74, 0x65, 0x2e, 0x45, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x53, 0x65,
0x74, 0x52, 0x0b, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x45, 0x64, 0x67, 0x65, 0x73, 0x12, 0x59,
0x0a, 0x15, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x70, 0x72,
0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e,
0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31,
0x2e, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69,
0x63, 0x61, 0x74, 0x65, 0x52, 0x13, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x6e,
0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x70,
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54,
0x79, 0x70, 0x65, 0x52, 0x65, 0x67, 0x65, 0x78, 0x70, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x72, 0x74,
0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x70, 0x18,
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x49,
0x64, 0x52, 0x65, 0x67, 0x65, 0x78, 0x70, 0x1a, 0x63, 0x0a, 0x0b, 0x45, 0x64, 0x67, 0x65, 0x54,
0x79, 0x70, 0x65, 0x53, 0x65, 0x74, 0x12, 0x31, 0x0a, 0x14, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64,
0x65, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01,
0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x49, 0x6e,
0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x65, 0x73,
0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52,
0x0b, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x32, 0x0a, 0x15,
0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x50, 0x72, 0x65, 0x64,
0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x74, 0x65, 0x73, 0x74, 0x49, 0x64, 0x73,
0x42, 0x31, 0x5a, 0x2f, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e,
0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64,
0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x3b, 0x72, 0x65, 0x73, 0x75, 0x6c,
0x74, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescOnce sync.Once
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescData = file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDesc
)
func file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescGZIP() []byte {
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescOnce.Do(func() {
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescData)
})
return file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDescData
}
var file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
var file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_goTypes = []interface{}{
(TestResultPredicate_Expectancy)(0), // 0: luci.resultdb.v1.TestResultPredicate.Expectancy
(*TestResultPredicate)(nil), // 1: luci.resultdb.v1.TestResultPredicate
(*TestExonerationPredicate)(nil), // 2: luci.resultdb.v1.TestExonerationPredicate
(*VariantPredicate)(nil), // 3: luci.resultdb.v1.VariantPredicate
(*ArtifactPredicate)(nil), // 4: luci.resultdb.v1.ArtifactPredicate
(*TestMetadataPredicate)(nil), // 5: luci.resultdb.v1.TestMetadataPredicate
(*ArtifactPredicate_EdgeTypeSet)(nil), // 6: luci.resultdb.v1.ArtifactPredicate.EdgeTypeSet
(*Variant)(nil), // 7: luci.resultdb.v1.Variant
}
var file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_depIdxs = []int32{
3, // 0: luci.resultdb.v1.TestResultPredicate.variant:type_name -> luci.resultdb.v1.VariantPredicate
0, // 1: luci.resultdb.v1.TestResultPredicate.expectancy:type_name -> luci.resultdb.v1.TestResultPredicate.Expectancy
3, // 2: luci.resultdb.v1.TestExonerationPredicate.variant:type_name -> luci.resultdb.v1.VariantPredicate
7, // 3: luci.resultdb.v1.VariantPredicate.equals:type_name -> luci.resultdb.v1.Variant
7, // 4: luci.resultdb.v1.VariantPredicate.contains:type_name -> luci.resultdb.v1.Variant
6, // 5: luci.resultdb.v1.ArtifactPredicate.follow_edges:type_name -> luci.resultdb.v1.ArtifactPredicate.EdgeTypeSet
1, // 6: luci.resultdb.v1.ArtifactPredicate.test_result_predicate:type_name -> luci.resultdb.v1.TestResultPredicate
7, // [7:7] is the sub-list for method output_type
7, // [7:7] is the sub-list for method input_type
7, // [7:7] is the sub-list for extension type_name
7, // [7:7] is the sub-list for extension extendee
0, // [0:7] is the sub-list for field type_name
}
func init() { file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_init() }
func file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_init() {
if File_go_chromium_org_luci_resultdb_proto_v1_predicate_proto != nil {
return
}
file_go_chromium_org_luci_resultdb_proto_v1_common_proto_init()
if !protoimpl.UnsafeEnabled {
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TestResultPredicate); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TestExonerationPredicate); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*VariantPredicate); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ArtifactPredicate); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TestMetadataPredicate); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ArtifactPredicate_EdgeTypeSet); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes[2].OneofWrappers = []interface{}{
(*VariantPredicate_Equals)(nil),
(*VariantPredicate_Contains)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDesc,
NumEnums: 1,
NumMessages: 6,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_goTypes,
DependencyIndexes: file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_depIdxs,
EnumInfos: file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_enumTypes,
MessageInfos: file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_msgTypes,
}.Build()
File_go_chromium_org_luci_resultdb_proto_v1_predicate_proto = out.File
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_rawDesc = nil
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_goTypes = nil
file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_depIdxs = nil
}