const changeAction = (action: string) => {
const modes = {
add: '/monitoring/silences/add',
- alertAdd: '/monitoring/silences/add/someAlert',
+ alertAdd: '/monitoring/silences/add/alert0',
recreate: '/monitoring/silences/recreate/someExpiredId',
edit: '/monitoring/silences/edit/someNotExpiredId'
};
prometheus = new PrometheusHelper();
prometheusService = TestBed.inject(PrometheusService);
- spyOn(prometheusService, 'getAlerts').and.callFake(() =>
- of([prometheus.createAlert('alert0')])
- );
+ spyOn(prometheusService, 'getAlerts').and.callFake(() => {
+ const name = _.split(router.url, '/').pop();
+ return of([prometheus.createAlert(name)]);
+ });
ifPrometheusSpy = spyOn(prometheusService, 'ifPrometheusConfigured').and.callFake((fn) => fn());
rulesSpy = spyOn(prometheusService, 'getRules').and.callFake(() =>
of({
};
beforeEach(() => {
- spyOn(prometheusService, 'getSilences').and.callFake((p) =>
- of([prometheus.createSilence(p.id)])
- );
+ spyOn(prometheusService, 'getSilences').and.callFake(() => {
+ const id = _.split(router.url, '/').pop();
+ return of([prometheus.createSilence(id)]);
+ });
});
it('should have no special action activate by default', () => {
it('should be in edit action if route includes edit', () => {
params = { id: 'someNotExpiredId' };
expectMode('edit', true, false, 'Edit');
- expect(prometheusService.getSilences).toHaveBeenCalledWith(params);
+ expect(prometheusService.getSilences).toHaveBeenCalled();
expect(component.form.value).toEqual({
comment: `A comment for ${params.id}`,
createdBy: `Creator of ${params.id}`,
it('should be in recreation action if route includes recreate', () => {
params = { id: 'someExpiredId' };
expectMode('recreate', false, true, 'Recreate');
- expect(prometheusService.getSilences).toHaveBeenCalledWith(params);
+ expect(prometheusService.getSilences).toHaveBeenCalled();
expect(component.form.value).toEqual({
comment: `A comment for ${params.id}`,
createdBy: `Creator of ${params.id}`,
});
it('adds matchers based on the label object of the alert with the given id', () => {
- params = { id: 'someAlert' };
+ params = { id: 'alert0' };
expectMode('alertAdd', false, false, 'Create');
expect(prometheusService.getSilences).not.toHaveBeenCalled();
expect(prometheusService.getAlerts).toHaveBeenCalled();