### Question:
CalendarUtil { public static int getWeekPosition(int startYear, int startMonth, int startDay, int year, int month, int day) { LocalDate start = new LocalDate(startYear, startMonth, startDay).withDayOfWeek(1); LocalDate end = new LocalDate(year, month, day).withDayOfWeek(1); return Weeks.weeksBetween(start, end).getWeeks(); }  static Date getDate(LocalDate localDate, int type); static List<List<Date>> getMonthOfWeekDates(int year, int month); static List<Date> getMonthDates(int year, int month); static List<Date> getWeekDates(int year, int month, int day); static int getDayForWeek(int y, int m, int d); static int[] positionToDate(int position, int startY, int startM); static int getMonthPosition(int year1, int month1, int year2, int month2); static int getWeekPosition(int startYear, int startMonth, int startDay, int year, int month, int day); static List<Date> getWeekDaysForPosition(int startYear, int startMonth, int startDay, int positionWeek); static LocalDate getCurrentDate(); static int getMaxDayByYearMonth(int year,int month);  }### Answer:
@Test public void getWeekPosition() throws Exception { int weekPosition = CalendarUtil.getWeekPosition(2017, 7, 14, 2017, 8, 16); assertEquals(5, weekPosition); weekPosition = CalendarUtil.getWeekPosition(1980, 1, 1, 2018, 2, 25); assertEquals(1990, weekPosition); }