MCPcopy
hub / github.com/riverqueue/river / TestMetadataSet

Function TestMetadataSet

metadata_test.go:12–41  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

10)
11
12func TestMetadataSet(t *testing.T) {
13 t.Parallel()
14
15 t.Run("RejectsReservedPrefix", func(t *testing.T) {
16 t.Parallel()
17
18 ctx := context.WithValue(context.Background(), jobexecutor.ContextKeyMetadataUpdates, map[string]any{})
19
20 err := MetadataSet(ctx, "river:reserved", "value")
21 require.EqualError(t, err, "MetadataSet cannot be used with keys prefixed with `river:`")
22 })
23
24 t.Run("RequiresWorkContext", func(t *testing.T) {
25 t.Parallel()
26
27 err := MetadataSet(context.Background(), "key", "value")
28 require.EqualError(t, err, "MetadataSet must be called within a worker, worker middleware, or work hook")
29 })
30
31 t.Run("SetsValueOnWorkContext", func(t *testing.T) {
32 t.Parallel()
33
34 metadataUpdates := map[string]any{}
35 ctx := context.WithValue(context.Background(), jobexecutor.ContextKeyMetadataUpdates, metadataUpdates)
36
37 err := MetadataSet(ctx, "key", "value")
38 require.NoError(t, err)
39 require.Equal(t, "value", metadataUpdates["key"])
40 })
41}

Callers

nothing calls this directly

Calls 2

MetadataSetFunction · 0.85
RunMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…