Skip to content

Commit

Permalink
fix tests
Browse files Browse the repository at this point in the history
  • Loading branch information
nchaulet committed Apr 28, 2023
1 parent 4bedae7 commit e792067
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 5 deletions.
19 changes: 14 additions & 5 deletions x-pack/plugins/fleet/cypress/e2e/agents/agent_list.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import { createAgentDoc } from '../../tasks/agents';
import { setupFleetServer } from '../../tasks/fleet_server';
import { deleteFleetServerDocs, deleteAgentDocs, cleanupAgentPolicies } from '../../tasks/cleanup';
import type { CreateAgentPolicyRequest } from '../../../common/types';
import { setUISettings } from '../../tasks/ui_settings';

const createAgentDocs = (kibanaVersion: string) => [
createAgentDoc('agent-1', 'policy-1'), // this agent will have upgrade available
Expand Down Expand Up @@ -86,6 +87,7 @@ describe('View agents list', () => {
deleteAgentDocs(true);
cleanupAgentPolicies();
setupFleetServer();
setUISettings('hideAgentActivityTour', true);

cy.getKibanaVersion().then((version) => {
docs = createAgentDocs(version);
Expand Down Expand Up @@ -118,6 +120,7 @@ describe('View agents list', () => {
other: 0,
events: 0,
});
cy.intercept('GET', /\/api\/fleet\/agents/).as('getAgents');
});

describe('Agent filter suggestions', () => {
Expand Down Expand Up @@ -204,13 +207,15 @@ describe('View agents list', () => {
cy.get('button').contains('Updating').click();
cy.get('button').contains('Offline').click();
cy.getBySel(FLEET_AGENT_LIST_PAGE.STATUS_FILTER).click();
cy.wait('@getAgents');
};
it('should filter on healthy (16 result)', () => {
cy.visit('/app/fleet/agents');
clearFilters();
cy.getBySel(FLEET_AGENT_LIST_PAGE.STATUS_FILTER).click();

cy.get('button').contains('Healthy').click();
cy.wait('@getAgents');

assertTableContainsNAgents(18);
cy.getBySel(FLEET_AGENT_LIST_PAGE.TABLE).contains('agent-1');
Expand All @@ -222,6 +227,7 @@ describe('View agents list', () => {
cy.getBySel(FLEET_AGENT_LIST_PAGE.STATUS_FILTER).click();

cy.get('button').contains('Unhealthy').click();
cy.wait('@getAgents');

assertTableContainsNAgents(1);
cy.getBySel(FLEET_AGENT_LIST_PAGE.TABLE).contains('agent-2');
Expand All @@ -244,8 +250,9 @@ describe('View agents list', () => {

cy.getBySel(FLEET_AGENT_LIST_PAGE.STATUS_FILTER).click();

cy.get('button').contains('healthy').click();
cy.get('button').contains('Healthy').click();
cy.get('button').contains('Unhealthy').click();
cy.wait('@getAgents');

assertTableContainsNAgents(18);
cy.getBySel(FLEET_AGENT_LIST_PAGE.TABLE).contains('agent-1');
Expand All @@ -269,6 +276,7 @@ describe('View agents list', () => {
cy.getBySel(FLEET_AGENT_LIST_PAGE.TAGS_FILTER).click();
cy.get('button').contains('tag1').click();
cy.get('button').contains('tag2').click();
cy.wait('@getAgents');

assertTableContainsNAgents(4);
cy.getBySel(FLEET_AGENT_LIST_PAGE.TABLE).contains('agent-3');
Expand Down Expand Up @@ -344,25 +352,26 @@ describe('View agents list', () => {
cy.get('button').contains('Create a new tag "tagtest"').click();
});

it('should allow to bulk reassing agent to another policy', () => {
it('should allow to bulk reassign agent to another policy', () => {
cy.visit('/app/fleet/agents');

cy.getBySel(FLEET_AGENT_LIST_PAGE.POLICY_FILTER).click();

cy.get('button').contains('Agent policy 3').click();
cy.wait('@getAgents');
assertTableContainsNAgents(15);
cy.getBySel(FLEET_AGENT_LIST_PAGE.CHECKBOX_SELECT_ALL).click();
// Trigger a bulk upgrade
cy.getBySel(FLEET_AGENT_LIST_PAGE.BULK_ACTIONS_BUTTON).click();
cy.get('button').contains('Assign to new policy').click();
cy.get('.euiModalBody select').select('Agent policy 4');
cy.get('.euiModalFooter button:enabled').contains('Assign policy').click();

cy.wait('@getAgents');
assertTableIsEmpty();

cy.pause();
// Select new policy is filters
cy.getBySel(FLEET_AGENT_LIST_PAGE.POLICY_FILTER).click();
cy.get('button').contains('Agent policy 4').click();
cy.wait('@getAgents');
assertTableContainsNAgents(15);

// Change back those agents to Agent policy 3
Expand Down
20 changes: 20 additions & 0 deletions x-pack/plugins/fleet/cypress/tasks/ui_settings.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/*
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
* or more contributor license agreements. Licensed under the Elastic License
* 2.0; you may not use this file except in compliance with the Elastic License
* 2.0.
*/

// Create a Fleet server policy
export function setUISettings(settingsKey: string, settingsValue: any) {
cy.request({
method: 'POST',
url: '/api/kibana/settings',
headers: { 'kbn-xsrf': 'xx' },
body: {
changes: {
[settingsKey]: settingsValue,
},
},
});
}

0 comments on commit e792067

Please sign in to comment.