guardian_test.go 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. package sqlstore
  2. import (
  3. "testing"
  4. m "github.com/grafana/grafana/pkg/models"
  5. . "github.com/smartystreets/goconvey/convey"
  6. )
  7. func TestGuardianAccess(t *testing.T) {
  8. Convey("Testing DB", t, func() {
  9. InitTestDB(t)
  10. Convey("Given one dashboard folder with two dashboard and one dashboard in the root folder", func() {
  11. folder := insertTestDashboard("1 test dash folder", 1, 0, true, "prod", "webapp")
  12. // dashInFolder1 := insertTestDashboard("test dash 23", 1, folder.Id, false, "prod", "webapp")
  13. // dashInFolder2 := insertTestDashboard("test dash 45", 1, folder.Id, false, "prod")
  14. dashInRoot := insertTestDashboard("test dash 67", 1, 0, false, "prod", "webapp")
  15. Convey("and no acls are set", func() {
  16. Convey("should return all dashboards", func() {
  17. query := &m.GetAllowedDashboardsQuery{UserId: 1, OrgId: 1, DashList: []int64{folder.Id, dashInRoot.Id}}
  18. err := GetAllowedDashboards(query)
  19. So(err, ShouldBeNil)
  20. So(query.Result[0], ShouldEqual, folder.Id)
  21. So(query.Result[1], ShouldEqual, dashInRoot.Id)
  22. })
  23. })
  24. })
  25. })
  26. }