Skip to content

Commit 3a1c61e

Browse files
committed
Add alertmanger utf8 e2e test case
Signed-off-by: SungJin1212 <[email protected]>
1 parent ebbc63b commit 3a1c61e

File tree

1 file changed

+58
-0
lines changed

1 file changed

+58
-0
lines changed

integration/alertmanager_test.go

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,64 @@ const simpleAlertmanagerConfig = `route:
3232
receivers:
3333
- name: dummy`
3434

35+
const utf8AlertmanagerConfig = `route:
36+
receiver: dummy
37+
group_by: [group.test.🙂]
38+
receivers:
39+
- name: dummy`
40+
41+
func TestAlertmanager_UTF8(t *testing.T) {
42+
s, err := e2e.NewScenario(networkName)
43+
require.NoError(t, err)
44+
defer s.Close()
45+
46+
flags := mergeFlags(AlertmanagerFlags(), AlertmanagerS3Flags())
47+
48+
minio := e2edb.NewMinio(9000, alertsBucketName)
49+
require.NoError(t, s.StartAndWaitReady(minio))
50+
51+
alertmanager := e2ecortex.NewAlertmanager(
52+
"alertmanager",
53+
flags,
54+
"",
55+
)
56+
57+
require.NoError(t, s.StartAndWaitReady(alertmanager))
58+
59+
c, err := e2ecortex.NewClient("", "", alertmanager.HTTPEndpoint(), "", "user-1")
60+
require.NoError(t, err)
61+
62+
ctx := context.Background()
63+
64+
err = c.SetAlertmanagerConfig(ctx, utf8AlertmanagerConfig, map[string]string{})
65+
require.NoError(t, err)
66+
67+
require.NoError(t, alertmanager.WaitSumMetricsWithOptions(e2e.Equals(1), []string{"cortex_alertmanager_config_last_reload_successful"}, e2e.WaitMissingMetrics))
68+
require.NoError(t, alertmanager.WaitSumMetricsWithOptions(e2e.Greater(0), []string{"cortex_alertmanager_config_hash"}, e2e.WaitMissingMetrics))
69+
70+
silenceId, err := c.CreateSilence(ctx, types.Silence{
71+
Matchers: amlabels.Matchers{
72+
{Name: "silences.name.🙂", Value: "silences.value.🙂"},
73+
},
74+
Comment: "test silences",
75+
StartsAt: time.Now(),
76+
EndsAt: time.Now().Add(time.Minute),
77+
})
78+
require.NoError(t, err)
79+
require.NotEmpty(t, silenceId)
80+
require.NoError(t, alertmanager.WaitSumMetrics(e2e.Equals(1), "cortex_alertmanager_silences"))
81+
82+
err = c.SendAlertToAlermanager(ctx, &model.Alert{
83+
Labels: model.LabelSet{
84+
"alert.name.🙂": "alert.value.🙂",
85+
},
86+
StartsAt: time.Now(),
87+
EndsAt: time.Now().Add(time.Minute),
88+
})
89+
require.NoError(t, err)
90+
require.NoError(t, alertmanager.WaitSumMetrics(e2e.Equals(1), "cortex_alertmanager_alerts_received_total"))
91+
}
92+
3593
func TestAlertmanager(t *testing.T) {
3694
s, err := e2e.NewScenario(networkName)
3795
require.NoError(t, err)

0 commit comments

Comments
 (0)