* Remove user from preferences, stars, orguser, team member * Fix lint * Add Delete user from org and dashboard acl * Delete user from user auth * Add DeleteUser to quota * Add test files and adjust user auth store * Rename package in wire for user auth * Import Quota Service interface in other services * do the same in tests * fix lint tests * Fix tests * Add some tests * Rename InsertUser and DeleteUser to InsertOrgUser and DeleteOrgUser * Rename DeleteUser to DeleteByUser in quota * changing a method name in few additional places * Fix in other places * Fix lint * Fix tests * Chore: Split Delete User method * Add fakes for userauth * Add mock for access control Delete User permossion, use interface * Use interface for ream guardian * Add simple fake for dashboard acl * Add go routines, clean up, use interfaces * fix lint * Update pkg/services/user/userimpl/user_test.go Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com> * Update pkg/services/user/userimpl/user_test.go Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com> * Update pkg/services/user/userimpl/user_test.go Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com> * Add wrapper for not service account error * fix indentation * Use fmt for error wrapper Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
84 lines
1.8 KiB
Go
84 lines
1.8 KiB
Go
package orgimpl
|
|
|
|
import (
|
|
"context"
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/grafana/grafana/pkg/services/org"
|
|
"github.com/grafana/grafana/pkg/services/sqlstore"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestIntegrationOrgDataAccess(t *testing.T) {
|
|
if testing.Short() {
|
|
t.Skip("skipping integration test")
|
|
}
|
|
|
|
ss := sqlstore.InitTestDB(t)
|
|
orgStore := sqlStore{
|
|
db: ss,
|
|
dialect: ss.GetDialect(),
|
|
}
|
|
|
|
t.Run("org not found", func(t *testing.T) {
|
|
_, err := orgStore.Get(context.Background(), 1)
|
|
require.Error(t, err, org.ErrOrgNotFound)
|
|
})
|
|
|
|
t.Run("org inserted", func(t *testing.T) {
|
|
_, err := orgStore.Insert(context.Background(), &org.Org{
|
|
Version: 1,
|
|
Name: "test1",
|
|
Created: time.Now(),
|
|
Updated: time.Now(),
|
|
})
|
|
require.NoError(t, err)
|
|
})
|
|
|
|
t.Run("org inserted with next available org ID", func(t *testing.T) {
|
|
orgID, err := orgStore.Insert(context.Background(), &org.Org{
|
|
ID: 55,
|
|
Version: 1,
|
|
Name: "test2",
|
|
Created: time.Now(),
|
|
Updated: time.Now(),
|
|
})
|
|
require.NoError(t, err)
|
|
_, err = orgStore.Get(context.Background(), orgID)
|
|
require.NoError(t, err)
|
|
})
|
|
|
|
t.Run("delete by user", func(t *testing.T) {
|
|
err := orgStore.DeleteUserFromAll(context.Background(), 1)
|
|
require.NoError(t, err)
|
|
})
|
|
}
|
|
|
|
func TestIntegrationOrgUserDataAccess(t *testing.T) {
|
|
if testing.Short() {
|
|
t.Skip("skipping integration test")
|
|
}
|
|
|
|
ss := sqlstore.InitTestDB(t)
|
|
orgUserStore := sqlStore{
|
|
db: ss,
|
|
}
|
|
|
|
t.Run("org user inserted", func(t *testing.T) {
|
|
_, err := orgUserStore.InsertOrgUser(context.Background(), &org.OrgUser{
|
|
ID: 1,
|
|
OrgID: 1,
|
|
UserID: 1,
|
|
Created: time.Now(),
|
|
Updated: time.Now(),
|
|
})
|
|
require.NoError(t, err)
|
|
})
|
|
|
|
t.Run("delete by user", func(t *testing.T) {
|
|
err := orgUserStore.DeleteUserFromAll(context.Background(), 1)
|
|
require.NoError(t, err)
|
|
})
|
|
}
|