Show:
                            
                            
                            /**
                             * The DateAssert object provides functions to test JavaScript Date objects
                             * for a variety of cases.
                             * @namespace Test
                             * @module test
                             * @class DateAssert
                             * @static
                             */
                            
                            YUITest.DateAssert = {
                            
                                /**
                                 * Asserts that a date's month, day, and year are equal to another date's.
                                 * @param {Date} expected The expected date.
                                 * @param {Date} actual The actual date to test.
                                 * @param {String} message (Optional) The message to display if the assertion fails.
                                 * @method datesAreEqual
                                 * @static
                                 */
                                datesAreEqual : function (expected, actual, message){
                                    YUITest.Assert._increment();
                                    if (expected instanceof Date && actual instanceof Date){
                                        var msg = "";
                            
                                        //check years first
                                        if (expected.getFullYear() != actual.getFullYear()){
                                            msg = "Years should be equal.";
                                        }
                            
                                        //now check months
                                        if (expected.getMonth() != actual.getMonth()){
                                            msg = "Months should be equal.";
                                        }
                            
                                        //last, check the day of the month
                                        if (expected.getDate() != actual.getDate()){
                                            msg = "Days of month should be equal.";
                                        }
                            
                                        if (msg.length){
                                            throw new YUITest.ComparisonFailure(YUITest.Assert._formatMessage(message, msg), expected, actual);
                                        }
                                    } else {
                                        throw new TypeError("YUITest.DateAssert.datesAreEqual(): Expected and actual values must be Date objects.");
                                    }
                                },
                            
                                /**
                                 * Asserts that a date's hour, minutes, and seconds are equal to another date's.
                                 * @param {Date} expected The expected date.
                                 * @param {Date} actual The actual date to test.
                                 * @param {String} message (Optional) The message to display if the assertion fails.
                                 * @method timesAreEqual
                                 * @static
                                 */
                                timesAreEqual : function (expected, actual, message){
                                    YUITest.Assert._increment();
                                    if (expected instanceof Date && actual instanceof Date){
                                        var msg = "";
                            
                                        //check hours first
                                        if (expected.getHours() != actual.getHours()){
                                            msg = "Hours should be equal.";
                                        }
                            
                                        //now check minutes
                                        if (expected.getMinutes() != actual.getMinutes()){
                                            msg = "Minutes should be equal.";
                                        }
                            
                                        //last, check the seconds
                                        if (expected.getSeconds() != actual.getSeconds()){
                                            msg = "Seconds should be equal.";
                                        }
                            
                                        if (msg.length){
                                            throw new YUITest.ComparisonFailure(YUITest.Assert._formatMessage(message, msg), expected, actual);
                                        }
                                    } else {
                                        throw new TypeError("YUITest.DateAssert.timesAreEqual(): Expected and actual values must be Date objects.");
                                    }
                                }
                            
                            };