// ======================================================================== // SC.Validator.CreditCard Tests // ======================================================================== module("credit_card validation - fieldValueForObject()"); test("Expects a string of 16 digits. Will split into groups of 4 for display.",function(){ var obj=SC.Validator.CreditCard.create(); var string = "1234567890123456"; var grouped_string = obj.fieldValueForObject("1234567891234567"); equals(grouped_string,"1234 5678 9123 4567"); }); test("Removes all whitespace or dashes to make a single string",function(){ var obj=SC.Validator.CreditCard.create(); var string = "1234 5678-9012-3456"; var clean_string = obj.objectForFieldValue(string); equals(clean_string,"1234567890123456"); }); test("Checks all valid card numbers or dashes to make a single string",function(){ var obj=SC.Validator.CreditCard.create(); var invalid_cc = "1234 5678-9012-3456"; equals(obj.checkNumber(invalid_cc),false); var valid_cc = "4111 1111 1111 1111"; equals(obj.checkNumber(valid_cc),true); }); // PROBLEM in function validateKeyDown // returns true instead of false and vice -versa //test("Allow only numbers, dashes, and spaces",function(){ // obj=SC.Validator.CreditCard.create(); // string = "sdfk123"; // equals(obj.validateKeyDown('','',string),false); // string = "123424"; // equals(obj.validateKeyDown('','',string),true); //});