def test_superadmin_tenant_crud(request): """Test suppose to verify CRUD operations for CFME tenants Prerequisities: * This test is not depending on any other test and can be executed against fresh appliance. Steps: * Create tenant * Update description of tenant * Update name of tenat * Delete tenant """ tenant = Tenant( name='tenant1' + fauxfactory.gen_alphanumeric(), description='tenant1 description') @request.addfinalizer def _delete_tenant(): if tenant.exists: tenant.delete() tenant.create() with update(tenant): tenant.description = tenant.description + "edited" with update(tenant): tenant.name = tenant.name + "edited" tenant.delete()
def test_superadmin_tenant_project_crud(request): """Test suppose to verify CRUD operations for CFME projects Prerequisities: * This test is not depending on any other test and can be executed against fresh appliance. Steps: * Create tenant * Create project as child to tenant * Update description of project * Update name of project * Delete project * Delete tenant """ tenant = Tenant(name="tenant1" + fauxfactory.gen_alphanumeric(), description="tenant1 description") project = Project( name="project1" + fauxfactory.gen_alphanumeric(), description="project1 description", parent_tenant=tenant ) @request.addfinalizer def _delete_tenant_and_project(): for item in [project, tenant]: if item.exists: item.delete() tenant.create() project.create() with update(project): project.description = project.description + "edited" with update(project): project.name = project.name + "edited" project.delete() tenant.delete()
def test_superadmin_tenant_project_crud(request): """Test suppose to verify CRUD operations for CFME projects Prerequisities: * This test is not depending on any other test and can be executed against fresh appliance. Steps: * Create tenant * Create project as child to tenant * Update description of project * Update name of project * Delete project * Delete tenant """ tenant = Tenant(name='tenant1' + fauxfactory.gen_alphanumeric(), description='tenant1 description') project = Project(name='project1' + fauxfactory.gen_alphanumeric(), description='project1 description', parent_tenant=tenant) @request.addfinalizer def _delete_tenant_and_project(): for item in [project, tenant]: if item.exists: item.delete() tenant.create() project.create() with update(project): project.description = project.description + "edited" with update(project): project.name = project.name + "edited" project.delete() tenant.delete()
def test_superadmin_child_tenant_crud(request, number_of_childrens): """Test CRUD operations for CFME child tenants, where several levels of tenants are created. Prerequisities: * This test is not depending on any other test and can be executed against fresh appliance. Steps: * Create 5 tenants where the next tenant is always child to the previous one * Update description of tenant(N-1)_* in the tree * Update name of tenant(N-1)_* * Delete all created tenants in reversed order """ tenant = None tenant_list = [] @request.addfinalizer def _delete_tenants(): # reversed because we need to go from the last one for tenant in reversed(tenant_list): if tenant.exists: tenant.delete() for i in range(1, number_of_childrens + 1): new_tenant = Tenant( name="tenant{}_{}".format(i, fauxfactory.gen_alpha(4)), description=fauxfactory.gen_alphanumeric(16), parent_tenant=tenant, ) tenant_list.append(new_tenant) new_tenant.create() tenant = new_tenant tenant_update = tenant.parent_tenant with update(tenant_update): tenant_update.description = tenant_update.description + "edited" with update(tenant_update): tenant_update.name = tenant_update.name + "edited" for tenant_item in reversed(tenant_list): tenant_item.delete() assert not tenant_item.exists
def test_superadmin_child_tenant_crud(request, number_of_childrens): """Test CRUD operations for CFME child tenants, where several levels of tenants are created. Prerequisities: * This test is not depending on any other test and can be executed against fresh appliance. Steps: * Create 5 tenants where the next tenant is always child to the previous one * Update description of tenant(N-1)_* in the tree * Update name of tenant(N-1)_* * Delete all created tenants in reversed order """ tenant = None tenant_list = [] @request.addfinalizer def _delete_tenants(): # reversed because we need to go from the last one for tenant in reversed(tenant_list): if tenant.exists: tenant.delete() for i in range(1, number_of_childrens + 1): new_tenant = Tenant( name="tenant{}_{}".format(i, fauxfactory.gen_alpha(4)), description=fauxfactory.gen_alphanumeric(16), parent_tenant=tenant) tenant_list.append(new_tenant) new_tenant.create() tenant = new_tenant tenant_update = tenant.parent_tenant with update(tenant_update): tenant_update.description = tenant_update.description + "edited" with update(tenant_update): tenant_update.name = tenant_update.name + "edited" for tenant_item in reversed(tenant_list): tenant_item.delete() assert not tenant_item.exists