def next_date(min_year = None, max_year = None):
        """
        Generates a random Date in the range ['minYear', 'maxYear'].
        This method generate dates without time (or time set to 00:00:00)

        :param min_year: (optional) minimum range value

        :param max_year: max range value

        :return: a random Date value.
        """
        current_year = datetime.datetime.utcnow().year
        min_year = min_year if min_year != None else current_year - RandomInteger.next_integer(10)
        max_year = max_year if max_year != None else current_year

        year = RandomInteger.next_integer(min_year, max_year)
        month = RandomInteger.next_integer(1, 13)
        day = RandomInteger.next_integer(1, 32)
        
        if month == 2:
            day = min(28, day)
        elif month in [4, 6, 9, 11]:
            day = min(30, day)

        return datetime.datetime(year, month, day, 0, 0, 0, 0, pytz.utc)
Generates a random Date in the range ['minYear', 'maxYear'].
        This method generate dates without time (or time set to 00:00:00)

        :param min_year: (optional) minimum range value

        :param max_year: max range value

        :return: a random Date value.