Files
Jay Brown 35d72fccbe Merged in feature/remove-mocks (pull request #202)
Feature/remove mocks

* remove mocks

* cleanup db migrations
2026-01-15 20:39:32 +00:00

132 lines
3.1 KiB
Go

// Package collectorset private tests.
// Note: MinTextVersion has been removed since text extraction is deprecated.
// Note: Mock-based tests have been removed. See remove_texttract_and_mocks_plan.md.
package collectorset
import (
"testing"
"queryorchestration/internal/collector"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestNormalizeActiveVersion(t *testing.T) {
svc := Service{}
t.Run("all nil", func(t *testing.T) {
err := svc.normalizeActiveVersion(nil, nil)
assert.Error(t, err)
})
t.Run("nil update", func(t *testing.T) {
current := collector.Collector{
ActiveVersion: 1,
LatestVersion: 4,
}
err := svc.normalizeActiveVersion(&current, nil)
require.NoError(t, err)
})
t.Run("no update", func(t *testing.T) {
current := collector.Collector{
ActiveVersion: 1,
LatestVersion: 4,
}
update := SetParams{}
err := svc.normalizeActiveVersion(&current, &update)
require.NoError(t, err)
assert.Nil(t, update.ActiveVersion)
})
t.Run("same version", func(t *testing.T) {
version := int32(2)
current := collector.Collector{
ActiveVersion: version,
LatestVersion: 4,
}
update := SetParams{
ActiveVersion: &version,
}
err := svc.normalizeActiveVersion(&current, &update)
require.NoError(t, err)
assert.Nil(t, update.ActiveVersion)
})
t.Run("latest version plus 1", func(t *testing.T) {
current := collector.Collector{
ActiveVersion: 1,
LatestVersion: 4,
}
version := int32(5)
update := SetParams{
ActiveVersion: &version,
}
err := svc.normalizeActiveVersion(&current, &update)
require.NoError(t, err)
assert.Equal(t, version, *update.ActiveVersion)
})
t.Run("latest version plus 2", func(t *testing.T) {
current := collector.Collector{
ActiveVersion: 1,
LatestVersion: 4,
}
version := int32(6)
update := SetParams{
ActiveVersion: &version,
}
err := svc.normalizeActiveVersion(&current, &update)
assert.Error(t, err)
})
}
func TestNormalizeCodeVersions(t *testing.T) {
svc := Service{}
t.Run("all nil", func(t *testing.T) {
err := svc.normalizeCodeVersions(nil, nil)
assert.Error(t, err)
})
t.Run("nil update", func(t *testing.T) {
current := collector.Collector{}
err := svc.normalizeCodeVersions(&current, nil)
require.NoError(t, err)
})
t.Run("empty", func(t *testing.T) {
current := collector.Collector{}
update := SetParams{}
err := svc.normalizeCodeVersions(&current, &update)
require.NoError(t, err)
assert.Nil(t, update.MinCleanVersion)
})
t.Run("valid clean", func(t *testing.T) {
current := collector.Collector{}
update := SetParams{}
cv := int64(1)
update.MinCleanVersion = &cv
err := svc.normalizeCodeVersions(&current, &update)
require.NoError(t, err)
assert.Equal(t, cv, *update.MinCleanVersion)
})
t.Run("current clean", func(t *testing.T) {
current := collector.Collector{
MinCleanVersion: 1,
}
update := SetParams{}
update.MinCleanVersion = &current.MinCleanVersion
err := svc.normalizeCodeVersions(&current, &update)
require.NoError(t, err)
assert.Nil(t, update.MinCleanVersion)
})
}