Atlas › Test

EmptyRunID

Exact test identity: go.temporal.io/server/common/links/TestValidate/Activity/EmptyRunID

Package
go.temporal.io/server/common/links
Suite / test hierarchy
TestValidate/Activity/EmptyRunID
Test
EmptyRunID
Introduced at
validator.go ×1 Frontier kind: Joint frontier
Covered ranges
8
Covered lines
11
Covered files
1

Covered source

Expand a file to inspect source; the > gutter marks covered lines.

go.temporal.io/server/common/links/validator.go 11 covered LOC · 8 ranges

Open complete file

12 // populated.
13 // nolint:revive // cognitive-complexity is high but justified to keep each case together for readability.
14 > func Validate(links []*commonpb.Link, maxAllowedLinks, maxSize int) error { validator.go
15 > if len(links) > maxAllowedLinks {
16 return serviceerror.NewInvalidArgumentf("cannot attach more than %d links per request, got %d", maxAllowedLinks, len(links))
17 }
18 > for _, l := range links { validator.go
19 > if l.Size() > maxSize { validator.go
20 return serviceerror.NewInvalidArgumentf("link exceeds allowed size of %d, got %d", maxSize, l.Size())
21 }
22 > switch t := l.Variant.(type) { validator.go
23 case *commonpb.Link_WorkflowEvent_:
24 if t.WorkflowEvent.GetNamespace() == "" {
48 return serviceerror.NewInvalidArgument("nexus operation link must not have an empty run ID field")
49 }
50 > case *commonpb.Link_Activity_: validator.go
51 > if t.Activity.GetNamespace() == "" {
52 return serviceerror.NewInvalidArgument("activity link must not have an empty namespace field")
53 }
54 > if t.Activity.GetActivityId() == "" { validator.go
55 return serviceerror.NewInvalidArgument("activity link must not have an empty activity ID field")
56 }
57 > if t.Activity.GetRunId() == "" { validator.go
58 > return serviceerror.NewInvalidArgument("activity link must not have an empty run ID field") validator.go
59 > }
60 default:
61 return serviceerror.NewInvalidArgument("unsupported link variant")