From 30ea1d1313e5830456b49cd100906eb0c4f3efd0 Mon Sep 17 00:00:00 2001 From: schencej Date: Sat, 14 Sep 2019 13:15:56 -0400 Subject: Initial commit --- recipeBuddy/e2e/protractor.conf.js | 32 ++++++++++++++++++++++++++++++++ recipeBuddy/e2e/src/app.e2e-spec.ts | 23 +++++++++++++++++++++++ recipeBuddy/e2e/src/app.po.ts | 11 +++++++++++ recipeBuddy/e2e/tsconfig.json | 13 +++++++++++++ 4 files changed, 79 insertions(+) create mode 100644 recipeBuddy/e2e/protractor.conf.js create mode 100644 recipeBuddy/e2e/src/app.e2e-spec.ts create mode 100644 recipeBuddy/e2e/src/app.po.ts create mode 100644 recipeBuddy/e2e/tsconfig.json (limited to 'recipeBuddy/e2e') diff --git a/recipeBuddy/e2e/protractor.conf.js b/recipeBuddy/e2e/protractor.conf.js new file mode 100644 index 0000000..73e4e68 --- /dev/null +++ b/recipeBuddy/e2e/protractor.conf.js @@ -0,0 +1,32 @@ +// @ts-check +// Protractor configuration file, see link for more information +// https://github.com/angular/protractor/blob/master/lib/config.ts + +const { SpecReporter } = require('jasmine-spec-reporter'); + +/** + * @type { import("protractor").Config } + */ +exports.config = { + allScriptsTimeout: 11000, + specs: [ + './src/**/*.e2e-spec.ts' + ], + capabilities: { + 'browserName': 'chrome' + }, + directConnect: true, + baseUrl: 'http://localhost:4200/', + framework: 'jasmine', + jasmineNodeOpts: { + showColors: true, + defaultTimeoutInterval: 30000, + print: function() {} + }, + onPrepare() { + require('ts-node').register({ + project: require('path').join(__dirname, './tsconfig.json') + }); + jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); + } +}; \ No newline at end of file diff --git a/recipeBuddy/e2e/src/app.e2e-spec.ts b/recipeBuddy/e2e/src/app.e2e-spec.ts new file mode 100644 index 0000000..ab3f27b --- /dev/null +++ b/recipeBuddy/e2e/src/app.e2e-spec.ts @@ -0,0 +1,23 @@ +import { AppPage } from './app.po'; +import { browser, logging } from 'protractor'; + +describe('workspace-project App', () => { + let page: AppPage; + + beforeEach(() => { + page = new AppPage(); + }); + + it('should display welcome message', () => { + page.navigateTo(); + expect(page.getTitleText()).toEqual('recipeBuddy app is running!'); + }); + + afterEach(async () => { + // Assert that there are no errors emitted from the browser + const logs = await browser.manage().logs().get(logging.Type.BROWSER); + expect(logs).not.toContain(jasmine.objectContaining({ + level: logging.Level.SEVERE, + } as logging.Entry)); + }); +}); diff --git a/recipeBuddy/e2e/src/app.po.ts b/recipeBuddy/e2e/src/app.po.ts new file mode 100644 index 0000000..b8498c2 --- /dev/null +++ b/recipeBuddy/e2e/src/app.po.ts @@ -0,0 +1,11 @@ +import { browser, by, element } from 'protractor'; + +export class AppPage { + navigateTo() { + return browser.get(browser.baseUrl) as Promise; + } + + getTitleText() { + return element(by.css('app-root .content span')).getText() as Promise; + } +} diff --git a/recipeBuddy/e2e/tsconfig.json b/recipeBuddy/e2e/tsconfig.json new file mode 100644 index 0000000..39b800f --- /dev/null +++ b/recipeBuddy/e2e/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../out-tsc/e2e", + "module": "commonjs", + "target": "es5", + "types": [ + "jasmine", + "jasminewd2", + "node" + ] + } +} -- cgit v1.1