Commit 35193301 by Emil Hessman Committed by GitHub

Chore: Rewrite test helpers from GoConvey to stdlib (#28919)

parent 367e7b86
......@@ -32,7 +32,7 @@ func TestAlertingDataAccess(t *testing.T) {
Convey("Testing Alerting data access", t, func() {
InitTestDB(t)
testDash := insertTestDashboard("dashboard with alerts", 1, 0, false, "alert")
testDash := insertTestDashboard(t, "dashboard with alerts", 1, 0, false, "alert")
evalData, _ := simplejson.NewJson([]byte(`{"test": "test"}`))
items := []*models.Alert{
{
......@@ -273,7 +273,7 @@ func TestPausingAlerts(t *testing.T) {
Convey("Given an alert", t, func() {
InitTestDB(t)
testDash := insertTestDashboard("dashboard with alerts", 1, 0, false, "alert")
testDash := insertTestDashboard(t, "dashboard with alerts", 1, 0, false, "alert")
alert, _ := insertTestAlert("Alerting title", "Alerting message", testDash.OrgId, testDash.Id, simplejson.New())
stateDateBeforePause := alert.NewStateDate
......
......@@ -13,9 +13,9 @@ func TestDashboardAclDataAccess(t *testing.T) {
Convey("Testing DB", t, func() {
InitTestDB(t)
Convey("Given a dashboard folder and a user", func() {
currentUser := createUser("viewer", "Viewer", false)
savedFolder := insertTestDashboard("1 test dash folder", 1, 0, true, "prod", "webapp")
childDash := insertTestDashboard("2 test dash", 1, savedFolder.Id, false, "prod", "webapp")
currentUser := createUser(t, "viewer", "Viewer", false)
savedFolder := insertTestDashboard(t, "1 test dash folder", 1, 0, true, "prod", "webapp")
childDash := insertTestDashboard(t, "2 test dash", 1, savedFolder.Id, false, "prod", "webapp")
Convey("When adding dashboard permission with userId and teamId set to 0", func() {
err := testHelperUpdateDashboardAcl(savedFolder.Id, models.DashboardAcl{
......
......@@ -16,12 +16,12 @@ func TestDashboardFolderDataAccess(t *testing.T) {
InitTestDB(t)
Convey("Given one dashboard folder with two dashboards and one dashboard in the root folder", func() {
folder := insertTestDashboard("1 test dash folder", 1, 0, true, "prod", "webapp")
dashInRoot := insertTestDashboard("test dash 67", 1, 0, false, "prod", "webapp")
childDash := insertTestDashboard("test dash 23", 1, folder.Id, false, "prod", "webapp")
insertTestDashboard("test dash 45", 1, folder.Id, false, "prod")
folder := insertTestDashboard(t, "1 test dash folder", 1, 0, true, "prod", "webapp")
dashInRoot := insertTestDashboard(t, "test dash 67", 1, 0, false, "prod", "webapp")
childDash := insertTestDashboard(t, "test dash 23", 1, folder.Id, false, "prod", "webapp")
insertTestDashboard(t, "test dash 45", 1, folder.Id, false, "prod")
currentUser := createUser("viewer", "Viewer", false)
currentUser := createUser(t, "viewer", "Viewer", false)
Convey("and no acls are set", func() {
Convey("should return all dashboards", func() {
......@@ -156,13 +156,13 @@ func TestDashboardFolderDataAccess(t *testing.T) {
})
Convey("Given two dashboard folders with one dashboard each and one dashboard in the root folder", func() {
folder1 := insertTestDashboard("1 test dash folder", 1, 0, true, "prod")
folder2 := insertTestDashboard("2 test dash folder", 1, 0, true, "prod")
dashInRoot := insertTestDashboard("test dash 67", 1, 0, false, "prod")
childDash1 := insertTestDashboard("child dash 1", 1, folder1.Id, false, "prod")
childDash2 := insertTestDashboard("child dash 2", 1, folder2.Id, false, "prod")
folder1 := insertTestDashboard(t, "1 test dash folder", 1, 0, true, "prod")
folder2 := insertTestDashboard(t, "2 test dash folder", 1, 0, true, "prod")
dashInRoot := insertTestDashboard(t, "test dash 67", 1, 0, false, "prod")
childDash1 := insertTestDashboard(t, "child dash 1", 1, folder1.Id, false, "prod")
childDash2 := insertTestDashboard(t, "child dash 2", 1, folder2.Id, false, "prod")
currentUser := createUser("viewer", "Viewer", false)
currentUser := createUser(t, "viewer", "Viewer", false)
var rootFolderId int64 = 0
Convey("and one folder is expanded, the other collapsed", func() {
......@@ -246,13 +246,13 @@ func TestDashboardFolderDataAccess(t *testing.T) {
})
Convey("Given two dashboard folders", func() {
folder1 := insertTestDashboard("1 test dash folder", 1, 0, true, "prod")
folder2 := insertTestDashboard("2 test dash folder", 1, 0, true, "prod")
insertTestDashboard("folder in another org", 2, 0, true, "prod")
folder1 := insertTestDashboard(t, "1 test dash folder", 1, 0, true, "prod")
folder2 := insertTestDashboard(t, "2 test dash folder", 1, 0, true, "prod")
insertTestDashboard(t, "folder in another org", 2, 0, true, "prod")
adminUser := createUser("admin", "Admin", true)
editorUser := createUser("editor", "Editor", false)
viewerUser := createUser("viewer", "Viewer", false)
adminUser := createUser(t, "admin", "Admin", true)
editorUser := createUser(t, "editor", "Editor", false)
viewerUser := createUser(t, "viewer", "Viewer", false)
Convey("Admin users", func() {
Convey("Should have write access to all dashboard folders in their org", func() {
......
......@@ -25,10 +25,10 @@ func TestDashboardDataAccess(t *testing.T) {
InitTestDB(t)
Convey("Given saved dashboard", func() {
savedFolder := insertTestDashboard("1 test dash folder", 1, 0, true, "prod", "webapp")
savedDash := insertTestDashboard("test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
insertTestDashboard("test dash 45", 1, savedFolder.Id, false, "prod")
insertTestDashboard("test dash 67", 1, 0, false, "prod", "webapp")
savedFolder := insertTestDashboard(t, "1 test dash folder", 1, 0, true, "prod", "webapp")
savedDash := insertTestDashboard(t, "test dash 23", 1, savedFolder.Id, false, "prod", "webapp")
insertTestDashboard(t, "test dash 45", 1, savedFolder.Id, false, "prod")
insertTestDashboard(t, "test dash 67", 1, 0, false, "prod", "webapp")
Convey("Should return dashboard model", func() {
So(savedDash.Title, ShouldEqual, "test dash 23")
......@@ -104,13 +104,12 @@ func TestDashboardDataAccess(t *testing.T) {
})
Convey("Should be able to delete dashboard", func() {
dash := insertTestDashboard("delete me", 1, 0, false, "delete this")
dash := insertTestDashboard(t, "delete me", 1, 0, false, "delete this")
err := DeleteDashboard(&models.DeleteDashboardCommand{
Id: dash.Id,
OrgId: 1,
})
So(err, ShouldBeNil)
})
......@@ -202,7 +201,7 @@ func TestDashboardDataAccess(t *testing.T) {
})
Convey("Should be able to delete empty folder", func() {
emptyFolder := insertTestDashboard("2 test dash folder", 1, 0, true, "prod", "webapp")
emptyFolder := insertTestDashboard(t, "2 test dash folder", 1, 0, true, "prod", "webapp")
deleteCmd := &models.DeleteDashboardCommand{Id: emptyFolder.Id}
err := DeleteDashboard(deleteCmd)
......@@ -367,7 +366,7 @@ func TestDashboardDataAccess(t *testing.T) {
})
Convey("Given two dashboards, one is starred dashboard by user 10, other starred by user 1", func() {
starredDash := insertTestDashboard("starred dash", 1, 0, false)
starredDash := insertTestDashboard(t, "starred dash", 1, 0, false)
err := StarDashboard(&models.StarDashboardCommand{
DashboardId: starredDash.Id,
UserId: 10,
......@@ -419,8 +418,8 @@ func TestDashboard_SortingOptions(t *testing.T) {
// insertTestDashboard uses GoConvey's assertions. Workaround.
Convey("test with multiple sorting options", t, func() {
InitTestDB(t)
dashB := insertTestDashboard("Beta", 1, 0, false)
dashA := insertTestDashboard("Alfa", 1, 0, false)
dashB := insertTestDashboard(t, "Beta", 1, 0, false)
dashA := insertTestDashboard(t, "Alfa", 1, 0, false)
assert.NotZero(t, dashA.Id)
assert.Less(t, dashB.Id, dashA.Id)
......@@ -442,7 +441,9 @@ func TestDashboard_SortingOptions(t *testing.T) {
})
}
func insertTestDashboard(title string, orgId int64, folderId int64, isFolder bool, tags ...interface{}) *models.Dashboard {
func insertTestDashboard(t *testing.T, title string, orgId int64, folderId int64, isFolder bool, tags ...interface{}) *models.Dashboard {
t.Helper()
cmd := models.SaveDashboardCommand{
OrgId: orgId,
FolderId: folderId,
......@@ -455,7 +456,7 @@ func insertTestDashboard(title string, orgId int64, folderId int64, isFolder boo
}
err := SaveDashboard(&cmd)
So(err, ShouldBeNil)
require.NoError(t, err)
cmd.Result.Data.Set("id", cmd.Result.Id)
cmd.Result.Data.Set("uid", cmd.Result.Uid)
......@@ -481,19 +482,21 @@ func insertTestDashboardForPlugin(title string, orgId int64, folderId int64, isF
return cmd.Result
}
func createUser(name string, role string, isAdmin bool) models.User {
func createUser(t *testing.T, name string, role string, isAdmin bool) models.User {
t.Helper()
setting.AutoAssignOrg = true
setting.AutoAssignOrgId = 1
setting.AutoAssignOrgRole = role
currentUserCmd := models.CreateUserCommand{Login: name, Email: name + "@test.com", Name: "a " + name, IsAdmin: isAdmin}
err := CreateUser(context.Background(), &currentUserCmd)
So(err, ShouldBeNil)
require.NoError(t, err)
q1 := models.GetUserOrgListQuery{UserId: currentUserCmd.Result.Id}
err = GetUserOrgList(&q1)
So(err, ShouldBeNil)
So(q1.Result[0].Role, ShouldEqual, role)
require.NoError(t, err)
require.Equal(t, models.RoleType(role), q1.Result[0].Role)
return currentUserCmd.Result
}
......
......@@ -31,7 +31,7 @@ func TestGetDashboardVersion(t *testing.T) {
InitTestDB(t)
Convey("Get a Dashboard ID and version ID", func() {
savedDash := insertTestDashboard("test dash 26", 1, 0, false, "diff")
savedDash := insertTestDashboard(t, "test dash 26", 1, 0, false, "diff")
query := models.GetDashboardVersionQuery{
DashboardId: savedDash.Id,
......@@ -72,7 +72,7 @@ func TestGetDashboardVersion(t *testing.T) {
func TestGetDashboardVersions(t *testing.T) {
Convey("Testing dashboard versions retrieval", t, func() {
InitTestDB(t)
savedDash := insertTestDashboard("test dash 43", 1, 0, false, "diff-all")
savedDash := insertTestDashboard(t, "test dash 43", 1, 0, false, "diff-all")
Convey("Get all versions for a given Dashboard ID", func() {
query := models.GetDashboardVersionsQuery{DashboardId: savedDash.Id, OrgId: 1}
......@@ -112,7 +112,7 @@ func TestDeleteExpiredVersions(t *testing.T) {
versionsToWrite := 10
setting.DashboardVersionsToKeep = versionsToKeep
savedDash := insertTestDashboard("test dash 53", 1, 0, false, "diff-all")
savedDash := insertTestDashboard(t, "test dash 53", 1, 0, false, "diff-all")
for i := 0; i < versionsToWrite-1; i++ {
updateTestDashboard(savedDash, map[string]interface{}{
"tags": "different-tag",
......
......@@ -284,8 +284,8 @@ func TestAccountDataAccess(t *testing.T) {
So(err, ShouldBeNil)
So(len(query.Result), ShouldEqual, 3)
dash1 := insertTestDashboard("1 test dash", ac1.OrgId, 0, false, "prod", "webapp")
dash2 := insertTestDashboard("2 test dash", ac3.OrgId, 0, false, "prod", "webapp")
dash1 := insertTestDashboard(t, "1 test dash", ac1.OrgId, 0, false, "prod", "webapp")
dash2 := insertTestDashboard(t, "2 test dash", ac3.OrgId, 0, false, "prod", "webapp")
err = testHelperUpdateDashboardAcl(dash1.Id, models.DashboardAcl{DashboardId: dash1.Id, OrgId: ac1.OrgId, UserId: ac3.Id, Permission: models.PERMISSION_EDIT})
So(err, ShouldBeNil)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment