go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/resultdb/sink/proto/v1/test_result.pb.go (about) 1 // Copyright 2019 The LUCI Authors. 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 // Code generated by protoc-gen-go. DO NOT EDIT. 16 // versions: 17 // protoc-gen-go v1.31.0 18 // protoc v3.21.7 19 // source: go.chromium.org/luci/resultdb/sink/proto/v1/test_result.proto 20 21 package sinkpb 22 23 import ( 24 v1 "go.chromium.org/luci/resultdb/proto/v1" 25 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 26 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 27 durationpb "google.golang.org/protobuf/types/known/durationpb" 28 structpb "google.golang.org/protobuf/types/known/structpb" 29 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 30 reflect "reflect" 31 sync "sync" 32 ) 33 34 const ( 35 // Verify that this generated code is sufficiently up-to-date. 36 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 37 // Verify that runtime/protoimpl is sufficiently up-to-date. 38 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 39 ) 40 41 // A result file format. 42 type TestResultFile_Format int32 43 44 const ( 45 // The file is a sequence of TestResult JSON objects (not a JSON Array). 46 // The default format. 47 TestResultFile_LUCI TestResultFile_Format = 0 48 // Chromium's JSON Test Results format 49 // https://chromium.googlesource.com/chromium/src/+/master/docs/testing/json_test_results_format.md 50 TestResultFile_CHROMIUM_JSON_TEST_RESULTS TestResultFile_Format = 1 51 // GTest format. 52 // Not well documented. 53 // Implementation: 54 // https://cs.chromium.org/chromium/src/base/test/launcher/test_results_tracker.cc 55 TestResultFile_GOOGLE_TEST TestResultFile_Format = 2 56 ) 57 58 // Enum value maps for TestResultFile_Format. 59 var ( 60 TestResultFile_Format_name = map[int32]string{ 61 0: "LUCI", 62 1: "CHROMIUM_JSON_TEST_RESULTS", 63 2: "GOOGLE_TEST", 64 } 65 TestResultFile_Format_value = map[string]int32{ 66 "LUCI": 0, 67 "CHROMIUM_JSON_TEST_RESULTS": 1, 68 "GOOGLE_TEST": 2, 69 } 70 ) 71 72 func (x TestResultFile_Format) Enum() *TestResultFile_Format { 73 p := new(TestResultFile_Format) 74 *p = x 75 return p 76 } 77 78 func (x TestResultFile_Format) String() string { 79 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 80 } 81 82 func (TestResultFile_Format) Descriptor() protoreflect.EnumDescriptor { 83 return file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_enumTypes[0].Descriptor() 84 } 85 86 func (TestResultFile_Format) Type() protoreflect.EnumType { 87 return &file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_enumTypes[0] 88 } 89 90 func (x TestResultFile_Format) Number() protoreflect.EnumNumber { 91 return protoreflect.EnumNumber(x) 92 } 93 94 // Deprecated: Use TestResultFile_Format.Descriptor instead. 95 func (TestResultFile_Format) EnumDescriptor() ([]byte, []int) { 96 return file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescGZIP(), []int{2, 0} 97 } 98 99 // A local equivalent of luci.resultdb.TestResult message 100 // in ../../v1/test_result.proto. 101 // See its comments for details. 102 type TestResult struct { 103 state protoimpl.MessageState 104 sizeCache protoimpl.SizeCache 105 unknownFields protoimpl.UnknownFields 106 107 // Equivalent of luci.resultdb.v1.TestResult.TestId. 108 TestId string `protobuf:"bytes,1,opt,name=test_id,json=testId,proto3" json:"test_id,omitempty"` 109 // Equivalent of luci.resultdb.v1.TestResult.result_id. 110 // 111 // If omitted, a random, unique ID is generated.. 112 ResultId string `protobuf:"bytes,2,opt,name=result_id,json=resultId,proto3" json:"result_id,omitempty"` 113 // Equivalent of luci.resultdb.v1.TestResult.expected. 114 Expected bool `protobuf:"varint,3,opt,name=expected,proto3" json:"expected,omitempty"` 115 // Equivalent of luci.resultdb.v1.TestResult.status. 116 Status v1.TestStatus `protobuf:"varint,4,opt,name=status,proto3,enum=luci.resultdb.v1.TestStatus" json:"status,omitempty"` 117 // Equivalent of luci.resultdb.v1.TestResult.summary_html. 118 SummaryHtml string `protobuf:"bytes,5,opt,name=summary_html,json=summaryHtml,proto3" json:"summary_html,omitempty"` 119 // Equivalent of luci.resultdb.v1.TestResult.start_time. 120 StartTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` 121 // Equivalent of luci.resultdb.v1.TestResult.duration. 122 Duration *durationpb.Duration `protobuf:"bytes,7,opt,name=duration,proto3" json:"duration,omitempty"` 123 // Equivalent of luci.resultdb.v1.TestResult.tags. 124 Tags []*v1.StringPair `protobuf:"bytes,8,rep,name=tags,proto3" json:"tags,omitempty"` 125 // Artifacts to upload and associate with this test result. 126 // The map key is an artifact id. 127 Artifacts map[string]*Artifact `protobuf:"bytes,9,rep,name=artifacts,proto3" json:"artifacts,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 128 // Equivalent of luci.resultdb.v1.TestResult.test_metadata. 129 TestMetadata *v1.TestMetadata `protobuf:"bytes,11,opt,name=test_metadata,json=testMetadata,proto3" json:"test_metadata,omitempty"` 130 // Equivalent of luci.resultdb.v1.TestResult.failure_reason. 131 FailureReason *v1.FailureReason `protobuf:"bytes,12,opt,name=failure_reason,json=failureReason,proto3" json:"failure_reason,omitempty"` 132 // Equivalent of luci.resultdb.v1.TestResult.variant. 133 // The variant for all test cases should be passed by command line args to rdb 134 // stream, however you can override or add to the variant on a per test case 135 // basis using this field. 136 Variant *v1.Variant `protobuf:"bytes,13,opt,name=variant,proto3" json:"variant,omitempty"` 137 // Arbitrary JSON object that contains structured, domain-specific properties 138 // of the test result. 139 // 140 // The serialized size must be <= 4096 bytes. 141 Properties *structpb.Struct `protobuf:"bytes,14,opt,name=properties,proto3" json:"properties,omitempty"` 142 } 143 144 func (x *TestResult) Reset() { 145 *x = TestResult{} 146 if protoimpl.UnsafeEnabled { 147 mi := &file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[0] 148 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 149 ms.StoreMessageInfo(mi) 150 } 151 } 152 153 func (x *TestResult) String() string { 154 return protoimpl.X.MessageStringOf(x) 155 } 156 157 func (*TestResult) ProtoMessage() {} 158 159 func (x *TestResult) ProtoReflect() protoreflect.Message { 160 mi := &file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[0] 161 if protoimpl.UnsafeEnabled && x != nil { 162 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 163 if ms.LoadMessageInfo() == nil { 164 ms.StoreMessageInfo(mi) 165 } 166 return ms 167 } 168 return mi.MessageOf(x) 169 } 170 171 // Deprecated: Use TestResult.ProtoReflect.Descriptor instead. 172 func (*TestResult) Descriptor() ([]byte, []int) { 173 return file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescGZIP(), []int{0} 174 } 175 176 func (x *TestResult) GetTestId() string { 177 if x != nil { 178 return x.TestId 179 } 180 return "" 181 } 182 183 func (x *TestResult) GetResultId() string { 184 if x != nil { 185 return x.ResultId 186 } 187 return "" 188 } 189 190 func (x *TestResult) GetExpected() bool { 191 if x != nil { 192 return x.Expected 193 } 194 return false 195 } 196 197 func (x *TestResult) GetStatus() v1.TestStatus { 198 if x != nil { 199 return x.Status 200 } 201 return v1.TestStatus(0) 202 } 203 204 func (x *TestResult) GetSummaryHtml() string { 205 if x != nil { 206 return x.SummaryHtml 207 } 208 return "" 209 } 210 211 func (x *TestResult) GetStartTime() *timestamppb.Timestamp { 212 if x != nil { 213 return x.StartTime 214 } 215 return nil 216 } 217 218 func (x *TestResult) GetDuration() *durationpb.Duration { 219 if x != nil { 220 return x.Duration 221 } 222 return nil 223 } 224 225 func (x *TestResult) GetTags() []*v1.StringPair { 226 if x != nil { 227 return x.Tags 228 } 229 return nil 230 } 231 232 func (x *TestResult) GetArtifacts() map[string]*Artifact { 233 if x != nil { 234 return x.Artifacts 235 } 236 return nil 237 } 238 239 func (x *TestResult) GetTestMetadata() *v1.TestMetadata { 240 if x != nil { 241 return x.TestMetadata 242 } 243 return nil 244 } 245 246 func (x *TestResult) GetFailureReason() *v1.FailureReason { 247 if x != nil { 248 return x.FailureReason 249 } 250 return nil 251 } 252 253 func (x *TestResult) GetVariant() *v1.Variant { 254 if x != nil { 255 return x.Variant 256 } 257 return nil 258 } 259 260 func (x *TestResult) GetProperties() *structpb.Struct { 261 if x != nil { 262 return x.Properties 263 } 264 return nil 265 } 266 267 // A local equivalent of luci.resultdb.Artifact message 268 // in ../../rpc/v1/artifact.proto. 269 // See its comments for details. 270 // Does not have a name or artifact_id because they are represented by the 271 // TestResult.artifacts map key. 272 // Next id: 5 273 type Artifact struct { 274 state protoimpl.MessageState 275 sizeCache protoimpl.SizeCache 276 unknownFields protoimpl.UnknownFields 277 278 // Body should be only one of the following: 279 // - file_path (file should exist. contents & gcs_uri should not be set) 280 // - contents (file_path & gcs_uri should not be set) 281 // - gcs_uri for GCS artifact (file_path & contents should not be set) 282 // 283 // Types that are assignable to Body: 284 // 285 // *Artifact_FilePath 286 // *Artifact_Contents 287 // *Artifact_GcsUri 288 Body isArtifact_Body `protobuf_oneof:"body"` 289 // Equivalent of luci.resultdb.v1.Artifact.content_type. 290 ContentType string `protobuf:"bytes,3,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"` 291 } 292 293 func (x *Artifact) Reset() { 294 *x = Artifact{} 295 if protoimpl.UnsafeEnabled { 296 mi := &file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[1] 297 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 298 ms.StoreMessageInfo(mi) 299 } 300 } 301 302 func (x *Artifact) String() string { 303 return protoimpl.X.MessageStringOf(x) 304 } 305 306 func (*Artifact) ProtoMessage() {} 307 308 func (x *Artifact) ProtoReflect() protoreflect.Message { 309 mi := &file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[1] 310 if protoimpl.UnsafeEnabled && x != nil { 311 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 312 if ms.LoadMessageInfo() == nil { 313 ms.StoreMessageInfo(mi) 314 } 315 return ms 316 } 317 return mi.MessageOf(x) 318 } 319 320 // Deprecated: Use Artifact.ProtoReflect.Descriptor instead. 321 func (*Artifact) Descriptor() ([]byte, []int) { 322 return file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescGZIP(), []int{1} 323 } 324 325 func (m *Artifact) GetBody() isArtifact_Body { 326 if m != nil { 327 return m.Body 328 } 329 return nil 330 } 331 332 func (x *Artifact) GetFilePath() string { 333 if x, ok := x.GetBody().(*Artifact_FilePath); ok { 334 return x.FilePath 335 } 336 return "" 337 } 338 339 func (x *Artifact) GetContents() []byte { 340 if x, ok := x.GetBody().(*Artifact_Contents); ok { 341 return x.Contents 342 } 343 return nil 344 } 345 346 func (x *Artifact) GetGcsUri() string { 347 if x, ok := x.GetBody().(*Artifact_GcsUri); ok { 348 return x.GcsUri 349 } 350 return "" 351 } 352 353 func (x *Artifact) GetContentType() string { 354 if x != nil { 355 return x.ContentType 356 } 357 return "" 358 } 359 360 type isArtifact_Body interface { 361 isArtifact_Body() 362 } 363 364 type Artifact_FilePath struct { 365 // Absolute path to the artifact file on the same machine as the 366 // ResultSink server. 367 FilePath string `protobuf:"bytes,1,opt,name=file_path,json=filePath,proto3,oneof"` 368 } 369 370 type Artifact_Contents struct { 371 // Contents of the artifact. Useful when sending a file from a different 372 // machine. 373 // TODO(nodir, sajjadm): allow sending contents in chunks. 374 Contents []byte `protobuf:"bytes,2,opt,name=contents,proto3,oneof"` 375 } 376 377 type Artifact_GcsUri struct { 378 // The GCS URI of the artifact if it's stored in GCS. 379 GcsUri string `protobuf:"bytes,4,opt,name=gcs_uri,json=gcsUri,proto3,oneof"` 380 } 381 382 func (*Artifact_FilePath) isArtifact_Body() {} 383 384 func (*Artifact_Contents) isArtifact_Body() {} 385 386 func (*Artifact_GcsUri) isArtifact_Body() {} 387 388 // A file with test results. 389 type TestResultFile struct { 390 state protoimpl.MessageState 391 sizeCache protoimpl.SizeCache 392 unknownFields protoimpl.UnknownFields 393 394 // Absolute OS-native path to the results file on the same machine as the 395 // ResultSink server. 396 Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` 397 // Format of the file. 398 Format TestResultFile_Format `protobuf:"varint,2,opt,name=format,proto3,enum=luci.resultsink.v1.TestResultFile_Format" json:"format,omitempty"` 399 } 400 401 func (x *TestResultFile) Reset() { 402 *x = TestResultFile{} 403 if protoimpl.UnsafeEnabled { 404 mi := &file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[2] 405 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 406 ms.StoreMessageInfo(mi) 407 } 408 } 409 410 func (x *TestResultFile) String() string { 411 return protoimpl.X.MessageStringOf(x) 412 } 413 414 func (*TestResultFile) ProtoMessage() {} 415 416 func (x *TestResultFile) ProtoReflect() protoreflect.Message { 417 mi := &file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[2] 418 if protoimpl.UnsafeEnabled && x != nil { 419 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 420 if ms.LoadMessageInfo() == nil { 421 ms.StoreMessageInfo(mi) 422 } 423 return ms 424 } 425 return mi.MessageOf(x) 426 } 427 428 // Deprecated: Use TestResultFile.ProtoReflect.Descriptor instead. 429 func (*TestResultFile) Descriptor() ([]byte, []int) { 430 return file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescGZIP(), []int{2} 431 } 432 433 func (x *TestResultFile) GetPath() string { 434 if x != nil { 435 return x.Path 436 } 437 return "" 438 } 439 440 func (x *TestResultFile) GetFormat() TestResultFile_Format { 441 if x != nil { 442 return x.Format 443 } 444 return TestResultFile_LUCI 445 } 446 447 var File_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto protoreflect.FileDescriptor 448 449 var file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDesc = []byte{ 450 0x0a, 0x3d, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 451 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2f, 452 0x73, 0x69, 0x6e, 0x6b, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 453 0x73, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 454 0x12, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x69, 0x6e, 0x6b, 455 0x2e, 0x76, 0x31, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 456 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 457 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 458 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 459 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 460 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 461 0x74, 0x6f, 0x1a, 0x33, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 462 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 463 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 464 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x3b, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 465 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 466 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 467 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x2e, 0x70, 468 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x3a, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 469 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 470 0x74, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x73, 471 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 472 0x1a, 0x38, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 473 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2f, 474 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x65, 475 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x94, 0x06, 0x0a, 0x0a, 0x54, 476 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x73, 477 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x73, 0x74, 478 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x69, 0x64, 0x18, 479 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x49, 0x64, 0x12, 480 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 481 0x08, 0x52, 0x08, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x06, 0x73, 482 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x6c, 0x75, 483 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x54, 484 0x65, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 485 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x68, 0x74, 0x6d, 486 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 487 0x48, 0x74, 0x6d, 0x6c, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 488 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 489 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 490 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 491 0x35, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 492 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 493 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x64, 0x75, 494 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x08, 495 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 496 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x61, 497 0x69, 0x72, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 498 0x66, 0x61, 0x63, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6c, 0x75, 499 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 500 0x2e, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 501 0x66, 0x61, 0x63, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 502 0x66, 0x61, 0x63, 0x74, 0x73, 0x12, 0x43, 0x0a, 0x0d, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 503 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 504 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 505 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0c, 0x74, 0x65, 506 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x46, 0x0a, 0x0e, 0x66, 0x61, 507 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 508 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 509 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x65, 0x61, 510 0x73, 0x6f, 0x6e, 0x52, 0x0d, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x65, 0x61, 0x73, 511 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x0d, 0x20, 512 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 513 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x52, 0x07, 514 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 515 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 516 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 517 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 518 0x1a, 0x5a, 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x45, 0x6e, 0x74, 519 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 520 0x03, 0x6b, 0x65, 0x79, 0x12, 0x32, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 521 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 522 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 523 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, 0x08, 0x0a, 524 0x10, 0x0b, 0x52, 0x0d, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 525 0x6e, 0x22, 0x8d, 0x01, 0x0a, 0x08, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x1d, 526 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 527 0x09, 0x48, 0x00, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1c, 0x0a, 528 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 529 0x00, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x07, 0x67, 530 0x63, 0x73, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 531 0x67, 0x63, 0x73, 0x55, 0x72, 0x69, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 532 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 533 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x62, 0x6f, 0x64, 534 0x79, 0x22, 0xac, 0x01, 0x0a, 0x0e, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 535 0x46, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 536 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x41, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 537 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 538 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 539 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x46, 0x6f, 0x72, 540 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x43, 0x0a, 0x06, 0x46, 541 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x55, 0x43, 0x49, 0x10, 0x00, 0x12, 542 0x1e, 0x0a, 0x1a, 0x43, 0x48, 0x52, 0x4f, 0x4d, 0x49, 0x55, 0x4d, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 543 0x5f, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x01, 0x12, 544 0x0f, 0x0a, 0x0b, 0x47, 0x4f, 0x4f, 0x47, 0x4c, 0x45, 0x5f, 0x54, 0x45, 0x53, 0x54, 0x10, 0x02, 545 0x42, 0x34, 0x5a, 0x32, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 546 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 547 0x62, 0x2f, 0x73, 0x69, 0x6e, 0x6b, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x3b, 548 0x73, 0x69, 0x6e, 0x6b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 549 } 550 551 var ( 552 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescOnce sync.Once 553 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescData = file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDesc 554 ) 555 556 func file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescGZIP() []byte { 557 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescOnce.Do(func() { 558 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescData) 559 }) 560 return file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDescData 561 } 562 563 var file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 564 var file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes = make([]protoimpl.MessageInfo, 4) 565 var file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_goTypes = []interface{}{ 566 (TestResultFile_Format)(0), // 0: luci.resultsink.v1.TestResultFile.Format 567 (*TestResult)(nil), // 1: luci.resultsink.v1.TestResult 568 (*Artifact)(nil), // 2: luci.resultsink.v1.Artifact 569 (*TestResultFile)(nil), // 3: luci.resultsink.v1.TestResultFile 570 nil, // 4: luci.resultsink.v1.TestResult.ArtifactsEntry 571 (v1.TestStatus)(0), // 5: luci.resultdb.v1.TestStatus 572 (*timestamppb.Timestamp)(nil), // 6: google.protobuf.Timestamp 573 (*durationpb.Duration)(nil), // 7: google.protobuf.Duration 574 (*v1.StringPair)(nil), // 8: luci.resultdb.v1.StringPair 575 (*v1.TestMetadata)(nil), // 9: luci.resultdb.v1.TestMetadata 576 (*v1.FailureReason)(nil), // 10: luci.resultdb.v1.FailureReason 577 (*v1.Variant)(nil), // 11: luci.resultdb.v1.Variant 578 (*structpb.Struct)(nil), // 12: google.protobuf.Struct 579 } 580 var file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_depIdxs = []int32{ 581 5, // 0: luci.resultsink.v1.TestResult.status:type_name -> luci.resultdb.v1.TestStatus 582 6, // 1: luci.resultsink.v1.TestResult.start_time:type_name -> google.protobuf.Timestamp 583 7, // 2: luci.resultsink.v1.TestResult.duration:type_name -> google.protobuf.Duration 584 8, // 3: luci.resultsink.v1.TestResult.tags:type_name -> luci.resultdb.v1.StringPair 585 4, // 4: luci.resultsink.v1.TestResult.artifacts:type_name -> luci.resultsink.v1.TestResult.ArtifactsEntry 586 9, // 5: luci.resultsink.v1.TestResult.test_metadata:type_name -> luci.resultdb.v1.TestMetadata 587 10, // 6: luci.resultsink.v1.TestResult.failure_reason:type_name -> luci.resultdb.v1.FailureReason 588 11, // 7: luci.resultsink.v1.TestResult.variant:type_name -> luci.resultdb.v1.Variant 589 12, // 8: luci.resultsink.v1.TestResult.properties:type_name -> google.protobuf.Struct 590 0, // 9: luci.resultsink.v1.TestResultFile.format:type_name -> luci.resultsink.v1.TestResultFile.Format 591 2, // 10: luci.resultsink.v1.TestResult.ArtifactsEntry.value:type_name -> luci.resultsink.v1.Artifact 592 11, // [11:11] is the sub-list for method output_type 593 11, // [11:11] is the sub-list for method input_type 594 11, // [11:11] is the sub-list for extension type_name 595 11, // [11:11] is the sub-list for extension extendee 596 0, // [0:11] is the sub-list for field type_name 597 } 598 599 func init() { file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_init() } 600 func file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_init() { 601 if File_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto != nil { 602 return 603 } 604 if !protoimpl.UnsafeEnabled { 605 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 606 switch v := v.(*TestResult); i { 607 case 0: 608 return &v.state 609 case 1: 610 return &v.sizeCache 611 case 2: 612 return &v.unknownFields 613 default: 614 return nil 615 } 616 } 617 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 618 switch v := v.(*Artifact); i { 619 case 0: 620 return &v.state 621 case 1: 622 return &v.sizeCache 623 case 2: 624 return &v.unknownFields 625 default: 626 return nil 627 } 628 } 629 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 630 switch v := v.(*TestResultFile); i { 631 case 0: 632 return &v.state 633 case 1: 634 return &v.sizeCache 635 case 2: 636 return &v.unknownFields 637 default: 638 return nil 639 } 640 } 641 } 642 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes[1].OneofWrappers = []interface{}{ 643 (*Artifact_FilePath)(nil), 644 (*Artifact_Contents)(nil), 645 (*Artifact_GcsUri)(nil), 646 } 647 type x struct{} 648 out := protoimpl.TypeBuilder{ 649 File: protoimpl.DescBuilder{ 650 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 651 RawDescriptor: file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDesc, 652 NumEnums: 1, 653 NumMessages: 4, 654 NumExtensions: 0, 655 NumServices: 0, 656 }, 657 GoTypes: file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_goTypes, 658 DependencyIndexes: file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_depIdxs, 659 EnumInfos: file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_enumTypes, 660 MessageInfos: file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_msgTypes, 661 }.Build() 662 File_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto = out.File 663 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_rawDesc = nil 664 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_goTypes = nil 665 file_go_chromium_org_luci_resultdb_sink_proto_v1_test_result_proto_depIdxs = nil 666 }