MCPcopy Index your code
hub / github.com/coder/coder / Test_splitTaskIdentifier

Function Test_splitTaskIdentifier

codersdk/aitasks_internal_test.go:10–75  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

8)
9
10func Test_splitTaskIdentifier(t *testing.T) {
11 t.Parallel()
12
13 tests := []struct {
14 name string
15 identifier string
16 expectedOwner string
17 expectedTask string
18 expectErr bool
19 }{
20 {
21 name: "bare task name",
22 identifier: "mytask",
23 expectedOwner: Me,
24 expectedTask: "mytask",
25 expectErr: false,
26 },
27 {
28 name: "owner/task format",
29 identifier: "alice/her-task",
30 expectedOwner: "alice",
31 expectedTask: "her-task",
32 expectErr: false,
33 },
34 {
35 name: "uuid/task format",
36 identifier: "550e8400-e29b-41d4-a716-446655440000/task1",
37 expectedOwner: "550e8400-e29b-41d4-a716-446655440000",
38 expectedTask: "task1",
39 expectErr: false,
40 },
41 {
42 name: "owner/uuid format",
43 identifier: "alice/3abe1dcf-cd87-4078-8b54-c0e2058ad2e2",
44 expectedOwner: "alice",
45 expectedTask: "3abe1dcf-cd87-4078-8b54-c0e2058ad2e2",
46 expectErr: false,
47 },
48 {
49 name: "too many slashes",
50 identifier: "owner/task/extra",
51 expectErr: true,
52 },
53 {
54 name: "empty parts acceptable",
55 identifier: "/task",
56 expectedOwner: "",
57 expectedTask: "task",
58 expectErr: false,
59 },
60 }
61
62 for _, tt := range tests {
63 t.Run(tt.name, func(t *testing.T) {
64 t.Parallel()
65 owner, taskName, err := splitTaskIdentifier(tt.identifier)
66 if tt.expectErr {
67 require.Error(t, err)

Callers

nothing calls this directly

Calls 4

splitTaskIdentifierFunction · 0.85
RunMethod · 0.65
ErrorMethod · 0.45
EqualMethod · 0.45

Tested by

no test coverage detected