File tree Expand file tree Collapse file tree 3 files changed +25
-19
lines changed Expand file tree Collapse file tree 3 files changed +25
-19
lines changed Original file line number Diff line number Diff line change 11
11
from pebble import ThreadPool
12
12
import s3fs
13
13
import shutil
14
+ import traceback
14
15
from typing import Union
15
16
16
17
from cartiflette import BUCKET , PATH_WITHIN_BUCKET , FS , THREADS_DOWNLOAD
@@ -280,7 +281,8 @@ def func(args):
280
281
else :
281
282
paths = {}
282
283
# cleanup temp files
283
- shutil .rmtree (result ["root_cleanup" ])
284
+ if result ["root_cleanup" ]:
285
+ shutil .rmtree (result ["root_cleanup" ])
284
286
285
287
del result ["hash" ], result ["root_cleanup" ], result ["layers" ]
286
288
result ["paths" ] = paths
@@ -303,6 +305,7 @@ def func(args):
303
305
break
304
306
except Exception as e :
305
307
logger .error (e )
308
+ logger .error (traceback .format_exc ())
306
309
else :
307
310
for args in combinations :
308
311
files = deep_dict_update (files , func (args ))
Original file line number Diff line number Diff line change 2
2
import pytest
3
3
import requests
4
4
from requests_cache import CachedSession
5
+ import s3fs
5
6
import logging
6
7
7
8
from tests .conftest import (
10
11
CONTENT_DUMMY ,
11
12
)
12
13
14
+ from cartiflette import FS
13
15
from cartiflette .download .dataset import Dataset
16
+ from cartiflette .download .scraper import MasterScraper
14
17
15
18
16
19
logging .basicConfig (level = logging .INFO )
19
22
@pytest .fixture
20
23
def mock_Dataset_without_s3 (monkeypatch ):
21
24
monkeypatch .setattr (Dataset , "_get_last_md5" , lambda x : None )
22
- monkeypatch .setattr ("FS" )
25
+ # monkeypatch.setattr("FS")
23
26
24
27
25
28
@pytest .fixture
26
29
def total_mock_s3 (monkeypatch ):
27
30
monkeypatch .setattr (Dataset , "_get_last_md5" , lambda x : None )
28
31
29
- def mock_unpack (x ):
32
+ def mock_unpack (self , x ):
30
33
return {
31
- x .provider : {
32
- x .dataset_family : {
33
- x .source : {
34
- x .territory : {
35
- x .year : {
36
- "downloaded" : False ,
37
- "paths" : None ,
38
- "hash" : None ,
39
- }
40
- }
41
- }
42
- }
43
- }
34
+ "downloaded" : False ,
35
+ "layers" : None ,
36
+ "hash" : None ,
37
+ "root_cleanup" : None ,
44
38
}
45
39
46
- monkeypatch .setattr (Dataset , "download_unpack" , lambda x : mock_unpack )
40
+ monkeypatch .setattr (MasterScraper , "download_unpack" , mock_unpack )
41
+ # monkeypatch.setattr("cartiflette.THREADS_DOWNLOAD", 1)
42
+
43
+ def mock_ls (folder ):
44
+ return [f"{ folder } /md5.json" ]
45
+
46
+ monkeypatch .setattr (FS , "ls" , mock_ls )
47
47
48
48
49
49
class MockResponse :
Original file line number Diff line number Diff line change 4
4
import os
5
5
import requests_cache
6
6
import logging
7
+
7
8
from cartiflette .download .dataset import Dataset
8
9
from cartiflette .download .scraper import MasterScraper
9
-
10
10
from cartiflette .download .download import _download_sources
11
+ from cartiflette .download import download_all
11
12
from cartiflette .utils import import_yaml_config
12
13
from tests .conftest import (
13
14
DUMMY_FILE_1 ,
14
15
DUMMY_FILE_2 ,
15
16
HASH_DUMMY ,
16
17
)
18
+
17
19
from tests .mockups import (
18
20
mock_httpscraper_download_success ,
19
21
mock_httpscraper_download_success_corrupt_hash ,
@@ -285,5 +287,6 @@ def test_sources_yaml(mock_Dataset_without_s3):
285
287
286
288
287
289
def test_download_all (total_mock_s3 ):
288
- ret = _download_sources ()
290
+ ret = download_all ()
289
291
assert isinstance (ret , dict )
292
+ assert len (ret ) > 0
You can’t perform that action at this time.
0 commit comments