1..95 # __construct() ok 1 - __construct() can take no argument ok 2 - __construct() can take an array of named sfWidget objects ok 3 - __construct() throws an exception when passing a non supported first argument ok 4 - __construct() sets form_formatter option to table by default ok 5 - __construct() can override the default value for the form_formatter option ok 6 - __construct() sets name_format option to table by default ok 7 - __construct() can override the default value for the name_format option # implements ArrayAccess ok 8 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 9 - The widget schema is associated with the fields ok 10 - The widget schema is associated with the fields ok 11 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 12 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 13 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 14 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 15 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 16 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 17 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 18 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 19 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 20 - sfWidgetFormSchema implements the ArrayAccess interface for the fields ok 21 - sfWidgetFormSchema implements the ArrayAccess interface for the fields # ->addFormFormatter() ->setFormFormatterName() ->getFormFormatterName() ->getFormFormatter() ->getFormFormatters() ok 22 - ->getFormFormatter() returns a sfWidgetSchemaFormatter object ok 23 - ->addFormFormatter() associates a name with a sfWidgetSchemaFormatter object ok 24 - ->setFormFormatterName() set the names of the formatter to use when rendering ok 25 - ->setFormFormatterName() throws a InvalidArgumentException when the form format name is not associated with a formatter ok 26 - ->getFormFormatters() returns an array of all formatter for this widget schema # ->setNameFormat() ->getNameFormat() ->generateName() ok 27 - ->generateName() returns a HTML name attribute value for a given field name ok 28 - ->setNameFormat() changes the name format ok 29 - ->getNameFormat() returns the name format ok 30 - ->generateName() returns the name unchanged if the format is false ok 31 - ->setNameFormat() throws an InvalidArgumentException if the format does not contain %s ok 32 - ->generateName() returns a HTML name attribute value for a given field name ok 33 - ->generateName() returns a HTML name attribute value for a given field name # ->getParent() ->setParent() ok 34 - ->getParent() returns null if there is no parent widget schema ok 35 - ->getParent() returns the parent widget schema # ->setLabels() ->setLabel() ->getLabels() ->getLabel() ->generateLabelName() ok 36 - ->getLabels() returns all current labels ok 37 - ->setLabels() changes all current labels ok 38 - ->setLabel() sets a label value # ->setHelps() ->getHelps() ->setHelp() ->getHelp() ok 39 - ->setHelps() changes all help messages ok 40 - ->setHelp() changes one help message # ->getLabel() ->setLabel() ->getLabels() ->setLabels() ok 41 - ->getLabels() returns the labels ok 42 - ->getLabel() returns the label for a given field ok 43 - ->setLabel() sets a label for a given field ok 44 - ->setLabel() can also set the label for the widget schema # ->getDefault() ->setDefault() ->getDefaults() ->setDefaults() ok 45 - ->getDefaults() returns the default values ok 46 - ->getDefault() returns the default value for a given field ok 47 - ->setDefault() sets a default value for a given field # ->needsMultipartForm() ok 48 - ->needsMultipartForm() returns false if the form schema does not have a widget that needs a multipart form ok 49 - ->needsMultipartForm() returns true if the form schema does not have a widget that needs a multipart form # ->renderField() ok 50 - ->renderField() renders a field to HTML ok 51 - ->renderField() renders a field to HTML ok 52 - ->renderField() throws an InvalidArgumentException if the field does not exist # ->setPositions() ->getPositions() ok 53 - ->setPositions() changes all field positions ok 54 - ->setPositions() changes all field positions ok 55 - ->setPositions() changes all field positions ok 56 - ->setPositions() does not repeat the fields ok 57 - ->setPositions() throws an InvalidArgumentException if you give it a non existant field name ok 58 - ->setPositions() throws an InvalidArgumentException if you miss a field name # ->moveField() ok 59 - ->moveField() can move a field before another one ok 60 - ->moveField() can move a field to the end ok 61 - ->moveField() can move a field to the beginning ok 62 - ->moveField() can move a field before another one ok 63 - ->moveField() throws an LogicException if you don't pass a relative field name with AFTER ok 64 - ->moveField() throws an LogicException if you don't pass a relative field name with BEFORE ok 65 - ->moveField() compares field names as strings ok 66 - ->moveField() compares field names as strings ok 67 - ->moveField() compares field names as strings ok 68 - ->moveField() compares field names as strings # ->getGlobalErrors() ok 69 - ->getGlobalErrors() returns an array of global errors, errors for hidden fields, and errors for non existent fields # ->render() ok 70 - ->render() throws an InvalidArgumentException if the second argument is not an array ok 71 - ->render() renders a schema to HTML # Widget schema with only hidden fields ok 72 - ->render() is able to render widget schema that only contains hidden fields # Widget schema with an embed form as the last field and hidden fields ok 73 - ->render() is able to render widget schema that only contains hidden fields when the last field is a form # __clone() ok 74 - __clone() clones embedded widgets ok 75 - __clone() clones embedded widgets ok 76 - The parents hafe been changed ok 77 - __clone() clones embedded widgets ok 78 - __clone() clones embedded widgets ok 79 - The parents hafe been changed ok 80 - __clone() clones embedded widgets ok 81 - __clone() returns a sfWidgetFormSchema that has the Formatters attached ok 82 - __clone() clones formatters, so that changes to the original one have no effect to the cloned formatter. ok 83 - __clone() clones form formatters ok 84 - __clone() clones form formatters ok 85 - __clone() clones form formatters ok 86 - __clone() clones form formatters ok 87 - __clone() clones form formatters ok 88 - __clone() clones form formatters ok 89 - __clone() clones form formatters ok 90 - __clone() clones form formatters ok 91 - __clone() clones form formatters # setDefaultFormFormatterName() ok 92 - setDefaultFormFormatterName() has the sfWidgetFormSchemaFormatterTable form formatter by default ok 93 - setDefaultFormFormatterName() changes the default form formatter name correctly # ->getJavaScripts() ->getStylesheets() ok 94 - ->getJavaScripts() returns an array of stylesheets ok 95 - ->getStylesheets() returns an array of JavaScripts # Looks like everything went fine.