Files named displayedDaysFor*CalculationTestData hold data for testing if UISchedule caluclates dates that javascriptwidget will need for initial date range.Here is the format:a,b,c,d,e,f,g,h,i,i,j,kwherea - day of week from which week starts (1-sunday,2-monday,etc.)b - show weekends (1-true,0-false)c - initial date yeard - initial date monthe - initial date dayf - expected start yearg - expected start monthh - expected start dayi - expected end yearj - expected end monthk - expected end dayIf anything in algorithm changes and test data will become invalid, they can be easily recreated by putting followingcode into UISchedule.getScheduleData method Calendar calendar = Calendar.getInstance(); calendar.setTime(startDate);// calendar.add(Calendar.DATE, 3); //for generating data for week view// calendar.add(Calendar.DATE, 9); //for generating data for month view //for generating data for day view no incrementing is required setDate(calendar.getTime()); final Date firstDisplayedDay = getFirstDisplayedDay(this); Calendar firstDayCalendar = Calendar.getInstance(); firstDayCalendar.setTime(firstDisplayedDay); Calendar startDateCalendar = Calendar.getInstance(); startDateCalendar.setTime(startDate); Calendar endDateCalendar = Calendar.getInstance(); endDateCalendar.setTime(endDate); Calendar lastDayCalendar = Calendar.getInstance(); lastDayCalendar.setTime(getLastDisplayedDate(this)); System.out.println("" + getFirstDay() + "," + (isShowWeekends(this) ? 1 : 0) + "," + calendar.get(Calendar.YEAR) + "," + calendar.get(Calendar.MONTH) + "," + calendar.get(Calendar.DATE) + "," + startDateCalendar.get(Calendar.YEAR) + "," + startDateCalendar.get(Calendar.MONTH) + "," + startDateCalendar.get(Calendar.DATE) + "," + endDateCalendar.get(Calendar.YEAR) + "," + endDateCalendar.get(Calendar.MONTH) + "," + endDateCalendar.get(Calendar.DATE)// + "," + firstDayCalendar.get(Calendar.YEAR) + "," + firstDayCalendar.get(Calendar.MONTH) + "," + firstDayCalendar.get(Calendar.DATE)// + "," + lastDayCalendar.get(Calendar.YEAR) + "," + lastDayCalendar.get(Calendar.MONTH) + "," + lastDayCalendar.get(Calendar.DATE) );If you do not want to click several thousand times to navigate through dates in schedule widget just add this to your page (index.xhtml in demo fits great): <input type="button" value="Lunch auto navigation" onclick="lunchAutoNavigation()"/> <script> function lunchAutoNavigation() { var fc = jQuery('#sf\\:schedule:first'); fc.fullCalendar('next'); if(fc.fullCalendar('getDate').getFullYear() < 2020) setTimeout("lunchAutoNavigation()",250); } </script>Test data should cover combinations of firstDay (1-7), showWeekends(true/false) and : - 20 years for month view - 5 years for week viewFor day view it is unnecesary to include combinations of firstDay, and date range should cover 2 years only.Just remember to avoid blank lines, especially at the end of file.