### Question:
DayImpression implements Serializable { public static DayImpression buildEmptyDayImpression(String date) { DayImpression dayImpression = new DayImpression(); dayImpression.setDate(date); dayImpression.hours = new ArrayList<>(); for (int i = 0; i < 24; i++) { Impression impression = new Impression(); dayImpression.hours.add(impression); } return dayImpression; } DayImpression(String date, List<Impression> hours);  DayImpression();  DayImpression(Double[] dayCounts);  DayImpression(Object hoursMap); String getDate(); void setDate(String date); List<Impression> getHours(); void setHours(List<Impression> hours); void initAggregate(double[] aggregatedHCounts); long countImpressions(double price, TargetingChannel.PriceModel priceModel); static DayImpression add(DayImpression d1, DayImpression d2); static DayImpression buildEmptyDayImpression(String date); static DayImpression subtract(DayImpression d1, DayImpression d2); static DayImpression multiply(DayImpression d1, double r); @Override String toString();  }### Answer:
@Test public void buildEmptyDayImpression() { DayImpression res = DayImpression.buildEmptyDayImpression("2018-01-05"); DayImpression exp = new DayImpression(); exp.setDate("2018-01-05"); List<Impression> hrs = new ArrayList(); H0 h0t = new H0(0); H1 h1t = new H1(0); H2 h2t = new H2(0); H3 h3t = new H3(0); Impression imp = new Impression(h0t, h1t, h2t, h3t); for (int i = 0; i < 24; i++) { hrs.add(imp); } exp.setHours(hrs); assertEquals(exp.toString(), res.toString()); }