From a8a85f14ab8ec22332cca6476a78af291acaa83b Mon Sep 17 00:00:00 2001 From: salomonelli Date: Thu, 19 Oct 2017 22:48:23 +0200 Subject: [PATCH] ADD tests for overview --- package.json | 2 ++ test/resumes-overview.js | 30 ++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 test/resumes-overview.js diff --git a/package.json b/package.json index ce4b100..069f253 100755 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "start": "node build/dev-server.js", "pdf": "node node/app.js", "preview": "node node/preview.js", + "test": "testcafe chrome test/resumes-overview.js", "template": "node node/template/template.js", "export": "concurrently \"npm run dev\" \"npm run pdf\" --success first --kill-others --raw", "lint": "eslint --ext .js,.vue src test/unit/specs test/e2e/specs" @@ -84,6 +85,7 @@ "rxjs": "5.4.3", "semver": "5.4.1", "shelljs": "0.7.6", + "testcafe": "^0.18.1", "url-exists": "1.0.3", "url-loader": "0.5.9", "vue-loader": "12.2.1", diff --git a/test/resumes-overview.js b/test/resumes-overview.js new file mode 100644 index 0000000..1f117f7 --- /dev/null +++ b/test/resumes-overview.js @@ -0,0 +1,30 @@ +/* eslint-disable */ +import { Selector, ClientFunction } from 'testcafe'; + +fixture `Resumes Overview` + .page `http://localhost:8080/#/`; + + +test('Resumes overview appears', async t => { + await t.expect(Selector('h3').innerText).eql('best-resume-ever'); +}); + +test('There is at least one resume preview', async t => { + await t.expect(Selector('.previews .preview').count).gt(1); +}); + +test('All resumes have a name', async t => { + const count = await Selector('.previews .preview').count; + for (var i = 0; i < count; i++) + await t.expect(Selector('.previews .preview .preview-wrapper span').nth(i).innerText).ok(); +}); + +test('Resume should have link to preview', async t => { + const count = await Selector('.previews .preview').count; + for (var i = 0; i < count; i++) { + const resumeName = await Selector('.previews .preview .preview-wrapper span').nth(i).innerText; + const attr = Selector('.previews .preview a').nth(i).getAttribute('href'); + await t.expect(attr).eql('#/resume/' + resumeName); + } + +});