11const { By, Key, until, Builder } = require ( 'selenium-webdriver' )
2+ const { delay } = require ( '../utils' )
23
34const AdminTab = require ( './AdminTab' )
45
6+
57const FEATURE_FLAGS_SECTION = By . css ( 'div#main div#feature-flags' )
68const FEATURE_FLAGS_TABLE = By . css ( 'div#main div#feature-flags div#ff-table-section table' )
79
8- const WARNING_EXPERIMENTAL_FEATURE_FLAG = By . css ( 'divff-exp-dialog' )
9- const ACCEPT_ENABLE_EXPERIMENTAL_FEATURE_FLAG = By . css ( 'div#ff-exp-dialog p.ff-exp-ack-supported' )
10- const CONFIRM_ENABLE_EXPERIMENTAL_FEATURE_FLAG = By . css ( 'div#ff-exp-dialog button.ff-exp-confirm' )
10+ const ACCEPT_ENABLE_EXPERIMENTAL_FEATURE_FLAG = By . css ( 'p#ff-exp-ack-supported' )
11+ const CONFIRM_ENABLE_EXPERIMENTAL_FEATURE_FLAG = By . css ( 'button#ff-exp-confirm' )
1112
1213
1314module . exports = class FeatureFlagsAdminTab extends AdminTab {
@@ -29,9 +30,15 @@ module.exports = class FeatureFlagsAdminTab extends AdminTab {
2930 let state = await this . getState ( name )
3031 if ( ! await state . isSelected ( ) ) {
3132 await this . driver . findElement ( this . getParentCheckboxLocator ( name ) ) . click ( )
32- await this . waitForVisible ( WARNING_EXPERIMENTAL_FEATURE_FLAG )
33- await this . driver . findElement ( ACCEPT_ENABLE_EXPERIMENTAL_FEATURE_FLAG ) . click ( )
34- return this . driver . findElement ( CONFIRM_ENABLE_EXPERIMENTAL_FEATURE_FLAG ) . click ( )
33+ await delay ( 1000 )
34+ const dialog = await this . driver . wait (
35+ until . elementLocated ( By . css ( 'dialog#ff-exp-dialog[open]' ) ) ,
36+ 10000 // 10 seconds timeout
37+ ) ;
38+
39+ await dialog . findElement ( ACCEPT_ENABLE_EXPERIMENTAL_FEATURE_FLAG ) . click ( )
40+ await dialog . findElement ( CONFIRM_ENABLE_EXPERIMENTAL_FEATURE_FLAG ) . click ( )
41+ return delay ( 1000 )
3542 } else {
3643 return Promise . resolve ( )
3744 }
0 commit comments