Fixed sql integration test

This commit is contained in:
Torkel Ödegaard 2015-02-23 20:48:43 +01:00
parent 26e4809e2e
commit da41d99aa7
3 changed files with 49 additions and 31 deletions

View File

@ -10,7 +10,7 @@ import (
m "github.com/grafana/grafana/pkg/models" m "github.com/grafana/grafana/pkg/models"
) )
func TestAccountDataAccess(t *testing.T) { func TestDataSourceProxy(t *testing.T) {
Convey("When getting graphite datasource proxy", t, func() { Convey("When getting graphite datasource proxy", t, func() {
ds := m.DataSource{Url: "htttp://graphite:8080", Type: m.DS_GRAPHITE} ds := m.DataSource{Url: "htttp://graphite:8080", Type: m.DS_GRAPHITE}

View File

@ -129,3 +129,21 @@ func (m *AddTableMigration) WithColumn(col *Column) *AddTableMigration {
} }
return m return m
} }
type RenameColumnMigration struct {
MigrationBase
tableName string
oldName string
newName string
}
func (m *RenameColumnMigration) Table(tableName string) *RenameColumnMigration {
m.tableName = tableName
return m
}
func (m *RenameColumnMigration) Rename(oldName string, newName string) *RenameColumnMigration {
m.oldName = oldName
m.newName = newName
return m
}

View File

@ -14,7 +14,7 @@ func TestAccountDataAccess(t *testing.T) {
Convey("Testing Account DB Access", t, func() { Convey("Testing Account DB Access", t, func() {
InitTestDB(t) InitTestDB(t)
Convey("Given single account mode", func() { Convey("Given single org mode", func() {
setting.SingleOrgMode = true setting.SingleOrgMode = true
setting.DefaultOrgName = "test" setting.DefaultOrgName = "test"
setting.DefaultOrgRole = "Viewer" setting.DefaultOrgRole = "Viewer"
@ -28,10 +28,10 @@ func TestAccountDataAccess(t *testing.T) {
err = CreateUser(&ac2cmd) err = CreateUser(&ac2cmd)
So(err, ShouldBeNil) So(err, ShouldBeNil)
q1 := m.GetUserAccountsQuery{UserId: ac1cmd.Result.Id} q1 := m.GetUserOrgListQuery{UserId: ac1cmd.Result.Id}
q2 := m.GetUserAccountsQuery{UserId: ac2cmd.Result.Id} q2 := m.GetUserOrgListQuery{UserId: ac2cmd.Result.Id}
GetUserAccounts(&q1) GetUserOrgList(&q1)
GetUserAccounts(&q2) GetUserOrgList(&q2)
So(q1.Result[0].OrgId, ShouldEqual, q2.Result[0].OrgId) So(q1.Result[0].OrgId, ShouldEqual, q2.Result[0].OrgId)
So(q1.Result[0].Role, ShouldEqual, "Viewer") So(q1.Result[0].Role, ShouldEqual, "Viewer")
@ -70,14 +70,14 @@ func TestAccountDataAccess(t *testing.T) {
So(query.Result[1].Email, ShouldEqual, "ac2@test.com") So(query.Result[1].Email, ShouldEqual, "ac2@test.com")
}) })
Convey("Given an added account user", func() { Convey("Given an added org user", func() {
cmd := m.AddAccountUserCommand{ cmd := m.AddOrgUserCommand{
AccountId: ac1.AccountId, OrgId: ac1.OrgId,
UserId: ac2.Id, UserId: ac2.Id,
Role: m.ROLE_VIEWER, Role: m.ROLE_VIEWER,
} }
err := AddAccountUser(&cmd) err := AddOrgUser(&cmd)
Convey("Should have been saved without error", func() { Convey("Should have been saved without error", func() {
So(err, ShouldBeNil) So(err, ShouldBeNil)
}) })
@ -88,54 +88,54 @@ func TestAccountDataAccess(t *testing.T) {
So(err, ShouldBeNil) So(err, ShouldBeNil)
So(query.Result.Email, ShouldEqual, "ac2@test.com") So(query.Result.Email, ShouldEqual, "ac2@test.com")
So(query.Result.AccountId, ShouldEqual, ac2.AccountId) So(query.Result.OrgId, ShouldEqual, ac2.OrgId)
So(query.Result.Name, ShouldEqual, "ac2 name") So(query.Result.Name, ShouldEqual, "ac2 name")
So(query.Result.Login, ShouldEqual, "ac2") So(query.Result.Login, ShouldEqual, "ac2")
So(query.Result.AccountRole, ShouldEqual, "Admin") So(query.Result.OrgRole, ShouldEqual, "Admin")
So(query.Result.AccountName, ShouldEqual, "ac2@test.com") So(query.Result.OrgName, ShouldEqual, "ac2@test.com")
So(query.Result.IsGrafanaAdmin, ShouldBeTrue) So(query.Result.IsGrafanaAdmin, ShouldBeTrue)
}) })
Convey("Can get user accounts", func() { Convey("Can get user organizations", func() {
query := m.GetUserAccountsQuery{UserId: ac2.Id} query := m.GetUserOrgListQuery{UserId: ac2.Id}
err := GetUserAccounts(&query) err := GetUserOrgList(&query)
So(err, ShouldBeNil) So(err, ShouldBeNil)
So(len(query.Result), ShouldEqual, 2) So(len(query.Result), ShouldEqual, 2)
}) })
Convey("Can get account users", func() { Convey("Can get organization users", func() {
query := m.GetAccountUsersQuery{AccountId: ac1.AccountId} query := m.GetOrgUsersQuery{OrgId: ac1.OrgId}
err := GetAccountUsers(&query) err := GetOrgUsers(&query)
So(err, ShouldBeNil) So(err, ShouldBeNil)
So(len(query.Result), ShouldEqual, 2) So(len(query.Result), ShouldEqual, 2)
So(query.Result[0].Role, ShouldEqual, "Admin") So(query.Result[0].Role, ShouldEqual, "Admin")
}) })
Convey("Can set using account", func() { Convey("Can set using org", func() {
cmd := m.SetUsingAccountCommand{UserId: ac2.Id, AccountId: ac1.Id} cmd := m.SetUsingOrgCommand{UserId: ac2.Id, OrgId: ac1.Id}
err := SetUsingAccount(&cmd) err := SetUsingOrg(&cmd)
So(err, ShouldBeNil) So(err, ShouldBeNil)
Convey("SignedInUserQuery with a different account", func() { Convey("SignedInUserQuery with a different org", func() {
query := m.GetSignedInUserQuery{UserId: ac2.Id} query := m.GetSignedInUserQuery{UserId: ac2.Id}
err := GetSignedInUser(&query) err := GetSignedInUser(&query)
So(err, ShouldBeNil) So(err, ShouldBeNil)
So(query.Result.AccountId, ShouldEqual, ac1.Id) So(query.Result.OrgId, ShouldEqual, ac1.Id)
So(query.Result.Email, ShouldEqual, "ac2@test.com") So(query.Result.Email, ShouldEqual, "ac2@test.com")
So(query.Result.Name, ShouldEqual, "ac2 name") So(query.Result.Name, ShouldEqual, "ac2 name")
So(query.Result.Login, ShouldEqual, "ac2") So(query.Result.Login, ShouldEqual, "ac2")
So(query.Result.AccountName, ShouldEqual, "ac1@test.com") So(query.Result.OrgName, ShouldEqual, "ac1@test.com")
So(query.Result.AccountRole, ShouldEqual, "Viewer") So(query.Result.OrgRole, ShouldEqual, "Viewer")
}) })
}) })
Convey("Cannot delete last admin account user", func() { Convey("Cannot delete last admin account user", func() {
cmd := m.RemoveAccountUserCommand{AccountId: ac1.AccountId, UserId: ac1.Id} cmd := m.RemoveOrgUserCommand{OrgId: ac1.OrgId, UserId: ac1.Id}
err := RemoveAccountUser(&cmd) err := RemoveOrgUser(&cmd)
So(err, ShouldEqual, m.ErrLastAccountAdmin) So(err, ShouldEqual, m.ErrLastOrgAdmin)
}) })
}) })
}) })