1
1
from pathlib import Path
2
2
import pytest
3
- from nucleus import Dataset , DatasetItem , UploadResponse , Model , ModelRun
3
+ from nucleus import Dataset , DatasetItem , UploadResponse , Model , ModelRun , BoxPrediction
4
4
from nucleus .constants import (
5
5
NEW_ITEMS ,
6
6
UPDATED_ITEMS ,
10
10
DATASET_ID_KEY ,
11
11
)
12
12
13
- TEST_MODEL_NAME = '[PyTest] Test Model'
14
- TEST_REFERENCE_ID = '[PyTest] Test Model'
13
+ TEST_MODEL_NAME = '[PyTest] Test Model 3 '
14
+ TEST_REFERENCE_ID = '[PyTest] Test Model 3 '
15
15
TEST_METADATA = {
16
16
'key' : 'value'
17
17
}
18
- TEST_MODEL_RUN_NAME = '[PyTest] Test ModelRun'
18
+ TEST_MODEL_RUN_NAME = '[PyTest] Test ModelRun 3 '
19
19
TEST_DATASET_NAME = '[PyTest] Test Dataset'
20
20
TEST_SLICE_NAME = '[PyTest] Test Slice'
21
21
TEST_IMG_URLS = [
25
25
"s3://scaleapi-attachments/BDD/BDD/bdd100k/images/100k/train/06924f46-1708b96f.jpg" ,
26
26
"s3://scaleapi-attachments/BDD/BDD/bdd100k/images/100k/train/89b42832-10d662f4.jpg" ,
27
27
]
28
+ TEST_DATASET_ITEMS = [
29
+ DatasetItem (TEST_IMG_URLS [0 ], '1' ),
30
+ DatasetItem (TEST_IMG_URLS [1 ], '2' ),
31
+ DatasetItem (TEST_IMG_URLS [2 ], '3' ),
32
+ DatasetItem (TEST_IMG_URLS [3 ], '4' )
33
+ ]
34
+ TEST_PREDS = [
35
+ BoxPrediction ('car' , 0 , 0 , 100 , 100 , '1' ),
36
+ BoxPrediction ('car' , 0 , 0 , 100 , 100 , '2' ),
37
+ BoxPrediction ('car' , 0 , 0 , 100 , 100 , '3' ),
38
+ BoxPrediction ('car' , 0 , 0 , 100 , 100 , '4' )
39
+ ]
28
40
29
41
@pytest .fixture ()
30
42
def dataset (CLIENT ):
31
43
ds = CLIENT .create_dataset (TEST_DATASET_NAME )
44
+ ds .append (TEST_DATASET_ITEMS )
32
45
yield ds
33
46
34
47
CLIENT .delete_dataset (ds .id )
35
48
36
- def test_model_creation_and_listing (CLIENT ):
49
+ def test_model_creation_and_listing (CLIENT , dataset ):
37
50
# Creation
38
51
m = CLIENT .add_model (TEST_MODEL_NAME , TEST_REFERENCE_ID , TEST_METADATA )
39
- m_run = m .create_run (TEST_MODEL_RUN_NAME , TEST_DATASET , TEST_PREDS , TEST_METADATA )
52
+ m_run = m .create_run (TEST_MODEL_RUN_NAME , dataset , TEST_PREDS , TEST_METADATA )
53
+ m_run .commit ()
40
54
41
55
assert isinstance (m , Model )
42
56
assert isinstance (m_run , ModelRun )
@@ -47,4 +61,7 @@ def test_model_creation_and_listing(CLIENT):
47
61
assert m in ms
48
62
49
63
CLIENT .delete_model (m .id )
50
- CLIENT .delete_model_run (m_run .model_run_id )
64
+
65
+ ms = CLIENT .list_models ()
66
+
67
+ assert m not in ms
0 commit comments