-
Notifications
You must be signed in to change notification settings - Fork 48
Expand file tree
/
Copy pathbefore-after-user-created-room.js
More file actions
60 lines (55 loc) · 2.11 KB
/
before-after-user-created-room.js
File metadata and controls
60 lines (55 loc) · 2.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
// Common Before and After logic for the initial test room
let common = require('../common/common');
let framework = common.framework;
let userWebex = common.userWebex;
let testInfo = common.testInfo;
let User_Test_Space_Title = common.User_Test_Space_Title;
let validator = common.validator;
module.exports = {
registerBeforeAndAfterHooks: function() {
let userCreatedTestRoom, userCreatedRoomBot;
// Create a room as user to have test bot which will create other rooms
before(`Create initial test space: ${User_Test_Space_Title}`,() => {
testInfo.config.testName = `Create initial test space: ${User_Test_Space_Title}`;
testInfo.config.userUnderTest = userWebex;
return userWebex.rooms.create({title: User_Test_Space_Title})
.then((r) => {
userCreatedTestRoom = r;
testInfo.config.roomUnderTest = r;
return validator.isRoom(r);
});
});
// Add our bot to the room and validate that it is spawned properly
before('Add Bot to Space',() => {
testInfo.config.testName = 'Add Bot to Space';
testInfo.config.roomUnderTest = userCreatedTestRoom;
return common.addBotToSpace(framework, testInfo)
.then((b) => {
userCreatedRoomBot = b;
testInfo.config.botUnderTest = b;
return validator.isBot(b);
});
});
// Bot leaves rooms
after('Remove bot from test space', () => {
if ((!userCreatedRoomBot) || (!userCreatedTestRoom)) {
return Promise.resolve();
}
testInfo.config.botUnderTest = userCreatedRoomBot;
testInfo.config.userUnderTest = userCreatedTestRoom;
testInfo.config.testName = 'User created bot leaves user created space';
return common.botLeaveSpace(framework, testInfo);
});
// User deletes room -- cleanup
after('Delete user created test space', () => {
if (!userCreatedTestRoom) {
return Promise.resolve();
}
return userWebex.rooms.remove(userCreatedTestRoom)
.catch((reason) => {
console.error('Failed to cleanup test room', reason);
throw reason;
});
});
},
};