diff --git a/.travis.yml b/.travis.yml index 925b77ea8f..f769751068 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,20 +25,13 @@ env: - DOCKER_USER=bwsw - DOCKER_REPO=cloudstack-ui -before_install: - - export CHROME_BIN=/usr/bin/google-chrome - - export DISPLAY=:99.0 - - sh -e /etc/init.d/xvfb start - - sudo apt-get update - - sudo apt-get install -y libappindicator1 fonts-liberation - - wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb - - sudo dpkg -i google-chrome*.deb - -before_deploy: - - docker build -t ${DOCKER_USER}/${DOCKER_REPO} . - -deploy: - - provider: script - script: ./scripts/publish-docker-image.sh - on: - all_branches: true +install: + - yarn + +before_script: + - echo $PROXY_CONF | base64 -d > ./proxy-conf.js + +script: + - docker run --rm -v $(pwd):/workspace -w /workspace m7ov/node8-chrome:0.1 /bin/bash -ce "npm install && npm run webdriver-clean && npm run webdriver-2.35 && npm run e2e" + - docker stop cloudstack-simulator-e2e + diff --git a/e2e/app.e2e-spec.ts b/e2e/app.e2e-spec.ts index 1c6c1b6c1f..53904914a2 100644 --- a/e2e/app.e2e-spec.ts +++ b/e2e/app.e2e-spec.ts @@ -1,4 +1,5 @@ import { CloudstackUiPage } from './app.po'; +import {browser} from 'protractor'; describe('cloudstack-ui App', () => { let page: CloudstackUiPage; @@ -7,8 +8,9 @@ describe('cloudstack-ui App', () => { page = new CloudstackUiPage(); }); - it('should display welcome message', () => { + it('should display logo', () => { page.navigateTo(); - expect(page.getParagraphText()).toEqual('Welcome to app!!'); + browser.waitForAngular(); + expect(page.getLogo().isPresent()).toBeTruthy(); }); }); diff --git a/e2e/app.po.ts b/e2e/app.po.ts index 82ae9600a9..9735b7e46a 100644 --- a/e2e/app.po.ts +++ b/e2e/app.po.ts @@ -2,10 +2,10 @@ import { browser, by, element } from 'protractor'; export class CloudstackUiPage { navigateTo() { - return browser.get('/'); + return browser.get('/bwsw/master/login'); } - getParagraphText() { - return element(by.css('app-root h1')).getText(); + getLogo() { + return element(by.css('.logo')); } } diff --git a/package.json b/package.json index 216991ef77..3ea6aeb0f6 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,10 @@ "lint": "ng lint", "lint:report": "mkdir -p reports; ng lint -t checkstyle > reports/checkstyle-result.xml", "e2e": "ng e2e", - "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s" + "e2e-no-update": "ng e2e --webdriver-update false", + "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s", + "webdriver-clean": "./node_modules/.bin/webdriver-manager clean", + "webdriver-2.35": "./node_modules/.bin/webdriver-manager update --versions.chrome 2.35" }, "private": true, "dependencies": { diff --git a/protractor.conf.js b/protractor.conf.js index 7ee3b5ee86..6354bd975b 100644 --- a/protractor.conf.js +++ b/protractor.conf.js @@ -9,10 +9,13 @@ exports.config = { './e2e/**/*.e2e-spec.ts' ], capabilities: { - 'browserName': 'chrome' + 'browserName': 'chrome', + 'chromeOptions': { + 'args': ['no-sandbox'] + } }, directConnect: true, - baseUrl: 'http://localhost:4200/', + baseUrl: 'http://localhost:49152', framework: 'jasmine', jasmineNodeOpts: { showColors: true,