throws FileNotFoundException,
ValidationException,
ReportException,
ReportDownloadResponseException,
IOException {
ReportException ex =
new ReportException("ReportException", new Exception("UnitTest Retryable Server Error"));
doThrow(ex).when(mockedRunnableDownloader).downloadFileToFileSystem();
mockedRunnableDownloader.run();
verify(mockedRunnableDownloader, times(5)).downloadFileToFileSystem();
verify(mockedRunnableDownloader, times(1)).run();