### Question:
DaoWebOutageRepository implements WebOutageRepository, InitializingBean { @Transactional public Outage[] getMatchingOutages(final OutageCriteria criteria) { final List<Outage> outages = new ArrayList<Outage>(); final List<OnmsOutage> onmsOutages = m_outageDao.findMatching(getOnmsCriteria(criteria)); for (final OnmsOutage outage : onmsOutages) { outages.add(mapOnmsOutageToOutage(outage)); } return outages.toArray(new Outage[0]); }  @Override void afterPropertiesSet(); @Transactional int countMatchingOutageSummaries(final OutageCriteria criteria); @Transactional int countMatchingOutages(OutageCriteria criteria); @Transactional OutageSummary[] getMatchingOutageSummaries(final OutageCriteria criteria); @Transactional Outage[] getMatchingOutages(final OutageCriteria criteria); @Transactional Outage getOutage(final int OutageId); @Transactional int countCurrentOutages(); @Transactional OutageSummary[] getCurrentOutages(final int rows);  }### Answer:
@Test @JUnitTemporaryDatabase public void testGetMatchingOutages(){ Outage[] outage = m_daoOutageRepo.getMatchingOutages(new OutageCriteria()); assertEquals(3, outage.length); outage = m_daoOutageRepo.getMatchingOutages(new OutageCriteria(new RegainedServiceDateBeforeFilter(new Date()))); assertEquals(1, outage.length); outage = m_daoOutageRepo.getMatchingOutages(new OutageCriteria(new OutageIdFilter(1))); assertEquals(1, outage.length); assertEquals(1, outage[0].getId()); outage = m_daoOutageRepo.getMatchingOutages(new OutageCriteria(new OutageIdFilter(2))); assertEquals(1, outage.length); assertEquals(2, outage[0].getId()); }