fleet/server/datastore/datastore_migrations.go
Zach Wasserman 505d53b02b
Refactor MySQL tests into package mysql (#586)
Moving the tests into the package allows the coverage tool to function properly.
2021-04-05 11:04:53 -07:00

33 lines
769 B
Go

package datastore
import (
"testing"
"github.com/fleetdm/fleet/server/kolide"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func testMigrationStatus(t *testing.T, ds kolide.Datastore) {
if ds.Name() == "inmem" {
t.Skip("inmem is being deprecated, test skipped")
}
require.Nil(t, ds.Drop())
status, err := ds.MigrationStatus()
require.Nil(t, err)
assert.EqualValues(t, kolide.NoMigrationsCompleted, status)
require.Nil(t, ds.MigrateTables())
status, err = ds.MigrationStatus()
require.Nil(t, err)
assert.EqualValues(t, kolide.SomeMigrationsCompleted, status)
require.Nil(t, ds.MigrateData())
status, err = ds.MigrationStatus()
require.Nil(t, err)
assert.EqualValues(t, kolide.AllMigrationsCompleted, status)
}