ImportData + test ImportData

Le code est fonctionnel
This commit is contained in:
yann_ 2020-12-21 19:24:45 +01:00 committed by name
parent 4d17091234
commit 2eb99132c7
2 changed files with 31 additions and 21 deletions

View file

@ -7,12 +7,14 @@ import java.net.MalformedURLException;
public class ImportData {
protected String url;
protected String repDes;
/**
* Le constructeur de ImportData
*/
ImportData(){
this.url = "https://www.fdj.fr/jeux-de-tirage/loto/statistiques";
this.repDes = "src/test/resources/";
}
/**
@ -23,6 +25,10 @@ public class ImportData {
this.url=url;
}
public void getUrl() {
}
private boolean UrlExist() {
try {
URL site = new URL(url);
@ -37,16 +43,6 @@ public class ImportData {
}
}
private boolean ZipNotExist(String filename) {
File directory = new File("src/main/java/resources/");
File[] files = directory.listFiles();
for (File f : files) {
if (f.getName().equals(filename))
return false;
}
return true;
}
public void DownloadCsvZip() {
if (UrlExist()) {
BufferedReader in = null;
@ -63,19 +59,16 @@ public class ImportData {
if (test.equals(urlZipLink.substring(50, 55))) {
nameZip = urlZipLink.substring(50,65);
urlZipLink = urlZipLink.substring(13,65);
if (ZipNotExist(nameZip)) {
try (BufferedInputStream bis = new BufferedInputStream(new URL(urlZipLink).openStream());
FileOutputStream fos = new FileOutputStream("src/main/java/resources/" + nameZip)) {
byte data[] = new byte[1024];
int byteContent;
while ((byteContent = bis.read(data, 0, 1024)) != -1) {
fos.write(data, 0, byteContent);
}
} catch (IOException e) {
e.printStackTrace(System.out);
try (BufferedInputStream bis = new BufferedInputStream(new URL(urlZipLink).openStream());
FileOutputStream fos = new FileOutputStream(repDes + nameZip)) {
byte data[] = new byte[1024];
int byteContent;
while ((byteContent = bis.read(data, 0, 1024)) != -1) {
fos.write(data, 0, byteContent);
}
} catch (IOException e) {
e.printStackTrace(System.out);
}
}
}
}

View file

@ -0,0 +1,17 @@
package fr.myny.data;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class ImportDataTest {
@Test
void downloadCsvZip() {
ImportData csv = new ImportData();
csv.DownloadCsvZip();
}
}