Skip to content

Commit 1290e87

Browse files
authored
Merge branch 'main' into PMM-7-tests-code-housekeeping
2 parents 0c6a145 + 58dc45c commit 1290e87

12 files changed

+76
-80
lines changed

tests/QAN/common_test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Feature('QAN common').retry(1);
55

66
Before(async ({ I, qanPage }) => {
77
await I.Authorize();
8-
I.amOnPage(qanPage.url);
8+
I.amOnPage(I.buildUrlWithParams(qanPage.clearUrl, { from: 'now-1h' }));
99
});
1010

1111
Scenario(

tests/QAN/details_test.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -106,9 +106,9 @@ Scenario(
106106
Scenario(
107107
'PMM-T13 - Check Explain and Example for supported DBs - mongodb @qan',
108108
async ({
109-
I, qanOverview, qanFilters, qanDetails,
109+
I, qanPage, qanOverview, qanFilters, qanDetails,
110110
}) => {
111-
await qanFilters.applyFilter('mongodb');
111+
I.amOnPage(I.buildUrlWithParams(qanPage.clearUrl, { service_name: 'rs101', from: 'now-1h' }));
112112
I.waitForElement(qanOverview.elements.querySelector, 30);
113113
qanOverview.selectRow(1);
114114
qanFilters.waitForFiltersToLoad();
@@ -128,7 +128,7 @@ Scenario(
128128
qanOverview.selectRow(1);
129129
qanFilters.waitForFiltersToLoad();
130130
qanDetails.checkExplainTab();
131-
await qanFilters.applyFilter('mongodb');
131+
await qanFilters.applyFilter('rs101');
132132
I.waitForElement(qanOverview.elements.querySelector, 30);
133133
qanOverview.selectRow(1);
134134

tests/QAN/filters_test.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ const assert = require('assert');
22

33
const shortCutTests = new DataTable(['type', 'dashboard', 'shortcutLink', 'filter']);
44

5-
shortCutTests.add(['Cluster', 'MongoDB Cluster Summary', 'graph/d/mongodb-cluster-summary/mongodb-cluster-summary', 'mongodb_node_cluster']);
5+
shortCutTests.add(['Cluster', 'MongoDB Cluster Summary', 'graph/d/mongodb-cluster-summary/mongodb-cluster-summary', 'replicaset']);
66
shortCutTests.add(['Replication Set', 'MySQL Replication Summary', 'graph/d/mysql-replicaset-summary/mysql-replication-summary', 'ps-repl1']);
77
shortCutTests.add(['Node Name', 'Node Summary', 'graph/d/node-instance-summary/node-summary?var-node_name=pmm-server', 'pmm-server']);
8-
shortCutTests.add(['Service Name', 'MongoDB Instance Summary', 'graph/d/mongodb-instance-summary/mongodb-instance-summary', 'mongodb_rs1_2']);
8+
shortCutTests.add(['Service Name', 'MongoDB Instance Summary', 'graph/d/mongodb-instance-summary/mongodb-instance-summary', 'rs101']);
99

1010
Feature('QAN filters').retry(1);
1111
// filterToApply - filter witch we check, searchValue - value to get zero search result

tests/QAN/pagination_test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Feature('QAN pagination');
22

33
Before(async ({ I, qanPage, qanOverview }) => {
44
await I.Authorize();
5-
I.amOnPage(qanPage.url);
5+
I.amOnPage(I.buildUrlWithParams(qanPage.clearUrl, { from: 'now-1h' }));
66
qanOverview.waitForOverviewLoaded();
77
});
88

tests/configuration/pages/pmmInventoryPage.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ module.exports = {
3636
inventoryTableRows: locate('tr').after('table'),
3737
inventoryTableRowCount: (count) => locate('span').withText(`${count}`),
3838
kebabMenu: (serviceName) => `${service(serviceName)}//ancestor::tr//button[@data-testid="dropdown-menu-toggle"]`,
39-
mongoServiceName: locate('td').withText('mongodb'),
39+
mongoServiceName: locate('td').withText('rs10'),
4040
mysqlServiceName: locate('td').withText('ms-single'),
4141
// cannot be changed to locate because it's failing in I.waitForVisible()
4242
nodesLink: locate('[role="tablist"] a').withText('Nodes').withAttr({ 'aria-label': 'Tab Nodes' }),

tests/configuration/pages/pmmSettingsPage.js

+1-8
Original file line numberDiff line numberDiff line change
@@ -556,14 +556,7 @@ module.exports = {
556556
},
557557

558558
async verifySettingsValue(field, expectedValue) {
559-
I.waitForElement(field, 30);
560-
const fieldActualValue = await I.grabValueFrom(field);
561-
562-
assert.equal(
563-
expectedValue,
564-
fieldActualValue,
565-
`The Value for Setting ${field} is not the same as expected Value ${expectedValue}, value found was ${fieldActualValue}`,
566-
);
559+
I.waitForValue(field, expectedValue, 30);
567560
},
568561

569562
async verifyTooltip(tooltipObj) {

tests/configuration/verifyPMMSettingsPageElements_test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -191,4 +191,4 @@ Scenario('@PMM-T1866 - Verify if public address has an port assigned and followi
191191
I.click(pmmSettingsPage.fields.applyButton);
192192
I.dontSeeElement(pmmSettingsPage.fields.errorPopUpElement);
193193
await pmmSettingsPage.verifySettingsValue(pmmSettingsPage.fields.dataRetentionInput, '1');
194-
});
194+
}).retry(1);

tests/configuration/verifyPMMSettingsPageFunctionality_test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -358,7 +358,7 @@ Scenario(
358358
`Expected the Public Address to be saved and Match ${publicAddressValue}`,
359359
);
360360
},
361-
).retry(1);
361+
).retry(2);
362362

363363
Scenario(
364364
'PMM-T254 ensure Advisors are on by default @instances',

tests/metrics/verifyMongoDBCollectionFlags_test.js

+57-53
Large diffs are not rendered by default.

tests/pages/api/inventoryAPI.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -227,27 +227,27 @@ module.exports = {
227227

228228
switch (agentType) {
229229
case 'mongodb':
230-
agent_id = (await I.verifyCommand(`pmm-admin inventory add agent mongodb-exporter --password=${dbDetails.password} --push-metrics ${logLvlFlag} ${dbDetails.pmm_agent_id} ${dbDetails.service_id} ${dbDetails.username} | grep "Agent ID" | grep -v "PMM-Agent ID" | awk -F " " '{print $4}'`)).trim();
230+
agent_id = (await I.verifyCommand(`docker exec ${dbDetails.container_name} pmm-admin inventory add agent mongodb-exporter --password=${dbDetails.password} --push-metrics ${logLvlFlag} ${dbDetails.pmm_agent_id} ${dbDetails.service_id} ${dbDetails.username} | grep "Agent ID" | grep -v "PMM-Agent ID" | awk -F " " '{print $4}'`)).trim();
231231
output = await this.apiGetAgentDetailsViaAgentId(agent_id);
232232
log_level = output.data.mongodb_exporter.log_level;
233233
await grafanaAPI.waitForMetric('mongodb_up', [{ type: 'agent_id', value: agent_id }], 90);
234234
I.assertEqual(log_level, logLevel || 'warn', `Was expecting Mongo Exporter for service ${dbDetails.service_name} added again via inventory command and log level to have ${logLevel || 'warn'} set`);
235235
break;
236236
case 'node':
237-
agent_id = (await I.verifyCommand(`pmm-admin inventory add agent node-exporter --push-metrics ${logLvlFlag} ${dbDetails.pmm_agent_id} | grep "Agent ID" | grep -v "PMM-Agent ID" | awk -F " " '{print $4}'`)).trim();
237+
agent_id = (await I.verifyCommand(`docker exec ${dbDetails.container_name} pmm-admin inventory add agent node-exporter --push-metrics ${logLvlFlag} ${dbDetails.pmm_agent_id} | grep "Agent ID" | grep -v "PMM-Agent ID" | awk -F " " '{print $4}'`)).trim();
238238
output = await this.apiGetAgentDetailsViaAgentId(agent_id);
239239
log_level = output.data.node_exporter.log_level;
240240
await grafanaAPI.waitForMetric('node_memory_MemTotal_bytes', [{ type: 'agent_id', value: agent_id }], 90);
241241
assert.ok(log_level === logLevel || 'warn', `Was expecting Node Exporter for service ${dbDetails.service_name} added again via inventory command and log level to have ${logLevel || 'warn'} set`);
242242
break;
243243
case 'mongodb_profiler':
244-
agent_id = (await I.verifyCommand(`pmm-admin inventory add agent qan-mongodb-profiler-agent --password=${dbDetails.password} ${logLvlFlag} ${dbDetails.pmm_agent_id} ${dbDetails.service_id} ${dbDetails.username} | grep "Agent ID" | grep -v "PMM-Agent ID" | awk -F " " '{print $4}'`)).trim();
244+
agent_id = (await I.verifyCommand(`docker exec ${dbDetails.container_name} pmm-admin inventory add agent qan-mongodb-profiler-agent --password=${dbDetails.password} ${logLvlFlag} ${dbDetails.pmm_agent_id} ${dbDetails.service_id} ${dbDetails.username} | grep "Agent ID" | grep -v "PMM-Agent ID" | awk -F " " '{print $4}'`)).trim();
245245
output = await this.apiGetAgentDetailsViaAgentId(agent_id);
246246
log_level = output.data.qan_mongodb_profiler_agent.log_level;
247247

248248
// Wait for Status to change to running
249249
I.wait(10);
250-
await I.verifyCommand(`pmm-admin list | grep mongodb_profiler_agent | grep ${agent_id} | grep ${dbDetails.service_id} | grep "Running"`);
250+
await I.verifyCommand(`docker exec ${dbDetails.container_name} pmm-admin list | grep mongodb_profiler_agent | grep ${agent_id} | grep ${dbDetails.service_id} | grep "Running"`);
251251
assert.ok(log_level === logLevel || 'warn', `Was expecting MongoDB QAN Profile for service ${dbDetails.service_name} added again via inventory command and log level to have ${logLevel || 'warn'} set`);
252252
break;
253253
case 'postgresql':

tests/verifyAnnotations_test.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ const assert = require('assert');
44
const annotation = new DataTable(['annotationName', 'service', 'dashboard', 'service_type']);
55

66
annotation.add(['annotation-for-postgres-server', 'pmm-server', dashboardPage.postgresqlInstanceSummaryDashboard.url, 'POSTGRESQL_SERVICE']);
7-
annotation.add(['annotation-for-mongo', 'mongodb', dashboardPage.mongoDbInstanceSummaryDashboard.url, 'MONGODB_SERVICE']);
7+
annotation.add(['annotation-for-mongo', 'rs10', dashboardPage.mongoDbInstanceSummaryDashboard.url, 'MONGODB_SERVICE']);
88
annotation.add(['annotation-for-postgres', 'PGSQL', dashboardPage.postgresqlInstanceSummaryDashboard.url, 'POSTGRESQL_SERVICE']);
99
annotation.add(['annotation-for-mysql', 'ms-', dashboardPage.mysqlInstanceSummaryDashboard.url, 'MYSQL_SERVICE']);
1010
annotation.add(['mysql-node-name', 'ms-', dashboardPage.nodesCompareDashboard.url, 'MYSQL_SERVICE']);
@@ -56,8 +56,8 @@ Scenario(
5656
I, annotationAPI, pmmInventoryPage,
5757
}) => {
5858
I.amOnPage(pmmInventoryPage.url);
59-
I.waitForVisible(pmmInventoryPage.fields.mysqlServiceName, 10);
60-
const serviceName = await I.grabTextFrom(pmmInventoryPage.fields.mysqlServiceName);
59+
I.waitForVisible(pmmInventoryPage.fields.mongoServiceName, 10);
60+
const serviceName = await I.grabTextFrom(pmmInventoryPage.fields.mongoServiceName);
6161

6262
// wrong node name
6363
await annotationAPI.setAnnotation('wrong-node-name', 'PMM-T878', 'random1', serviceName, 404);

tests/verifyMongodbSharding_test.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,9 @@ Scenario(
88
async ({
99
I,
1010
}) => {
11-
const version = '4.4';
11+
const version = '6.0';
1212
const edition = 'Community';
1313

14-
await I.verifyCommand(`${pmmFrameworkLoader} --mongomagic --with-sharding --pmm2 --mo-version=${version}`);
1514
const containerName = await I.verifyCommand(`docker ps --format "table {{.ID}}\\t{{.Image}}\\t{{.Names}}" | grep 'psmdb.*${version}_sharded' | awk -F " " '{print $3}'`);
1615
const agentId = await I.verifyCommand(`docker exec ${containerName} pmm-admin list | grep "42002" | awk -F " " '{print $4}'`);
1716
const serviceId = await I.verifyCommand(`docker exec ${containerName} pmm-admin list | grep "mongodb_shraded" | awk -F " " '{print $4}'`);

0 commit comments

Comments
 (0)