diff options
Diffstat (limited to 'recipeBuddy/e2e')
-rw-r--r-- | recipeBuddy/e2e/protractor.conf.js | 32 | ||||
-rw-r--r-- | recipeBuddy/e2e/src/app.e2e-spec.ts | 23 | ||||
-rw-r--r-- | recipeBuddy/e2e/src/app.po.ts | 11 | ||||
-rw-r--r-- | recipeBuddy/e2e/tsconfig.json | 13 |
4 files changed, 79 insertions, 0 deletions
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<any>; + } + + getTitleText() { + return element(by.css('app-root .content span')).getText() as Promise<string>; + } +} 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" + ] + } +} |