2023-05-19 23:53:01 +08:00
|
|
|
const { By, Key, until, Builder } = require('selenium-webdriver')
|
|
|
|
require('chromedriver')
|
|
|
|
const assert = require('assert')
|
|
|
|
const { buildDriver, goToHome, captureScreensFor, teardown } = require('../utils')
|
|
|
|
|
|
|
|
const LoginPage = require('../pageobjects/LoginPage')
|
|
|
|
const OverviewPage = require('../pageobjects/OverviewPage')
|
|
|
|
const AdminTab = require('../pageobjects/AdminTab')
|
|
|
|
const LimitsAdminTab = require('../pageobjects/LimitsAdminTab')
|
|
|
|
|
|
|
|
describe('management user with vhosts permissions', function () {
|
|
|
|
let homePage
|
|
|
|
let captureScreen
|
|
|
|
|
|
|
|
before(async function () {
|
|
|
|
driver = buildDriver()
|
|
|
|
await goToHome(driver)
|
|
|
|
login = new LoginPage(driver)
|
|
|
|
overview = new OverviewPage(driver)
|
|
|
|
admin = new AdminTab(driver)
|
|
|
|
limits = new LimitsAdminTab(driver)
|
|
|
|
captureScreen = captureScreensFor(driver, __filename)
|
|
|
|
await login.login('management', 'guest')
|
|
|
|
await overview.isLoaded()
|
|
|
|
})
|
|
|
|
|
2024-01-29 23:31:26 +08:00
|
|
|
it('can access overview tab', async function () {
|
|
|
|
await overview.clickOnOverviewTab()
|
|
|
|
await overview.waitForOverviewTab()
|
2025-04-08 17:06:50 +08:00
|
|
|
assert.ok(await overview.isPopupWarningNotDisplayed())
|
2024-01-29 23:31:26 +08:00
|
|
|
})
|
|
|
|
it('can access connections tab', async function () {
|
|
|
|
await overview.clickOnConnectionsTab()
|
|
|
|
await overview.waitForConnectionsTab()
|
2025-04-08 17:06:50 +08:00
|
|
|
assert.ok(await overview.isPopupWarningNotDisplayed())
|
2024-01-29 23:31:26 +08:00
|
|
|
})
|
|
|
|
it('can access channels tab', async function () {
|
|
|
|
await overview.clickOnChannelsTab()
|
|
|
|
await overview.waitForChannelsTab()
|
2025-04-08 17:06:50 +08:00
|
|
|
assert.ok(await overview.isPopupWarningNotDisplayed())
|
2024-01-29 23:31:26 +08:00
|
|
|
})
|
|
|
|
it('can access exchanges tab', async function () {
|
|
|
|
await overview.clickOnExchangesTab()
|
|
|
|
await overview.waitForExchangesTab()
|
2025-04-08 17:06:50 +08:00
|
|
|
assert.ok(await overview.isPopupWarningNotDisplayed())
|
2024-01-29 23:31:26 +08:00
|
|
|
})
|
|
|
|
it('can access queues and streams tab', async function () {
|
|
|
|
await overview.clickOnQueuesTab()
|
|
|
|
await overview.waitForQueuesTab()
|
2025-04-08 17:06:50 +08:00
|
|
|
assert.ok(await overview.isPopupWarningNotDisplayed())
|
2024-01-29 23:31:26 +08:00
|
|
|
})
|
|
|
|
it('can access limited options in admin tab', async function () {
|
|
|
|
await overview.clickOnAdminTab()
|
|
|
|
await overview.waitForAdminTab()
|
2025-04-08 17:06:50 +08:00
|
|
|
assert.ok(await overview.isPopupWarningNotDisplayed())
|
2024-01-29 23:31:26 +08:00
|
|
|
})
|
|
|
|
|
2023-05-19 23:53:01 +08:00
|
|
|
it('cannot add/update user limits', async function () {
|
|
|
|
await overview.clickOnAdminTab()
|
|
|
|
await admin.clickOnLimits()
|
|
|
|
await limits.list_virtual_host_limits()
|
2024-11-22 16:57:45 +08:00
|
|
|
assert.rejects(await limits.list_user_limits())
|
2023-05-19 23:53:01 +08:00
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
after(async function () {
|
|
|
|
await teardown(driver, this, captureScreen)
|
|
|
|
})
|
|
|
|
})
|