refactor(documents): rename document owner fields
This commit is contained in:
@@ -87,6 +87,36 @@ func TestAutoMigrateRejectsAmbiguousLegacyAndCurrentTables(t *testing.T) {
|
||||
require.EqualError(t, err, "cannot rename legacy table senlin_agent_users: target table sa_users already exists")
|
||||
}
|
||||
|
||||
func TestRenameLegacyTablesRenamesDocumentOwnerColumns(t *testing.T) {
|
||||
database, err := gorm.Open(sqlite.Open(fmt.Sprintf("file:%s?mode=memory&cache=shared", t.Name())), &gorm.Config{})
|
||||
require.NoError(t, err)
|
||||
require.NoError(t, database.Exec(`
|
||||
CREATE TABLE sa_documents (
|
||||
id integer primary key,
|
||||
created_by integer not null,
|
||||
created_by_identity text
|
||||
)
|
||||
`).Error)
|
||||
require.NoError(t, database.Exec(`
|
||||
INSERT INTO sa_documents (id, created_by, created_by_identity)
|
||||
VALUES (1, 7, 'owner-identity')
|
||||
`).Error)
|
||||
|
||||
require.NoError(t, renameLegacyTables(database))
|
||||
require.False(t, database.Migrator().HasColumn("sa_documents", "created_by"))
|
||||
require.False(t, database.Migrator().HasColumn("sa_documents", "created_by_identity"))
|
||||
require.True(t, database.Migrator().HasColumn("sa_documents", "owner_id"))
|
||||
require.True(t, database.Migrator().HasColumn("sa_documents", "owner_identity"))
|
||||
|
||||
var stored struct {
|
||||
OwnerID uint
|
||||
OwnerIdentity string
|
||||
}
|
||||
require.NoError(t, database.Table("sa_documents").Where("id = ?", 1).Take(&stored).Error)
|
||||
require.Equal(t, uint(7), stored.OwnerID)
|
||||
require.Equal(t, "owner-identity", stored.OwnerIdentity)
|
||||
}
|
||||
|
||||
func projectIdentifiers(projects []SaProject) []string {
|
||||
result := make([]string, 0, len(projects))
|
||||
for _, project := range projects {
|
||||
|
||||
Reference in New Issue
Block a user