Ad
Writing Unit Tests For Form Elements
I'm writing jasmine test cases for my validation function. This is the code for my function.
function validateCardNum(){
var cardEntered = $('#cardNum').val();
var cTypeVal = $('#cType').val();
if(cTypeVal === 'visa'){
var reg = /^4\d{15}$/;
if (!reg.test(cardEntered)) {
showError('#cardNum',errorMsg);
return false;
};
}
}
And this is the code I'm writing to test it:
describe('VISA Card Validations', function() {
$('#cType').val() = 'visa';
it('should not validate empty CC number', function() {
$('#cardNum').val() = '';
expect(validateCardNum().toBe(false));
});
});
When I write this, I get this error:
ReferenceError: Invalid left-hand side in assignment
My question is how can I assign testing values to my input fields to test different case scenarios.
Ad
Answer
I was using wrong syntax for changing value of input fields. I used this code, and it worked like charm!
describe('VISA Card Validations', function() {
$('#cType').val('visa');
it('should not validate empty CC number', function() {
$('#cardNum').val('');
expect(validateCardNum()).toBe(false);
});
});
Ad
source: stackoverflow.com
Related Questions
- → How to update data attribute on Ajax complete
- → October CMS - Radio Button Ajax Click Twice in a Row Causes Content to disappear
- → Octobercms Component Unique id (Twig & Javascript)
- → Passing a JS var from AJAX response to Twig
- → Laravel {!! Form::open() !!} doesn't work within AngularJS
- → DropzoneJS & Laravel - Output form validation errors
- → Import statement and Babel
- → Uncaught TypeError: Cannot read property '__SECRET_DOM_DO_NOT_USE_OR_YOU_WILL_BE_FIRED' of undefined
- → React-router: Passing props to children
- → ListView.DataSource looping data for React Native
- → Can't test submit handler in React component
- → React + Flux - How to avoid global variable
- → Webpack, React & Babel, not rendering DOM
Ad