### Question:
AppSummaryService { long getTimestamp(long runId, AggregationConstants.AGGREGATION_TYPE aggType) { if (AggregationConstants.AGGREGATION_TYPE.DAILY.equals(aggType)) { long dayTimestamp = runId - (runId % Constants.MILLIS_ONE_DAY); return dayTimestamp; } else if (AggregationConstants.AGGREGATION_TYPE.WEEKLY.equals(aggType)) { Calendar c = Calendar.getInstance(); c.setTimeInMillis(runId); int d = c.get(Calendar.DAY_OF_WEEK); long weekTimestamp = runId - (d - 1) * Constants.MILLIS_ONE_DAY; weekTimestamp = weekTimestamp - weekTimestamp % Constants.MILLIS_ONE_DAY; return weekTimestamp; } return 0L; } AppSummaryService(Connection hbaseConnection); List<AppSummary> getNewApps(JobHistoryService jhs, String cluster,
      String user, long startTime, long endTime, int limit); List<AppKey> createNewAppKeysFromResults(Scan scan, long startTime,
      long endTime, int maxCount); boolean aggregateJobDetails(JobDetails jobDetails,
      AggregationConstants.AGGREGATION_TYPE aggType); List<AppSummary> getAllApps(String cluster, String user,
      long startTime, long endTime, int limit);  }### Answer:
@Test public void testGetDayTimestamp() throws IOException { long ts = 1402698420000L; long expectedTop = 1402617600000L; AppSummaryService appSummaryService = new AppSummaryService(hbaseConnection); assertEquals((Long) expectedTop, (Long) appSummaryService.getTimestamp(ts, AggregationConstants.AGGREGATION_TYPE.DAILY)); }
@Test public void testGetWeekTimestamp() throws IOException { long ts = 1402698420000L; long expectedTop = 1402185600000L; AppSummaryService appSummaryService = new AppSummaryService(hbaseConnection); assertEquals((Long) expectedTop, (Long) appSummaryService.getTimestamp(ts, AggregationConstants.AGGREGATION_TYPE.WEEKLY)); }