1..84 # __construct() ok 1 - ->__construct() can take no argument ok 2 - ->__construct() can take an array of named sfValidator objects ok 3 - __construct() throws an InvalidArgumentException when passing a non supported first argument # implements ArrayAccess ok 4 - sfValidatorSchema implements the ArrayAccess interface for the fields ok 5 - sfValidatorSchema implements the ArrayAccess interface for the fields ok 6 - sfValidatorSchema implements the ArrayAccess interface for the fields ok 7 - sfValidatorSchema implements the ArrayAccess interface for the fields ok 8 - sfValidatorSchema implements the ArrayAccess interface for the fields ok 9 - sfValidatorSchema implements the ArrayAccess interface for the fields ok 10 - sfValidatorSchema implements the ArrayAccess interface for the fields # ->configure() ok 11 - ->configure() sets allow_extra_fields option to false by default ok 12 - ->configure() sets filter_extra_fields option to true by default ok 13 - ->configure() has a default error message for the extra_fields error ok 14 - ->__construct() can override the default value for the allow_extra_fields option ok 15 - ->__construct() can override the default value for the filter_extra_fields option ok 16 - ->__construct() can override the default message for the extra_fields error message # ->clean() ok 17 - ->clean() converts null to empty array before validation ok 18 - ->clean() throws an InvalidArgumentException exception if the first argument is not an array of value ok 19 - ->clean() returns the string unmodified ok 20 - ->clean() throws an sfValidatorErrorSchema exception if a you give a non existant field ok 21 - ->clean() throws an exception with all error messages ok 22 - ->clean() throws an exception with all error messages # required fields ok 23 - ->clean() throws an sfValidatorErrorSchema exception if a required field is not provided ok 24 - ->clean() throws an exception with all error messages ok 25 - ->clean() throws an exception with all error messages # ->getPreValidator() ->setPreValidator() ok 26 - ->getPreValidator() returns the current pre validator ok 27 - ->clean() throws an sfValidatorErrorSchema exception if a pre-validator fails ok 28 - ->clean() throws an exception with all error messages ok 29 - ->clean() throws an exception with all error messages # ->getPostValidator() ->setPostValidator() ok 30 - ->getPostValidator() returns the current post validator ok 31 - ->clean() executes post validators ok 32 - ->clean() throws an sfValidatorErrorSchema exception if a post-validator fails ok 33 - ->clean() throws an exception with all error messages ok 34 - ->clean() throws an exception with all error messages ok 35 - ->clean() returns null values for fields not present in the input array # extra fields ok 36 - ->clean() filters non existant fields if allow_extra_fields is true ok 37 - ->clean() filters non existant fields if allow_extra_fields is true ok 38 - ->clean() do not filter non existant fields if filter_extra_fields is false ok 39 - ->clean() do not filter non existant fields if filter_extra_fields is false # one validator fails ok 40 - ->clean() throws an sfValidatorErrorSchema exception if one of the validators fails ok 41 - ->clean() throws an exception with all error messages ok 42 - ->clean() throws an exception with all error messages # several validators fail ok 43 - ->clean() throws an sfValidatorErrorSchema exception if one of the validators fails ok 44 - ->clean() throws an exception with all error messages ok 45 - ->clean() throws an exception with all error messages ok 46 - ->clean() throws an exception with all error messages # postValidator can throw named errors or global errors # postValidator throws global errors ok 47 - ->clean() throws an exception with all error messages ok 48 - ->clean() throws an exception with all error messages ok 49 - ->clean() throws an exception with all error messages ok 50 - ->clean() throws an exception with all error messages ok 51 - ->clean() throws an exception with all error messages ok 52 - ->clean() throws an exception with all error messages ok 53 - ->clean() throws an exception with all error messages # postValidator throws named errors ok 54 - ->clean() throws an exception with all error messages ok 55 - ->clean() throws an exception with all error messages ok 56 - ->clean() throws an exception with all error messages ok 57 - ->clean() throws an exception with all error messages ok 58 - ->clean() throws an exception with all error messages ok 59 - ->clean() throws an exception with all error messages ok 60 - ->clean() throws an exception with all error messages # complex postValidator ok 61 - ->clean() throws an exception with all error messages ok 62 - ->clean() throws an exception with all error messages ok 63 - ->clean() throws an exception with all error messages ok 64 - ->clean() throws an exception with all error messages ok 65 - ->clean() throws an exception with all error messages ok 66 - ->clean() throws an exception with all error messages ok 67 - ->clean() throws an exception with all error messages ok 68 - ->clean() throws an exception with all error messages ok 69 - ->clean() throws an exception with all error messages ok 70 - ->clean() throws an exception with all error messages ok 71 - ->clean() throws an exception with all error messages ok 72 - ->clean() throws an exception with all error messages ok 73 - ->clean() throws an exception with all error messages # __clone() ok 74 - __clone() clones embedded validators ok 75 - __clone() clones embedded validators ok 76 - __clone() clones embedded validators ok 77 - __clone() clones embedded validators ok 78 - __clone() clones embedded validators ok 79 - __clone() clones the pre validator ok 80 - __clone() clones the post validator ok 81 - __clone() clones the pre validator ok 82 - __clone() clones the pre validator ok 83 - __clone() clones the post validator ok 84 - __clone() clones the post validator # Looks like everything went fine.