Skip to content

Commit ea0dd8b

Browse files
Add functions to mgt-api for selenium
1 parent 1c0539f commit ea0dd8b

24 files changed

+272
-88
lines changed

selenium/.node-xmlhttprequest-sync-88011

Whitespace-only changes.

selenium/bin/components/other-rabbitmq

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,14 @@ start_other_rabbitmq() {
2828
if [[ "$PROFILES_FOR_OTHER" == *"docker"* ]]; then
2929
start_docker_other_rabbitmq
3030
else
31-
start_local_rabbitmq
31+
start_local_other_rabbitmq
3232
fi
3333
}
3434
stop_other_rabbitmq() {
3535
if [[ "$PROFILES_FOR_OTHER" == *"docker"* ]]; then
36-
kill_container_if_exist "$component"
36+
kill_container_if_exist "${OTHER_RABBITMQ_HOSTNAME}"
3737
else
38-
stop_local_rabbitmq
38+
stop_local_other_rabbitmq
3939
fi
4040
}
4141

@@ -44,7 +44,7 @@ save_logs_other_rabbitmq() {
4444
if [[ "$PROFILES_FOR_OTHER" == *"cluster"* ]]; then
4545
docker compose -f $CONF_DIR/rabbitmq/other-compose.yml logs > $LOGS/other-rabbitmq.log
4646
else
47-
save_container_logs "other-rabbitmq"
47+
save_container_logs "${OTHER_RABBITMQ_HOSTNAME}"
4848
fi
4949
fi
5050
}
@@ -129,13 +129,15 @@ start_docker_other_rabbitmq() {
129129
print "> RABBITMQ_TEST_DIR: /var/rabbitmq"
130130

131131
docker run \
132+
--rm \
132133
--detach \
133134
--name ${OTHER_RABBITMQ_HOSTNAME} \
134135
--net ${DOCKER_NETWORK} \
135136
-p 5674:5672 \
136137
-p 5673:5671 \
137138
-p 15674:15672 \
138-
-p 15673:15671 \
139+
-p 15675:15675 \
140+
-p 5552:5552 \
139141
-v $CONF_DIR/other-rabbitmq/:/etc/rabbitmq \
140142
-v $CONF_DIR/other-rabbitmq/imports:/var/rabbitmq/imports \
141143
-v ${TEST_DIR}:/config \

selenium/bin/components/rabbitmq

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,7 @@ start_docker_rabbitmq() {
188188
-p 5671:5671 \
189189
-p 15672:15672 \
190190
-p 15671:15671 \
191+
-p 5551:5551 \
191192
-v $CONF_DIR/rabbitmq/:/etc/rabbitmq \
192193
-v $CONF_DIR/rabbitmq/imports:/var/rabbitmq/imports \
193194
-v ${TEST_DIR}:/config \

selenium/bin/suite_template

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -355,8 +355,8 @@ _test() {
355355
print "> FAKEPORTAL_URL: ${FAKEPORTAL_URL}"
356356
mocha_test_tag=($(md5sum $SELENIUM_ROOT_FOLDER/package.json))
357357

358-
print "> OAUTH_NODE_EXTRA_CA_CERTS: ${OAUTH_NODE_EXTRA_CA_CERTS}"
359-
MOUNT_NODE_EXTRA_CA_CERTS=${TEST_DIR}/${OAUTH_NODE_EXTRA_CA_CERTS}
358+
generate_node_extra_ca_cert
359+
MOUNT_NODE_EXTRA_CA_CERTS=${CONF_DIR}/node_ca_certs.pem
360360
print "> MOUNT_NODE_EXTRA_CA_CERTS: ${MOUNT_NODE_EXTRA_CA_CERTS}"
361361

362362
docker run \
@@ -417,15 +417,15 @@ other_profiles_with_local_or_docker() {
417417
fi
418418
}
419419
generate_env_file() {
420-
begin "Generating env file from profiles ${PROFILES} ..."
420+
begin "Generating env file from profiles: [${PROFILES}] ..."
421421
mkdir -p $CONF_DIR
422422
${BIN_DIR}/gen-env-file "${PROFILES}" $TEST_CONFIG_DIR ${ENV_FILE}.tmp
423423
grep -v '^#' ${ENV_FILE}.tmp > $ENV_FILE
424424
source $ENV_FILE
425425
end "Finished generating env file."
426426
}
427427
generate_other_env_file() {
428-
begin "Generating other env file from profiles ${PROFILES_FOR_OTHER} "
428+
begin "Generating other env file from profiles: [${PROFILES_FOR_OTHER}] "
429429
mkdir -p $CONF_DIR
430430
${BIN_DIR}/gen-env-file "${PROFILES_FOR_OTHER}" $TEST_CONFIG_DIR ${OTHER_ENV_FILE}.tmp
431431
grep -v '^#' ${OTHER_ENV_FILE}.tmp > $OTHER_ENV_FILE
@@ -674,7 +674,7 @@ test_local() {
674674
export SELENIUM_POLLING=${SELENIUM_POLLING:-500}
675675

676676
generate_node_extra_ca_cert
677-
MOUNT_NODE_EXTRA_CA_CERTS=${RABBITMQ_CERTS}/node_ca_certs.pem
677+
MOUNT_NODE_EXTRA_CA_CERTS=${CONF_DIR}/node_ca_certs.pem
678678

679679
print "> SELENIUM_TIMEOUT: ${SELENIUM_TIMEOUT}"
680680
print "> SELENIUM_POLLING: ${SELENIUM_POLLING}"
@@ -738,14 +738,16 @@ save_components_logs() {
738738
end "Finished saving logs"
739739
}
740740
generate_node_extra_ca_cert() {
741-
echo "Generating $RABBITMQ_CERTS/node_ca_certs.pem ..."
742-
rm -f $RABBITMQ_CERTS/node_ca_certs.pem
741+
echo "Generating ${CONF_DIR}/node_ca_certs.pem ..."
742+
rm -f ${CONF_DIR}/node_ca_certs.pem
743743
env | while IFS= read -r line; do
744744
value=${line#*=}
745745
name=${line%%=*}
746+
746747
if [[ $name == *NODE_EXTRA_CA_CERTS ]]
747748
then
748-
cat ${TEST_DIR}/${value} >> $RABBITMQ_CERTS/node_ca_certs.pem
749+
echo "Adding ${TEST_DIR}/${value} to ${CONF_DIR}/node_ca_certs.pem ..."
750+
cat ${TEST_DIR}/${value} >> ${CONF_DIR}/node_ca_certs.pem
749751
fi
750752
done
751753
}

selenium/fakeportal/proxy.js

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
var http = require('http'),
22
httpProxy = require('http-proxy');
3+
const {log, error} = require('./utils.js')
34
const XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest
45

56
const rabbitmq_url = process.env.RABBITMQ_URL || 'http://0.0.0.0:15672/';
@@ -14,7 +15,7 @@ const port = process.env.PORT;
1415
var proxy = httpProxy.createProxyServer({});
1516

1617
proxy.on('proxyReq', function(proxyReq, req, res, options) {
17-
console.log("proxing " + req.url)
18+
log("proxing " + req.url)
1819
if (req.url.endsWith("bootstrap.js")) {
1920
proxyReq.setHeader('Authorization', 'Bearer ' + access_token(client_id, client_secret));
2021
}
@@ -30,7 +31,7 @@ var server = http.createServer(function(req, res) {
3031
target: rabbitmq_url
3132
});
3233
});
33-
console.log("fakeproxy listening on port " + port + ". RABBITMQ_URL=" + rabbitmq_url)
34+
log("fakeproxy listening on port " + port + ". RABBITMQ_URL=" + rabbitmq_url)
3435
server.listen(port);
3536

3637

@@ -51,18 +52,19 @@ function access_token(id, secret) {
5152
'&token_format=jwt' +
5253
'&response_type=token';
5354

54-
console.debug("Sending " + url + " with params "+ params);
55+
log("Sending " + url + " with params "+ params);
5556

5657
req.open('POST', url, false);
5758
req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
5859
req.setRequestHeader('Accept', 'application/json');
5960
req.send(params);
60-
console.log("Ret " + req.status)
61+
log("Ret " + req.status)
6162
if (req.status == 200) {
6263
const token = JSON.parse(req.responseText).access_token;
63-
console.log("Token => " + token)
64+
log("Token => " + token)
6465
return token;
6566
} else {
67+
error("Failed to get access token due to " + req.responseText)
6668
throw new Error(req.status + " : " + req.responseText);
6769
}
6870
}

selenium/test/amqp.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
var container = require('rhea') // https://github.com/amqp/rhea
22
var fs = require('fs');
33
var path = require('path');
4+
const {log, error} = require('./utils.js')
5+
46
var connectionOptions = getConnectionOptions()
57

68
function getAmqpConnectionOptions() {
@@ -28,7 +30,7 @@ function getAmqpsConnectionOptions() {
2830
}
2931
function getConnectionOptions() {
3032
let scheme = process.env.RABBITMQ_AMQP_SCHEME || 'amqp'
31-
console.log("Using AMQP protocol: " + scheme)
33+
log("Using AMQP protocol: " + scheme)
3234
switch(scheme){
3335
case "amqp":
3436
return getAmqpConnectionOptions()

selenium/test/authnz-msg-protocols/amqp10.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
const assert = require('assert')
2-
const { tokenFor, openIdConfiguration } = require('../utils')
2+
const { log, tokenFor, openIdConfiguration } = require('../utils')
33
const { reset, expectUser, expectVhost, expectResource, allow, verifyAll } = require('../mock_http_backend')
44
const { open: openAmqp, once: onceAmqp, on: onAmqp, close: closeAmqp } = require('../amqp')
55

@@ -48,11 +48,11 @@ describe('Having AMQP 1.0 protocol enabled and the following auth_backends: ' +
4848
let oauthProviderUrl = process.env.OAUTH_PROVIDER_URL
4949
let oauthClientId = process.env.OAUTH_CLIENT_ID
5050
let oauthClientSecret = process.env.OAUTH_CLIENT_SECRET
51-
console.log("oauthProviderUrl : " + oauthProviderUrl)
51+
log("oauthProviderUrl : " + oauthProviderUrl)
5252
let openIdConfig = openIdConfiguration(oauthProviderUrl)
53-
console.log("Obtained token_endpoint : " + openIdConfig.token_endpoint)
53+
log("Obtained token_endpoint : " + openIdConfig.token_endpoint)
5454
password = tokenFor(oauthClientId, oauthClientSecret, openIdConfig.token_endpoint)
55-
console.log("Obtained access token : " + password)
55+
log("Obtained access token : " + password)
5656
}
5757
})
5858

@@ -78,7 +78,7 @@ describe('Having AMQP 1.0 protocol enabled and the following auth_backends: ' +
7878
closeAmqp(amqp.connection)
7979
}
8080
} catch (error) {
81-
console.error("Failed to close amqp10 connection due to " + error);
81+
error("Failed to close amqp10 connection due to " + error);
8282
}
8383
})
8484
})

selenium/test/authnz-msg-protocols/mqtt.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
const fs = require('fs')
22
const assert = require('assert')
3-
const { tokenFor, openIdConfiguration } = require('../utils')
3+
const { tokenFor, openIdConfiguration, log } = require('../utils')
44
const { reset, expectUser, expectVhost, expectResource, allow, verifyAll } = require('../mock_http_backend')
55
const mqtt = require('mqtt');
66

@@ -45,9 +45,9 @@ describe('Having MQTT protocol enbled and the following auth_backends: ' + backe
4545
let oauthClientId = process.env.OAUTH_CLIENT_ID
4646
let oauthClientSecret = process.env.OAUTH_CLIENT_SECRET
4747
let openIdConfig = openIdConfiguration(oauthProviderUrl)
48-
console.log("Obtained token_endpoint : " + openIdConfig.token_endpoint)
48+
log("Obtained token_endpoint : " + openIdConfig.token_endpoint)
4949
password = tokenFor(oauthClientId, oauthClientSecret, openIdConfig.token_endpoint)
50-
console.log("Obtained access token : " + password)
50+
log("Obtained access token : " + password)
5151
}
5252
mqttOptions = {
5353
clientId: client_id,

selenium/test/exchanges/management.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
const { By, Key, until, Builder } = require('selenium-webdriver')
22
require('chromedriver')
33
const assert = require('assert')
4-
const { buildDriver, goToHome, captureScreensFor, teardown, doWhile } = require('../utils')
4+
const { buildDriver, goToHome, captureScreensFor, teardown, doWhile, log } = require('../utils')
55

66
const LoginPage = require('../pageobjects/LoginPage')
77
const OverviewPage = require('../pageobjects/OverviewPage')
@@ -56,7 +56,6 @@ describe('Exchange management', function () {
5656
["other", "amq.topic", "topic"]
5757
]
5858

59-
console.log("e :" + actual_table)
6059
assert.deepEqual(actual_table, expected_table)
6160
})
6261

0 commit comments

Comments
 (0)