/* Copyright (c) 2010-2011, Diaspora Inc. This file is * licensed under the Affero General Public License version 3 or later. See * the COPYRIGHT file. */ describe("Validation", function() { describe("rules", function() { describe("username", function() { describe("characters", function() { it("is the regex for checking if we allow what the user typed", function() { expect((typeof Validation.rules.username.characters.test === "function")).toBeTruthy(); }); }); }); describe("email", function() { describe("characters", function() { it("is the regex for checking if the input is a valid list of e-mail addresses", function() { expect((typeof Validation.rules.email.characters.test === "function")).toBeTruthy(); }); }); }); }); describe("whiteListed", function() { it("returns true if the keyCode is whitelisted", function() { expect(Validation.whiteListed(0)).toBeTruthy(); }); it("returns false if it's not", function() { expect(Validation.whiteListed(9001)).toBeFalsy(); }); }); describe("events", function() { describe("usernameKeypress", function() { it("doesn't allow the user to type anything but letters, numbers and underscores", function() { expect(Validation.rules.username.characters.test("*")).toBeFalsy(); expect(Validation.rules.username.characters.test("Aa_")).toBeTruthy(); expect(Validation.rules.username.characters.test("ffffffffffffffffffffffffffffffffff")).toBeFalsy(); }); }); describe("emailKeypress", function() { it("colors the border red if the input seems to be a invalid list", function() { expect(Validation.rules.email.characters.test("user@example.com")).toBeTruthy(); expect(Validation.rules.email.characters.test("user@example.com, user@example.com")).toBeTruthy(); expect(Validation.rules.email.characters.test("user@example.com, user@example.com, user@example.com")).toBeTruthy(); expect(Validation.rules.email.characters.test("user@example.com user@example.com")).toBeFalsy(); expect(Validation.rules.email.characters.test("user@examplecom")).toBeFalsy(); expect(Validation.rules.email.characters.test("userexample.com")).toBeFalsy(); expect(Validation.rules.email.characters.test("userexamplecom")).toBeFalsy(); }); }); }); });