Hej hej,
mam 2 metody - eksport listy różnych obiektów do pliku oraz ich odczyt i wrzucenie do listy:
public static void exportToJson(List<Shape> list, String path) throws IOException {
File file = new File(path);
ObjectMapper mapper = new ObjectMapper();
mapper.enableDefaultTyping();
mapper.writeValue(new File(file.getName()), list);
}
public static List<Shape> importFromJson(String path) throws IOException {
File file = new File(path);
ObjectMapper mapper = new ObjectMapper();
mapper.enableDefaultTyping();
return mapper.readValue(file, ArrayList.class);
}
Chcę napisać do tego testy. Wyczytałem, że należy użyć, aby pliki po teście były kasowane
@Rule
public TemporaryFolder temporaryFolder = new TemporaryFolder();
i zrobiłem coś takiego
expectedFile = mock(File.class);
when(expectedFile.getName()).thenReturn("file.json");
temporaryFolder.newFile(expectedFile.getName());
Jednak co dalej powinienem zrobić, bo nie wiem jak dodać treść do tego pliku? Nie wiem czy w ogóle idę w dobrym kierunku. Generalnie zamysł mam taki, że do testowania eksportu porównam sobie plik który utworzy ta metoda z expectedResult, jednak jak zamockować treść expectedResult?