Alerting: Add method to provisioning API for obtaining a group and its rules (#51398)
* Generate shell for new route * Propagate path parameters * Implement route logic * Add a couple simple tests * Use NotFound error for not found, avoid returning pointer * Regenerate
This commit is contained in:
@@ -239,6 +239,28 @@ func TestProvisioningApi(t *testing.T) {
|
||||
require.Equal(t, 404, response.Status())
|
||||
})
|
||||
})
|
||||
|
||||
t.Run("alert rule groups", func(t *testing.T) {
|
||||
t.Run("are present, GET returns 200", func(t *testing.T) {
|
||||
sut := createProvisioningSrvSut(t)
|
||||
rc := createTestRequestCtx()
|
||||
insertRule(t, sut, createTestAlertRule("rule", 1))
|
||||
|
||||
response := sut.RouteGetAlertRuleGroup(&rc, "folder-uid", "my-cool-group")
|
||||
|
||||
require.Equal(t, 200, response.Status())
|
||||
})
|
||||
|
||||
t.Run("are missing, GET returns 404", func(t *testing.T) {
|
||||
sut := createProvisioningSrvSut(t)
|
||||
rc := createTestRequestCtx()
|
||||
insertRule(t, sut, createTestAlertRule("rule", 1))
|
||||
|
||||
response := sut.RouteGetAlertRuleGroup(&rc, "folder-uid", "does not exist")
|
||||
|
||||
require.Equal(t, 404, response.Status())
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
func createProvisioningSrvSut(t *testing.T) ProvisioningSrv {
|
||||
@@ -382,6 +404,7 @@ func createTestAlertRule(title string, orgID int64) definitions.AlertRule {
|
||||
},
|
||||
},
|
||||
RuleGroup: "my-cool-group",
|
||||
FolderUID: "folder-uid",
|
||||
For: time.Second * 60,
|
||||
NoDataState: models.OK,
|
||||
ExecErrState: models.OkErrState,
|
||||
|
||||
Reference in New Issue
Block a user