From 6abb5f1449b582f50796c71bbf20d8e4aac2f4de Mon Sep 17 00:00:00 2001 From: Simon Fondrie-Teitler Date: Thu, 18 May 2017 23:20:16 -0400 Subject: [refactor] refactor and add tests for Center and Confirmation As a couple of initial, example tests, Center and Confirmation were refactored and tests were set up and added with mocha, enzyme and chai. Spinner was also refactored. --- ui/test/components/center.js | 43 ++++++++++++++++++++++++++++ ui/test/components/confirmation.js | 57 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 100 insertions(+) create mode 100644 ui/test/components/center.js create mode 100644 ui/test/components/confirmation.js (limited to 'ui/test') diff --git a/ui/test/components/center.js b/ui/test/components/center.js new file mode 100644 index 00000000..e9242e7d --- /dev/null +++ b/ui/test/components/center.js @@ -0,0 +1,43 @@ +import React from 'react'; +import {shallow} from 'enzyme'; +import chaiEnzyme from 'chai-enzyme' +import chai, { expect } from 'chai' +import Center from '../../app/components/center'; + + +describe('Center Component', () => { + + chai.use(chaiEnzyme()) + + it('has reasonable defaults', () => { + const center = shallow( +
+ test +
+ ) + + expect(center.hasClass("center-both")) + + expect(center.find(".center-item")).to.not.have.style('width') + }) + + it('has a width parameter on the inner div', () => { + const center = shallow( +
+ test +
+ ) + + expect(center.find(".center-item")).to.have.style('width').equal('10px') + }) + + it('sets direction parameter in the class name', () => { + const center = shallow( +
+ test +
+ ) + + expect(center).to.have.className("center-vertically") + }) +}) diff --git a/ui/test/components/confirmation.js b/ui/test/components/confirmation.js new file mode 100644 index 00000000..a563fb3f --- /dev/null +++ b/ui/test/components/confirmation.js @@ -0,0 +1,57 @@ +import React from 'react'; +import {shallow} from 'enzyme'; +import chaiEnzyme from 'chai-enzyme' +import Confirmation from '../../app/components/confirmation'; +import chai, { expect } from 'chai' + + +describe('Confirmation Component', () => { + + const simpleFunction0 = () => {return 0} + const simpleFunction1 = () => {return 1} + + it('Passed functionss run on click', () => { + const confirmation = shallow( + + ) + + expect(confirmation.find('Button').get(0).props.onClick()).to.equal(simpleFunction0()) + expect(confirmation.find('Button').get(1).props.onClick()).to.equal(simpleFunction1()) + }) + + it('sets defaults correctly', () => { + const confirmation = shallow( + + ) + + expect(confirmation.find("ModalTitle").first().children()).to.have.text("Are you sure?") + expect(confirmation.find('Button').at(0).children().first()).to.have.text("Accept") + expect(confirmation.find('Button').at(1).children().first()).to.have.text("Cancel") + }) + + it('overwrites defaults correctly', () => { + const testTitle = "Test Title" + const testAcceptStr = "Test accept string" + const testCancelStr = "Test cancel string" + + const confirmation = shallow( + + ) + + expect(confirmation.find("ModalTitle").first().children()).to.have.text(testTitle) + expect(confirmation.find('Button').at(0).children().first()).to.have.text(testAcceptStr) + expect(confirmation.find('Button').at(1).children().first()).to.have.text(testCancelStr) + }) +}) -- cgit v1.2.3