summaryrefslogtreecommitdiffstats
path: root/src/pybind/mgr/dashboard/frontend/cypress/e2e/cluster/logs.po.ts
blob: 5c34eee5ceef01cd928a19a950f0b4a182c794cd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import { PageHelper } from '../page-helper.po';

export class LogsPageHelper extends PageHelper {
  pages = {
    index: { url: '#/logs', id: 'cd-logs' }
  };

  checkAuditForPoolFunction(poolname: string, poolfunction: string, hour: number, minute: number) {
    this.navigateTo();

    // sometimes the modal from deleting pool is still present at this point.
    // This wait makes sure it isn't
    cy.contains('.modal-dialog', 'Delete Pool').should('not.exist');

    // go to audit logs tab
    cy.contains('.nav-link', 'Audit Logs').click();

    // Enter an earliest time so that no old messages with the same pool name show up
    cy.get('.ngb-tp-input')
      .its(0)
      .then((input) => {
        cy.wrap(input).clear();

        if (hour < 10) cy.wrap(input).type(`${hour}`);
      });

    cy.get('.ngb-tp-input')
      .its(1)
      .then((input) => {
        cy.wrap(input).clear();

        if (minute < 10) cy.wrap(input).type(`${minute}`);
      });

    // Enter the pool name into the filter box
    cy.get('input.form-control.ng-valid').first().clear().type(poolname);

    cy.get('.tab-pane.active')
      .get('.card-body')
      .get('.message')
      .should('contain.text', poolname)
      .and('contain.text', `pool ${poolfunction}`);
  }

  checkAuditForConfigChange(configname: string, setting: string, hour: number, minute: number) {
    this.navigateTo();

    // go to audit logs tab
    cy.contains('.nav-link', 'Audit Logs').click();

    // Enter an earliest time so that no old messages with the same config name show up
    cy.get('.ngb-tp-input')
      .its(0)
      .then((input) => {
        cy.wrap(input).clear();

        if (hour < 10) cy.wrap(input).type(`${hour}`);
      });

    cy.get('.ngb-tp-input')
      .its(1)
      .then((input) => {
        cy.wrap(input).clear();

        if (minute < 10) cy.wrap(input).type(`${minute}`);
      });

    // Enter the config name into the filter box
    cy.get('input.form-control.ng-valid').first().clear().type(configname);

    cy.get('.tab-pane.active')
      .get('.card-body')
      .get('.message')
      .should('contain.text', configname)
      .and('contain.text', setting);
  }
}