### Question:
XMLStorage implements IStorage { @Override public SportTypeList readSportTypeList(String source, SpeedMode defaultSpeedMode) throws STException { return xmlSportTypeList.readSportTypeList(source, defaultSpeedMode); } XMLStorage(); @Override SportTypeList readSportTypeList(String source, SpeedMode defaultSpeedMode); @Override void storeSportTypeList(SportTypeList sportTypeList, String destination); @Override ExerciseList readExerciseList(String source, SportTypeList sportTypeList); @Override void storeExerciseList(ExerciseList exerciseList, String destination); @Override NoteList readNoteList(String source); @Override void storeNoteList(NoteList noteList, String destination); @Override WeightList readWeightList(String source); @Override void storeWeightList(WeightList weightList, String destination);  }### Answer:
@Test public void testReadSportTypeList() throws STException { SportTypeList sportTypes = storage.readSportTypeList("misc/testdata/sport-types-valid.xml", SPEED_MODE); checkSportTypeListContent(sportTypes); SportTypeList sportTypesEmpty = storage.readSportTypeList("misc/testdata/sport-types-xyz.xml", SPEED_MODE); assertEquals(0, sportTypesEmpty.size()); assertThrows(STException.class, () -> storage.readSportTypeList("misc/testdata/sport-types-invalid.xml", SPEED_MODE)); }