Alerting: Fetch only silenced alerts on the Silences page (#114564)

This commit is contained in:
Alexander Akhmetov
2025-11-28 16:13:02 +01:00
committed by GitHub
parent 0856cac9ad
commit a2e34d2296
2 changed files with 24 additions and 1 deletions
@@ -1,3 +1,4 @@
import { HttpResponse, http } from 'msw';
import { Route, Routes } from 'react-router-dom-v5-compat';
import { render, screen, userEvent, waitFor, within } from 'test/test-utils';
import { byLabelText, byPlaceholderText, byRole, byTestId, byText } from 'testing-library-selector';
@@ -154,6 +155,28 @@ describe('Silences', () => {
TEST_TIMEOUT
);
it(
'fetches silenced alerts with correct filter parameters',
async () => {
let capturedParams: URLSearchParams | undefined;
server.use(
http.get('/api/alertmanager/:datasourceUid/api/v2/alerts', ({ request }) => {
capturedParams = new URL(request.url).searchParams;
return HttpResponse.json([]);
})
);
renderSilences();
await waitFor(() => expect(capturedParams).toBeDefined());
expect(capturedParams?.get('silenced')).toBe('true');
expect(capturedParams?.get('active')).toBe('false');
expect(capturedParams?.get('inhibited')).toBe('false');
},
TEST_TIMEOUT
);
it(
'shows the correct number of silenced alerts',
async () => {
@@ -56,7 +56,7 @@ const SilencesTable = () => {
const { data: alertManagerAlerts = [], isLoading: amAlertsIsLoading } =
alertmanagerApi.endpoints.getAlertmanagerAlerts.useQuery(
{ amSourceName: alertManagerSourceName, filter: { silenced: true, active: true, inhibited: true } },
{ amSourceName: alertManagerSourceName, filter: { silenced: true, active: false, inhibited: false } },
{ ...API_QUERY_OPTIONS, skip: !canPreview }
);