MCPcopy
hub / github.com/docker/docker-agent / TestResolveSessionID_InMemory

Function TestResolveSessionID_InMemory

pkg/session/store_test.go:1110–1157  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

1108}
1109
1110func TestResolveSessionID_InMemory(t *testing.T) {
1111 t.Parallel()
1112
1113 store := NewInMemorySessionStore()
1114
1115 // Create sessions with known timestamps
1116 baseTime := time.Now()
1117 sessions := []struct {
1118 id string
1119 createdAt time.Time
1120 }{
1121 {"oldest", baseTime.Add(-3 * time.Hour)},
1122 {"middle", baseTime.Add(-2 * time.Hour)},
1123 {"newest", baseTime.Add(-1 * time.Hour)},
1124 }
1125
1126 for _, s := range sessions {
1127 err := store.AddSession(t.Context(), &Session{
1128 ID: s.id,
1129 CreatedAt: s.createdAt,
1130 })
1131 require.NoError(t, err)
1132 }
1133
1134 t.Run("resolves -1 to newest session", func(t *testing.T) {
1135 id, err := ResolveSessionID(t.Context(), store, "-1")
1136 require.NoError(t, err)
1137 assert.Equal(t, "newest", id)
1138 })
1139
1140 t.Run("resolves -2 to middle session", func(t *testing.T) {
1141 id, err := ResolveSessionID(t.Context(), store, "-2")
1142 require.NoError(t, err)
1143 assert.Equal(t, "middle", id)
1144 })
1145
1146 t.Run("returns error for out of range offset", func(t *testing.T) {
1147 _, err := ResolveSessionID(t.Context(), store, "-4")
1148 require.Error(t, err)
1149 assert.Contains(t, err.Error(), "out of range")
1150 })
1151
1152 t.Run("returns non-relative ID unchanged", func(t *testing.T) {
1153 id, err := ResolveSessionID(t.Context(), store, "some-uuid")
1154 require.NoError(t, err)
1155 assert.Equal(t, "some-uuid", id)
1156 })
1157}

Callers

nothing calls this directly

Calls 8

AddSessionMethod · 0.95
NewInMemorySessionStoreFunction · 0.85
ResolveSessionIDFunction · 0.85
NowMethod · 0.80
ContextMethod · 0.80
AddMethod · 0.65
RunMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected