1..13 # __construct() ok 1 - __construct() throws an RuntimeException if you don't pass an expected option # ->clean() ok 2 - ->clean() checks that the value is an expected value ok 3 - ->clean() checks that the value is an expected value ok 4 - ->clean() throws an sfValidatorError if the value is not an expected value ok 5 - ->clean() throws a sfValidatorError # ->asString() ok 6 - ->asString() returns a string representation of the validator # choices as a callable ok 7 - __construct() can take a sfCallable object as a choices option ok 8 - ->clean() throws an sfValidatorError if the value is not strictly an expected value ok 9 - ->clean() throws a sfValidatorError ok 10 - ->clean() throws an sfValidatorError if the minimum number of values are not selected ok 11 - ->clean() throws a sfValidatorError ok 12 - ->clean() throws an sfValidatorError if more than the maximum number of values are selected ok 13 - ->clean() throws a sfValidatorError # Looks like everything went fine.