text: // For authoring Nightwatch tests, see
  // http://nightwatchjs.org/guide#usage
  
  module.exports = {
  
    before: function (browser) {
      console.log('Setting up... browser', typeof browser)
    },
  
    after: function (browser) {
      console.log('Closing down... browser', typeof browser)
    },
  
    'CoreUI Vue e2e tests': function (browser) {
      // automatically uses dev Server port from /config.index.js
      // default: http://localhost:8080
      // see nightwatch.conf.js
  
      // const devServer = browser.globals.devServerURL
      const devServer = process.env.VUE_DEV_SERVER_URL
  
  
      browser.url(devServer).pause(500).expect.element('body').to.be.present
  
      browser.waitForElementVisible('.app', 10000)
        .assert.elementPresent('.app-header')
        .assert.elementPresent('.app-header > .navbar-brand')
        .assert.elementPresent('.app-body')
        .assert.elementPresent('.app-body > .main > .breadcrumb')
        .assert.elementPresent('.app-body > .main > .container-fluid > .animated')
        .assert.elementPresent('.app-body > .sidebar > .sidebar-nav')
        .assert.elementPresent('.app-body > .sidebar > .sidebar-minimizer')
        .assert.elementPresent('.app-footer')
        .assert.containsText('.app-footer > div > span', 'creativeLabs')
        .assert.containsText('.app-footer > div.ml-auto > span', 'Powered by')
        .assert.elementCount('button', 10)
        .resizeWindow(1024, 800)
        .pause(500)
        .assert.cssClassNotPresent('body', 'aside-menu-show')
        .assert.cssClassNotPresent('body', 'aside-menu-lg-show')
  
      browser.click('body > div > header > button.d-none.d-lg-block.navbar-toggler', function (response) {
        console.log('response', typeof response)
        this.assert.ok(browser === this, 'Check if the context is right.')
        this.assert.cssClassPresent('body', 'aside-menu-lg-show')
      })
  
      browser.pause(500)
  
      browser.click('body > div > header > button.d-none.d-lg-block.navbar-toggler', function (response) {
        console.log('response', typeof response)
        this.assert.cssClassNotPresent('body', 'aside-menu-lg-show')
      })
  
      browser.pause(500)
  
      browser
        .useXpath()
        .click('/html/body/div/header/button[2]', function (response) {
          console.log('response', typeof response)
          this.assert.cssClassNotPresent('/html/body', 'sidebar-lg-show')
        })
  
      browser
        .pause(500)
        .click('/html/body/div/header/button[2]', function (response) {
          console.log('response', typeof response)
          this.assert.cssClassPresent('/html/body', 'sidebar-lg-show')
        })
  
      browser
        .pause(500)
        .click('/html/body/div/div/div/button', function (response) {
          console.log('response', typeof response)
          this.assert.cssClassPresent('/html/body', 'sidebar-minimized')
          this.assert.cssClassPresent('/html/body', 'brand-minimized')
          this.pause(500)
          this.assert.cssProperty("/html/body/div/div/main", "margin-left", "50px");
        })
        .pause(500)
        .click('/html/body/div/div/div/button', function (response) {
          console.log('response', typeof response)
          this.assert.cssClassNotPresent('/html/body', 'sidebar-minimized')
          this.assert.cssClassNotPresent('/html/body', 'brand-minimized')
        })
  
      browser
      .resizeWindow(800, 600)
      .pause(500)
  
      browser
      .pause(500)
      .click('/html/body/div/header/button[1]', function (response) {
        console.log('response', typeof response)
        this.assert.cssClassPresent('/html/body', 'sidebar-show')
        this.pause(500)
        this.assert.cssProperty("/html/body/div/div/main", "margin-left", "200px");
      })
  
      browser
      .pause(500)
      .click('/html/body/div/div/div/nav/section/ul/li[1]/a', function (response) {
        console.log('response', typeof response)
        this.assert.cssClassNotPresent('/html/body', 'sidebar-show')
      })
  
      browser
      .resizeWindow(500, 600)
      .pause(500)
  
      .click('/html/body/div/header/button[1]', function (response) {
        console.log('response', typeof response)
        this.assert.cssClassPresent('/html/body', 'sidebar-show')
        this.assert.cssProperty("/html/body/div/div/main", "margin-left", "0px");
      })
      .pause(500)
      .click('/html/body/div/div/main', function (response) {
        console.log('response', typeof response)
        this.assert.cssClassNotPresent('/html/body', 'sidebar-show')
        this.assert.cssProperty("/html/body/div/div/main", "margin-left", "0px");
      })
  
      browser
        .pause(5000)
        .end()
    }
  }
  