summaryrefslogtreecommitdiffstats
path: root/src/pybind/mgr/dashboard/frontend/cypress/integration/cluster/logs.po.ts
blob: 7efd8a6528a3ea32360196796ced12ac61e32c98 (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
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).clear();

    if (hour < 10) {
      cy.get('.ngb-tp-input').its(0).type('0');
    }
    cy.get('.ngb-tp-input').its(0).type(`${hour}`);

    cy.get('.ngb-tp-input').its(1).clear();
    if (minute < 10) {
      cy.get('.ngb-tp-input').its(1).type('0');
    }
    cy.get('.ngb-tp-input').its(1).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).clear();
    if (hour < 10) {
      cy.get('.ngb-tp-input').its(0).type('0');
    }
    cy.get('.ngb-tp-input').its(0).type(`${hour}`);

    cy.get('.ngb-tp-input').its(1).clear();
    if (minute < 10) {
      cy.get('.ngb-tp-input').its(1).type('0');
    }
    cy.get('.ngb-tp-input').its(1).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);
  }
}