@@ -58,76 +58,70 @@ def test_get_datarow_metadata_ontology(mdo):
5858 assert len (mdo .custom_fields ) == 0
5959
6060
61- def test_get_datarow_metadata (datarow ):
62- """No metadata"""
63- md = datarow .metadata
64- assert len (md )
65-
66-
6761def test_bulk_upsert_datarow_metadata (datarow , mdo : DataRowMetadataOntology ):
68- n_fields = len (datarow .metadata ["fields" ])
6962 metadata = make_metadata (datarow .uid )
7063 mdo .bulk_upsert ([metadata ])
71- assert len (datarow .metadata ["fields" ]) > n_fields
64+ assert len (mdo .bulk_export ([datarow .uid ]))
65+ assert len (mdo .bulk_export ([datarow .uid ])[0 ].fields )
7266
7367
7468def test_parse_upsert_datarow_metadata (datarow , mdo : DataRowMetadataOntology ):
7569 metadata = make_metadata (datarow .uid )
7670 mdo .bulk_upsert ([metadata ])
77- assert mdo .parse_metadata ([datarow .metadata ])
71+ assert mdo .bulk_export ([datarow .uid ])
7872
7973
8074@pytest .mark .slow
8175def test_large_bulk_upsert_datarow_metadata (big_dataset , mdo ):
8276 metadata = []
83- for dr in big_dataset .export_data_rows ():
77+ data_row_ids = []
78+ for dr in big_dataset .data_rows ():
8479 metadata .append (make_metadata (dr .uid ))
80+ data_row_ids .append (dr .uid )
8581 errors = mdo .bulk_upsert (metadata )
8682 assert len (errors ) == 0
8783
88- for dr in big_dataset .export_data_rows ():
89- assert len (dr .metadata ["fields" ])
90- break
84+ metadata_lookup = {
85+ metadata .data_row_id : metadata
86+ for metadata in mdo .bulk_export (data_row_ids )
87+ }
88+ for data_row_id in data_row_ids :
89+ assert len (metadata_lookup .get (data_row_id ).fields )
9190
9291
9392def test_bulk_delete_datarow_metadata (datarow , mdo ):
9493 """test bulk deletes for all fields"""
9594 metadata = make_metadata (datarow .uid )
9695 mdo .bulk_upsert ([metadata ])
9796
98- assert len (datarow .metadata [ "fields" ] )
99- upload_ids = [m .schema_id for m in metadata .fields ]
97+ assert len (mdo . bulk_export ([ datarow .uid ])[ 0 ]. fields )
98+ upload_ids = [m .schema_id for m in metadata .fields [: - 2 ] ]
10099 mdo .bulk_delete (
101100 [DeleteDataRowMetadata (data_row_id = datarow .uid , fields = upload_ids )])
102- remaining_ids = set ([f ['schema_id' ] for f in datarow .metadata ["fields" ]])
101+ remaining_ids = set (
102+ [f .schema_id for f in mdo .bulk_export ([datarow .uid ])[0 ].fields ])
103103 assert not len (remaining_ids .intersection (set (upload_ids )))
104104
105105
106- @pytest .mark .skip
107106def test_bulk_partial_delete_datarow_metadata (datarow , mdo ):
108107 """Delete a single from metadata"""
109- n_fields = len (datarow .metadata ["fields" ])
110-
108+ n_fields = len (mdo .bulk_export ([datarow .uid ])[0 ].fields )
111109 metadata = make_metadata (datarow .uid )
112110 mdo .bulk_upsert ([metadata ])
113111
114- assert len (datarow .metadata ["fields" ]) == (n_fields + 5 )
112+ assert len (mdo .bulk_export (
113+ [datarow .uid ])[0 ].fields ) == (n_fields + len (metadata .fields ))
115114
116115 mdo .bulk_delete ([
117116 DeleteDataRowMetadata (data_row_id = datarow .uid , fields = [TEXT_SCHEMA_ID ])
118117 ])
118+ assert len (mdo .bulk_export (
119+ [datarow .uid ])[0 ].fields ) == (n_fields + len (metadata .fields ) - 1 )
119120
120- assert len (datarow .metadata ["fields" ]) == (n_fields + 4 )
121121
122-
123- @pytest .mark .skip
124122def test_large_bulk_delete_datarow_metadata (big_dataset , mdo ):
125123 metadata = []
126- n_fields_start = 0
127- for idx , dr in enumerate (big_dataset .export_data_rows ()):
128- if idx == 0 :
129- n_fields_start = len (dr .metadata ["fields" ])
130-
124+ for dr in big_dataset .data_rows ():
131125 metadata .append (
132126 DataRowMetadata (data_row_id = dr .uid ,
133127 fields = [
@@ -153,27 +147,27 @@ def test_large_bulk_delete_datarow_metadata(big_dataset, mdo):
153147 errors = mdo .bulk_delete (deletes )
154148 assert len (errors ) == 0
155149 for dr in big_dataset .data_rows ():
156- assert len ( dr . metadata [ "fields" ]) == n_fields_start
157- break
150+ # 1 remaining because only the embeddings id overlaps
151+ assert len ( mdo . bulk_export ([ dr . uid ])[ 0 ]. fields ) == 1
158152
159153
160- @pytest .mark .skip
161154def test_bulk_delete_datarow_enum_metadata (datarow : DataRow , mdo ):
162155 """test bulk deletes for non non fields"""
163- n_fields = len (datarow .metadata [ "fields" ] )
156+ n_fields = len (mdo . bulk_export ([ datarow .uid ])[ 0 ]. fields )
164157 metadata = make_metadata (datarow .uid )
165158 metadata .fields = [
166159 m for m in metadata .fields if m .schema_id == SPLIT_SCHEMA_ID
167160 ]
168161 mdo .bulk_upsert ([metadata ])
169- assert len (datarow .metadata ["fields" ]) == len (
162+
163+ assert len (mdo .bulk_export ([datarow .uid ])[0 ].fields ) == len (
170164 set ([x .schema_id for x in metadata .fields ] +
171- [x [ ' schema_id' ] for x in datarow .metadata [ "fields" ] ]))
165+ [x . schema_id for x in mdo . bulk_export ([ datarow .uid ])[ 0 ]. fields ]))
172166
173167 mdo .bulk_delete ([
174168 DeleteDataRowMetadata (data_row_id = datarow .uid , fields = [SPLIT_SCHEMA_ID ])
175169 ])
176- assert len (datarow .metadata [ "fields" ] ) == n_fields
170+ assert len (mdo . bulk_export ([ datarow .uid ])[ 0 ]. fields ) == n_fields
177171
178172
179173def test_raise_enum_upsert_schema_error (datarow , mdo ):
@@ -209,45 +203,44 @@ def test_delete_non_existent_schema_id(datarow, mdo):
209203
210204
211205@pytest .mark .slow
212- @pytest .mark .skip ("Test is inconsistent." )
213206def test_large_bulk_delete_non_existent_schema_id (big_dataset , mdo ):
214207 deletes = []
215208 n_fields_start = 0
216- for idx , dr in enumerate (big_dataset .export_data_rows ()):
209+ for idx , dr in enumerate (big_dataset .data_rows ()):
217210 if idx == 0 :
218- n_fields_start = len (dr .metadata [ "fields" ] )
211+ n_fields_start = len (mdo . bulk_export ([ dr .uid ])[ 0 ]. fields )
219212 deletes .append (
220213 DeleteDataRowMetadata (data_row_id = dr .uid ,
221214 fields = [EMBEDDING_SCHEMA_ID ]))
222215 errors = mdo .bulk_delete (deletes )
223216 assert len (errors ) == 0
224217
225218 for dr in big_dataset .export_data_rows ():
226- assert len (dr .metadata [ "fields" ] ) == n_fields_start
219+ assert len (mdo . bulk_export ([ dr .uid ])[ 0 ]. fields ) == n_fields_start
227220 break
228221
229222
230223def test_parse_raw_metadata (mdo ):
231224 example = {
232- 'data_row_id ' :
225+ 'dataRowId ' :
233226 'ckr6kkfx801ui0yrtg9fje8xh' ,
234227 'fields' : [{
235- 'schema_id ' : 'cko8s9r5v0001h2dk9elqdidh' ,
228+ 'schemaId ' : 'cko8s9r5v0001h2dk9elqdidh' ,
236229 'value' : 'my-new-message'
237230 }, {
238- 'schema_id ' : 'cko8sbczn0002h2dkdaxb5kal' ,
231+ 'schemaId ' : 'cko8sbczn0002h2dkdaxb5kal' ,
239232 'value' : {}
240233 }, {
241- 'schema_id ' : 'cko8sbscr0003h2dk04w86hof' ,
234+ 'schemaId ' : 'cko8sbscr0003h2dk04w86hof' ,
242235 'value' : {}
243236 }, {
244- 'schema_id ' : 'cko8sdzv70006h2dk8jg64zvb' ,
237+ 'schemaId ' : 'cko8sdzv70006h2dk8jg64zvb' ,
245238 'value' : '2021-07-20T21:41:14.606710Z'
246239 }]
247240 }
248241
249242 parsed = mdo .parse_metadata ([example ])
250243 assert len (parsed ) == 1
251244 row = parsed [0 ]
252- assert row .data_row_id == example ["data_row_id " ]
245+ assert row .data_row_id == example ["dataRowId " ]
253246 assert len (row .fields ) == 3
0 commit comments