Skip to content

Commit

Permalink
Clean created users after scenario (#8998)
Browse files Browse the repository at this point in the history
  • Loading branch information
amrita-shrestha authored and saw-jan committed May 11, 2023
1 parent 77bf031 commit 279fb3c
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 25 deletions.
21 changes: 20 additions & 1 deletion tests/e2e/cucumber/environment/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,12 @@ import { config } from '../../config'
import { api, environment } from '../../support'
import { World } from './world'
import { state } from './shared'
import { createdSpaceStore, createdLinkStore, createdGroupStore } from '../../support/store'
import {
createdSpaceStore,
createdLinkStore,
createdGroupStore,
createdUserStore
} from '../../support/store'
import { User } from '../../support/types'

export { World }
Expand Down Expand Up @@ -108,6 +113,7 @@ After(async function (this: World, { result }: ITestCaseHookParameter) {
await this.actorsEnvironment.close()
}

await cleanUpUser(this.usersEnvironment.getUser({ key: 'admin' }))
await cleanUpSpaces(this.usersEnvironment.getUser({ key: 'admin' }))
await cleanUpGroup(this.usersEnvironment.getUser({ key: 'admin' }))

Expand All @@ -118,6 +124,19 @@ AfterAll(() => state.browser && state.browser.close())

setWorldConstructor(World)

const cleanUpUser = async (adminUser: User) => {
const requests = []
createdUserStore.forEach((user) => {
if (config.ocis) {
requests.push(api.graph.deleteUser({ user, admin: adminUser }))
} else {
requests.push(api.user.deleteUser({ user, admin: adminUser }))
}
})
await Promise.all(requests)
createdUserStore.clear()
}

const cleanUpSpaces = async (adminUser: User) => {
const requests = []
createdSpaceStore.forEach((space) => {
Expand Down
2 changes: 0 additions & 2 deletions tests/e2e/cucumber/steps/api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,8 @@ Given(
for (const info of stepTable.hashes()) {
const user = this.usersEnvironment.getUser({ key: info.id })
if (config.ocis) {
await api.graph.deleteUser({ user, admin })
await api.graph.createUser({ user, admin })
} else {
await api.user.deleteUser({ user, admin })
await api.user.createUser({ user, admin })
}
}
Expand Down
21 changes: 0 additions & 21 deletions tests/e2e/cucumber/steps/ui/adminSettings.ts
Original file line number Diff line number Diff line change
Expand Up @@ -300,22 +300,6 @@ When(
const { page } = this.actorsEnvironment.getActor({ key: stepUser })
const usersObject = new objects.applicationAdminSettings.Users({ page })

// deleting a user with a same userName before testing
if (attribute === 'userName') {
const newUser = this.usersEnvironment.createUser({
key: value,
user: {
id: value,
displayName: '',
password: 'password',
email: ''
}
})
await api.graph.deleteUser({
user: newUser,
admin: this.usersEnvironment.getUser({ key: stepUser })
})
}
await usersObject.changeUser({
key: user,
attribute: attribute,
Expand Down Expand Up @@ -464,11 +448,6 @@ When(
const { page } = this.actorsEnvironment.getActor({ key: stepUser })
const usersObject = new objects.applicationAdminSettings.Users({ page })
for (const info of stepTable.hashes()) {
const user = this.usersEnvironment.getUser({ key: info.name })
await api.graph.deleteUser({
user: user,
admin: this.usersEnvironment.getUser({ key: stepUser })
})
await usersObject.createUser({
name: info.name,
displayname: info.displayname,
Expand Down
7 changes: 6 additions & 1 deletion tests/e2e/cucumber/steps/ui/session.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,12 @@ async function createNewSession(world: World, stepUser: string) {
async function LogInUser(this: World, stepUser: string): Promise<void> {
const sessionObject = await createNewSession(this, stepUser)
const { page } = this.actorsEnvironment.getActor({ key: stepUser })
const user = this.usersEnvironment.getUser({ key: stepUser })

const user =
stepUser === 'Admin'
? this.usersEnvironment.getUser({ key: stepUser })
: this.usersEnvironment.getCreatedUser({ key: stepUser })

await page.goto(config.frontendUrl)
await sessionObject.login({ user })
await page.waitForSelector('#web')
Expand Down

0 comments on commit 279fb3c

Please sign in to comment.