def test_list_provider_server_deployments(provider): """Tests deployments list from current Provider for each server between UI, DB and Management system Steps: * Get servers list from UI of provider * Get deployments list for the server * Get deployments list from UI of provider, server * Get deployments list from Database of provider, server * Get deployments list from Database of provider, server * Get deployments list from Management system(Hawkular) of server * Compare size of all the list [UI, Database, Management system] """ servers = MiddlewareServer.servers(provider=provider) assert len(servers) > 0, "There is no server(s) available in UI" for server in get_random_list(servers, ITEMS_LIMIT): ui_deps = _get_deployments_set( MiddlewareDeployment.deployments(provider=provider, server=server)) db_deps = _get_deployments_set( MiddlewareDeployment.deployments_in_db(provider=provider, server=server)) mgmt_deps = _get_deployments_set( MiddlewareDeployment.deployments_in_mgmt(provider=provider, server=server)) assert ui_deps == db_deps == mgmt_deps, \ ("Lists of deployments mismatch! UI:{}, DB:{}, MGMT:{}" .format(ui_deps, db_deps, mgmt_deps))
def test_server_suspend_resume(provider): """Tests server suspend/resume operation on UI Steps: * Get servers list from UI * Chooses Wildfly server from list * Invokes Suspend Server' toolbar operation * Checks that server status is not running in UI, in DB and in MGMT. * Invokes 'Resume Server' toolbar operation * Waits for some time * Checks that server status is running in UI, in DB and in MGMT. """ server_list = MiddlewareServer.servers(provider=provider) for _server in server_list: if _server.product != 'Hawkular': server = _server break assert server, 'Wildfly server was not found in servers list' _check_server_running(server) server.suspend_server() flash.assert_success_message('Suspend initiated for selected server(s)') # enable when HWKINVENT-185 is fixed # _check_server_stopped(server) server.resume_server() flash.assert_success_message('Resume initiated for selected server(s)') _check_server_running(server)
def test_hawkular_reload(provider): """Tests Hawkular server itself reload operation message on UI Steps: * Get servers list from UI * Chooses Hawkular server from list * Invokes 'Reload Server' toolbar operation * Checks that notification message is shown * Checks that server status is running in UI, in DB and in MGMT. * Invokes 'Stop Server' toolbar operation * Checks that notification message is shown * Checks that server status is running in UI, in DB and in MGMT. """ server_list = MiddlewareServer.servers(provider=provider) for _server in server_list: if _server.product == 'Hawkular': server = _server break assert server, 'Hawkular server was not found in servers list' server.reload_server() flash.assert_success_message('Not reloading Hawkular server') _check_server_running(server) server.stop_server() flash.assert_success_message('Not stopping Hawkular server') _check_server_running(server)
def test_hawkular_fail(provider): """Tests Hawkular server itself reload operation message on UI Steps: * Get servers list from UI * Chooses Hawkular server from list * Invokes all 'Power' toolbar operation * Checks that notification message is shown * Checks that server status is running in UI, in DB and in MGMT. """ server_list = MiddlewareServer.servers(provider=provider) for _server in server_list: if _server.product == 'Hawkular': server = _server break assert server, 'Hawkular server was not found in servers list' server.reload_server() flash.assert_success_message('Not reloading the provider') _check_server_running(server) server.stop_server() flash.assert_success_message('Not stopping the provider') _check_server_running(server) server.shutdown_server() flash.assert_success_message('Not shutting down the provider') _check_server_running(server) server.restart_server() flash.assert_success_message('Not restarting the provider') _check_server_running(server) server.suspend_server() flash.assert_success_message('Not suspending the provider') _check_server_running(server) server.resume_server() flash.assert_success_message('Not resuming the provider') _check_server_running(server)
def test_list_provider_server_deployments(provider): """Tests deployments list from current Provider for each server between UI, DB and Management system Steps: * Get servers list from UI of provider * Get deployments list for the server * Get deployments list from UI of provider, server * Get deployments list from Database of provider, server * Get deployments list from Database of provider, server * Get deployments list from Management system(Hawkular) of server * Compare size of all the list [UI, Database, Management system] """ servers = MiddlewareServer.servers(provider=provider) assert len(servers) > 0, "There is no server(s) available in UI" for server in get_random_list(servers, ITEMS_LIMIT): ui_deps = _get_deployments_set( MiddlewareDeployment.deployments(provider=provider, server=server)) db_deps = _get_deployments_set( MiddlewareDeployment.deployments_in_db(provider=provider, server=server)) mgmt_deps = _get_deployments_set( MiddlewareDeployment.deployments_in_mgmt(provider=provider, server=server)) assert ui_deps == db_deps == mgmt_deps, \ ("Lists of deployments mismatch! UI:{}, DB:{}, MGMT:{}" .format(ui_deps, db_deps, mgmt_deps))
def test_server_suspend_resume(provider): """Tests server suspend/resume operation on UI Steps: * Get servers list from UI * Chooses Wildfly server from list * Invokes Suspend Server' toolbar operation * Checks that server status is not running in UI, in DB and in MGMT. * Invokes 'Resume Server' toolbar operation * Waits for some time * Checks that server status is running in UI, in DB and in MGMT. """ server_list = MiddlewareServer.servers(provider=provider) for _server in server_list: if _server.product != 'Hawkular': server = _server break assert server, 'Wildfly server was not found in servers list' _check_server_running(server) server.suspend_server() flash.assert_success_message('Suspend initiated for selected server(s)') # enable when HWKINVENT-185 is fixed # _check_server_stopped(server) server.resume_server() flash.assert_success_message('Resume initiated for selected server(s)') _check_server_running(server)
def get_random_server(provider, load_from="db"): load_from = load_from.lower() if load_from == "ui": servers = MiddlewareServer.servers(provider=provider) elif load_from == "db": servers = MiddlewareServer.servers_in_db(provider=provider) elif load_from == "mgmt": servers = MiddlewareServer.servers_in_mgmt(provider=provider) assert len(servers) > 0, "There is no server(s) available in {}".format(load_from) else: raise RuntimeError("Not supported option: '{}'".format(load_from)) return get_random_list(servers, 1)[0]
def get_random_server(provider, load_from="db"): load_from = load_from.lower() if load_from == "ui": servers = MiddlewareServer.servers(provider=provider) elif load_from == "db": servers = MiddlewareServer.servers_in_db(provider=provider) elif load_from == "mgmt": servers = MiddlewareServer.servers_in_mgmt(provider=provider) assert len(servers) > 0, "There is no server(s) available in {}".format(load_from) else: raise RuntimeError("Not supported option: '{}'".format(load_from)) return get_random_list(servers, 1)[0]
def test_list_server_datasources(): """Gets servers list and tests datasources list for each server Steps: * Get servers list from UI * Get datasources list from UI of server * Get datasources list from Database of server * Compare size of all the list [UI, Database] """ servers = MiddlewareServer.servers() assert len(servers) > 0, "There is no server(s) available in UI" for server in get_random_list(servers, ITEMS_LIMIT): ui_dses = _get_datasources_set(MiddlewareDatasource.datasources(server=server)) db_dses = _get_datasources_set(MiddlewareDatasource.datasources_in_db(server=server)) assert ui_dses == db_dses, \ ("Lists of datasources mismatch! UI:{}, DB:{}".format(ui_dses, db_dses))
def test_list_provider_servers(provider): """Tests servers lists from current Provider between UI, DB and Management system Steps: * Get servers list from UI of provider * Get servers list from Database of provider * Get servers list from Management system(Hawkular) * Compare content of all the list [UI, Database, Management system] """ ui_servers = _get_servers_set(MiddlewareServer.servers(provider=provider)) db_servers = _get_servers_set(MiddlewareServer.servers_in_db(provider=provider)) mgmt_servers = _get_servers_set(MiddlewareServer.servers_in_mgmt(provider=provider)) assert ui_servers == db_servers == mgmt_servers, \ ("Lists of servers mismatch! UI:{}, DB:{}, MGMT:{}" .format(ui_servers, db_servers, mgmt_servers))
def test_list_provider_servers(provider): """Tests servers lists from current Provider between UI, DB and Management system Steps: * Get servers list from UI of provider * Get servers list from Database of provider * Get servers list from Management system(Hawkular) * Compare content of all the list [UI, Database, Management system] """ ui_servers = _get_servers_set(MiddlewareServer.servers(provider=provider)) db_servers = _get_servers_set(MiddlewareServer.servers_in_db(provider=provider)) mgmt_servers = _get_servers_set(MiddlewareServer.servers_in_mgmt(provider=provider)) assert ui_servers == db_servers == mgmt_servers, \ ("Lists of servers mismatch! UI:{}, DB:{}, MGMT:{}" .format(ui_servers, db_servers, mgmt_servers))
def test_list_server_datasources(): """Gets servers list and tests datasources list for each server Steps: * Get servers list from UI * Get datasources list from UI of server * Get datasources list from Database of server * Compare size of all the list [UI, Database] """ servers = MiddlewareServer.servers() assert len(servers) > 0, "There is no server(s) available in UI" for server in get_random_list(servers, ITEMS_LIMIT): ui_dses = _get_datasources_set( MiddlewareDatasource.datasources(server=server)) db_dses = _get_datasources_set( MiddlewareDatasource.datasources_in_db(server=server)) assert ui_dses == db_dses, \ ("Lists of datasources mismatch! UI:{}, DB:{}".format(ui_dses, db_dses))
def test_list_servers(): """Tests servers lists between UI, DB and Management system. Steps: * Get servers list from UI * Get servers list from Database * Get headers from UI * Compare headers from UI with expected headers list * Compare content of all the list [UI, Database, Management system] """ ui_servers = _get_servers_set(MiddlewareServer.servers()) db_servers = _get_servers_set(MiddlewareServer.servers_in_db()) mgmt_servers = _get_servers_set(MiddlewareServer.servers_in_mgmt()) headers = MiddlewareServer.headers() headers_expected = ['Server Name', 'Product', 'Host Name', 'Feed', 'Provider'] assert headers == headers_expected assert ui_servers == db_servers == mgmt_servers, \ ("Lists of servers mismatch! UI:{}, DB:{}, MGMT:{}" .format(ui_servers, db_servers, mgmt_servers))
def test_list_servers(): """Tests servers lists between UI, DB and Management system. Steps: * Get servers list from UI * Get servers list from Database * Get headers from UI * Compare headers from UI with expected headers list * Compare content of all the list [UI, Database, Management system] """ ui_servers = _get_servers_set(MiddlewareServer.servers()) db_servers = _get_servers_set(MiddlewareServer.servers_in_db()) mgmt_servers = _get_servers_set(MiddlewareServer.servers_in_mgmt()) headers = MiddlewareServer.headers() headers_expected = ['Server Name', 'Product', 'Host Name', 'Feed', 'Provider'] assert headers == headers_expected assert ui_servers == db_servers == mgmt_servers, \ ("Lists of servers mismatch! UI:{}, DB:{}, MGMT:{}" .format(ui_servers, db_servers, mgmt_servers))
def test_list_server_group_servers(provider): """Tests servers lists from server groups of domain and checks values between UI, DB and Management system Steps: * Get domains list from UI of provider * Chooses one of domains * Get server groups list from UI of domain * Get servers list from UI of each server group * Get servers list from Database of each server group * @TODO add support of checking in MGMT * Compare content of all the list [UI, Database] """ domain_list = MiddlewareDomain.domains(provider=provider) for domain in get_random_list(domain_list, 1): server_groups = MiddlewareServerGroup.server_groups(domain=domain) for server_group in server_groups: ui_servers = get_servers_set(MiddlewareServer.servers(server_group=server_group)) db_servers = get_servers_set(MiddlewareServer.servers_in_db(server_group=server_group)) assert ui_servers == db_servers, "Lists of servers mismatch! UI:{}, DB:{}".format(ui_servers, db_servers)
def test_server_details(provider): """Tests server details on UI Steps: * Get servers list from UI * Select each server details in UI * Compare selected server UI details with CFME database and MGMT system """ server_list = MiddlewareServer.servers(provider=provider) for server in get_random_list(server_list, 1): srv_ui = server.server(method='ui') srv_db = server.server(method='db') srv_mgmt = srv_ui.server(method='mgmt') assert srv_ui, "Server was not found in UI" assert srv_db, "Server was not found in DB" assert srv_mgmt, "Server was not found in MGMT system" assert srv_ui.name == srv_db.name == srv_mgmt.name, \ ("server name does not match between UI:{}, DB:{}, MGMT:{}" .format(srv_ui.name, srv_db.name, srv_mgmt.name)) srv_db.validate_properties() srv_mgmt.validate_properties()
def test_server_details(provider): """Tests server details on UI Steps: * Get servers list from UI * Select each server details in UI * Compare selected server UI details with CFME database and MGMT system """ server_list = MiddlewareServer.servers(provider=provider) for server in get_random_list(server_list, 1): srv_ui = server.server(method='ui') srv_db = server.server(method='db') srv_mgmt = srv_ui.server(method='mgmt') assert srv_ui, "Server was not found in UI" assert srv_db, "Server was not found in DB" assert srv_mgmt, "Server was not found in MGMT system" assert srv_ui.name == srv_db.name == srv_mgmt.name, \ ("server name does not match between UI:{}, DB:{}, MGMT:{}" .format(srv_ui.name, srv_db.name, srv_mgmt.name)) srv_db.validate_properties() srv_mgmt.validate_properties()
def test_list_server_group_servers(provider): """Tests servers lists from server groups of domain and checks values between UI, DB and Management system Steps: * Get domains list from UI of provider * Chooses one of domains * Get server groups list from UI of domain * Get servers list from UI of each server group * Get servers list from Database of each server group * @TODO add support of checking in MGMT * Compare content of all the list [UI, Database] """ domain_list = MiddlewareDomain.domains(provider=provider) for domain in get_random_list(domain_list, 1): server_groups = MiddlewareServerGroup.server_groups(domain=domain) for server_group in server_groups: ui_servers = get_servers_set(MiddlewareServer.servers(server_group=server_group)) db_servers = get_servers_set(MiddlewareServer.servers_in_db(server_group=server_group)) assert ui_servers == db_servers, \ ("Lists of servers mismatch! UI:{}, DB:{}" .format(ui_servers, db_servers))
def test_server_stop(provider): """Tests server reload operation on UI Steps: * Get servers list from UI * Chooses Wildfly server from list * Invokes 'Stop Server' toolbar operation * Checks that server status is not running in UI, in DB and in MGMT. * Invokes 'Start Server' toolbar operation * Waits for some time * Checks that server status is running in UI, in DB and in MGMT. """ server_list = MiddlewareServer.servers(provider=provider) for _server in server_list: if _server.product != 'Hawkular': server = _server break assert server, 'Wildfly server was not found in servers list' _check_server_running(server) server.stop_server() flash.assert_success_message('Stop initiated for selected server(s)') _check_server_stopped(server) server.start_server() _check_server_running(server)
def test_server_stop(provider): """Tests server reload operation on UI Steps: * Get servers list from UI * Chooses Wildfly server from list * Invokes 'Stop Server' toolbar operation * Checks that server status is not running in UI, in DB and in MGMT. * Invokes 'Start Server' toolbar operation * Waits for some time * Checks that server status is running in UI, in DB and in MGMT. """ server_list = MiddlewareServer.servers(provider=provider) for _server in server_list: if _server.product != 'Hawkular': server = _server break assert server, 'Wildfly server was not found in servers list' _check_server_running(server) server.stop_server() flash.assert_success_message('Stop initiated for selected server(s)') _check_server_stopped(server) server.start_server() _check_server_running(server)
def _get_random_server(provider): servers = MiddlewareServer.servers(provider=provider) assert len(servers) > 0, "There is no server(s) available in UI" return get_random_list(servers, 1)[0]
def get_server(provider, product): for server in MiddlewareServer.servers(provider=provider): if server.product == product: return server else: raise ValueError('{} server was not found in servers list'.format(provider))
def get_random_server(provider): servers = MiddlewareServer.servers(provider=provider) assert len(servers) > 0, "There is no server(s) available in UI" return get_random_list(servers, 1)[0]