35d72fccbe
Feature/remove mocks * remove mocks * cleanup db migrations
132 lines
3.1 KiB
Go
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(¤t, 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(¤t, &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(¤t, &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(¤t, &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(¤t, &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(¤t, nil)
|
|
require.NoError(t, err)
|
|
})
|
|
|
|
t.Run("empty", func(t *testing.T) {
|
|
current := collector.Collector{}
|
|
update := SetParams{}
|
|
|
|
err := svc.normalizeCodeVersions(¤t, &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(¤t, &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 = ¤t.MinCleanVersion
|
|
err := svc.normalizeCodeVersions(¤t, &update)
|
|
require.NoError(t, err)
|
|
assert.Nil(t, update.MinCleanVersion)
|
|
})
|
|
}
|