package schema import "testing" func TestTableGetUpdateableColumns(t *testing.T) { tbl := Table{ Columns: []Column{ {Name: "rowid"}, {Name: "version", Type: "integer", IsPrimaryKey: true}, {Name: "created_at", Type: "integer"}, {Name: "updated_at", Type: "integer"}, {Name: "is_deleted", Type: "integer"}, {Name: "deleted_at", Type: "integer"}, {Name: "owner_id", Type: "integer", IsForeignKey: true}, {Name: "name", Type: "text"}, }, } gotColumns := tbl.GetUpdateableColumns() got := make([]string, 0, len(gotColumns)) for _, col := range gotColumns { got = append(got, col.Name) } want := []string{"updated_at", "owner_id", "name"} if len(got) != len(want) { t.Fatalf("GetUpdateableColumns() = %v, want %v", got, want) } for i := range want { if got[i] != want[i] { t.Fatalf("GetUpdateableColumns() = %v, want %v", got, want) } } }