import React from 'react';
import ReactTestUtils from 'react-addons-test-utils';
import CompanyRegisterModal from '../../components/CompanyRegisterModal';
describe('CompanyRegisterModal', () => {
function validatePassword(password) {
const lowerCaseLetters = /[a-z]/g;
const upperCaseLetters = /[A-Z]/g;
const numbers = /[0-9]/g;
if(password.length < 8) {
return "Password less than 8";
} else {
if(!lowerCaseLetters.test(password)) {
return "Password at least one lowercase letter";
}
if(!upperCaseLetters.test(password)) {
return "Password at least one uppercase letter";
}
if(!numbers.test(password)) {
return "Password at least one number";
}
return true
}
}
it('renders without problem', () => {
const companyRegister = ReactTestUtils.renderIntoDocument(
);
expect(companyRegister).to.exist;
});
it('renders form without problem', () => {
const companyRegister = ReactTestUtils.renderIntoDocument(
);
const registerForm = ReactTestUtils.scryRenderedDOMComponentsWithTag(companyRegister, 'Form');
expect(registerForm).to.exist;
});
it('renders category options without problem', () => {
const companyRegister = ReactTestUtils.renderIntoDocument(
);
expect(companyRegister.categoryOptions).to.exist;
});
it('handle password validation', () => {
const password = '3s24Aasd';
expect(validatePassword(password)).to.equal(true);
});
it('Register modals state contain benefits', () => {
const companyRegister = ReactTestUtils.renderIntoDocument(
);
expect(companyRegister.state.benefits).to.exist;
});
});