3838from baserow .contrib .builder .elements .handler import ElementHandler
3939from baserow .contrib .builder .elements .mixins import (
4040 ContainerElementTypeMixin ,
41- FormElementTypeMixin ,
4241)
4342from baserow .contrib .builder .elements .models import (
4443 ButtonElement ,
6463 element_type_registry ,
6564)
6665from baserow .contrib .builder .elements .service import ElementService
66+ from baserow .contrib .builder .pages .handler import PageHandler
6767from baserow .contrib .builder .pages .service import PageService
6868from baserow .contrib .database .fields .handler import FieldHandler
6969from baserow .core .handler import CoreHandler
@@ -269,7 +269,7 @@ def test_link_element_import_export_formula(data_fixture):
269269 # After applying the ID mapping the imported formula should have updated
270270 # the data source IDs
271271 id_mapping = {"builder_data_sources" : {data_source_1 .id : data_source_2 .id }}
272- imported_element = element_type . import_serialized (page , serialized , id_mapping )
272+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
273273
274274 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
275275 expected_query_formula = f"get('data_source.{ data_source_2 .id } .field_2')"
@@ -300,7 +300,7 @@ def test_form_container_element_import_export_formula(data_fixture):
300300 # After applying the ID mapping the imported formula should have updated
301301 # the data source IDs
302302 id_mapping = {"builder_data_sources" : {data_source_1 .id : data_source_2 .id }}
303- imported_element = element_type . import_serialized (page , serialized , id_mapping )
303+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
304304
305305 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
306306 assert imported_element .submit_button_label ["formula" ] == expected_formula
@@ -339,7 +339,7 @@ def test_text_element_import_export_formula(data_fixture):
339339 # After applying the ID mapping the imported formula should have updated
340340 # the data source IDs
341341 id_mapping = {"builder_data_sources" : {data_source_1 .id : data_source_2 .id }}
342- imported_element = element_type . import_serialized (page , serialized , id_mapping )
342+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
343343
344344 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
345345 assert imported_element .value ["formula" ] == expected_formula
@@ -363,7 +363,7 @@ def test_input_text_element_import_export_formula(data_fixture):
363363 # After applying the ID mapping the imported formula should have updated
364364 # the data source IDs
365365 id_mapping = {"builder_data_sources" : {data_source_1 .id : data_source_2 .id }}
366- imported_element = element_type . import_serialized (page , serialized , id_mapping )
366+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
367367
368368 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
369369 assert imported_element .label ["formula" ] == expected_formula
@@ -388,7 +388,7 @@ def test_image_element_import_export_formula(data_fixture):
388388 # After applying the ID mapping the imported formula should have updated
389389 # the data source IDs
390390 id_mapping = {"builder_data_sources" : {data_source_1 .id : data_source_2 .id }}
391- imported_element = element_type . import_serialized (page , serialized , id_mapping )
391+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
392392
393393 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
394394 assert imported_element .image_url ["formula" ] == expected_formula
@@ -411,7 +411,7 @@ def test_button_element_import_export_formula(data_fixture):
411411 # After applying the ID mapping the imported formula should have updated
412412 # the data source IDs
413413 id_mapping = {"builder_data_sources" : {data_source_1 .id : data_source_2 .id }}
414- imported_element = element_type . import_serialized (page , serialized , id_mapping )
414+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
415415
416416 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
417417 assert imported_element .value ["formula" ] == expected_formula
@@ -500,7 +500,7 @@ def test_choice_element_import_export_formula(data_fixture):
500500 # After applying the ID mapping the imported formula should have updated
501501 # the data source IDs
502502 id_mapping = {"builder_data_sources" : {data_source_1 .id : data_source_2 .id }}
503- imported_element = element_type . import_serialized (page , serialized , id_mapping )
503+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
504504
505505 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
506506 assert imported_element .label ["formula" ] == expected_formula
@@ -793,26 +793,20 @@ def test_element_type_import_element_priority():
793793 for element_type in element_types
794794 if isinstance (element_type , ContainerElementTypeMixin )
795795 ]
796- form_element_types = [
797- element_type
798- for element_type in element_types
799- if isinstance (element_type , FormElementTypeMixin )
800- ]
801796 other_element_types = [
802797 element_type
803798 for element_type in element_types
804799 if not isinstance (element_type , ContainerElementTypeMixin )
805- and not isinstance (element_type , FormElementTypeMixin )
806800 ]
807- manual_ordering = container_element_types + form_element_types + other_element_types
801+ manual_ordering = container_element_types + other_element_types
808802 expected_ordering = sorted (
809803 element_types ,
810804 key = lambda element_type : element_type .import_element_priority ,
811805 reverse = True ,
812806 )
813807 assert manual_ordering == expected_ordering , (
814808 "The element types ordering are expected to be: "
815- "containers first, then form elements, then everything else."
809+ "containers first, then everything else."
816810 )
817811
818812
@@ -852,7 +846,7 @@ def test_checkbox_element_import_export_formula(data_fixture):
852846 # After applying the ID mapping the imported formula should have updated
853847 # the data source IDs
854848 id_mapping = {"builder_data_sources" : {data_source_1 .id : data_source_2 .id }}
855- imported_element = element_type . import_serialized (page , serialized , id_mapping )
849+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
856850
857851 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
858852 assert imported_element .label ["formula" ] == expected_formula
@@ -909,8 +903,9 @@ def test_iframe_element_import_export_formula(data_fixture):
909903
910904 # After applying the ID mapping the imported formula should have updated
911905 # the data source IDs
906+ # rather than in element_type.import_serialized.
912907 id_mapping = {"builder_data_sources" : {data_source_1 .id : data_source_2 .id }}
913- imported_element = element_type . import_serialized (page , serialized , id_mapping )
908+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
914909
915910 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
916911 assert imported_element .url ["formula" ] == expected_formula
@@ -961,8 +956,8 @@ def test_image_element_import_export(data_fixture, fake, storage):
961956 image_file .delete ()
962957
963958 with ZipFile (zip_buffer , "r" , ZIP_DEFLATED , False ) as files_zip :
964- imported_element = element_type . import_serialized (
965- page , serialized , id_mapping , files_zip = files_zip , storage = storage
959+ [ imported_element ] = PageHandler (). import_elements (
960+ page , [ serialized ] , id_mapping , files_zip = files_zip , storage = storage
966961 )
967962
968963 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
@@ -995,7 +990,7 @@ def test_choice_element_import_export(data_fixture):
995990 # the data source IDs
996991 id_mapping = {"builder_data_sources" : {42 : data_source_2 .id }}
997992
998- imported_element = element_type . import_serialized (page , serialized , id_mapping )
993+ [ imported_element ] = PageHandler (). import_elements (page , [ serialized ] , id_mapping )
999994
1000995 expected_formula = f"get('data_source.{ data_source_2 .id } .field_1')"
1001996 assert imported_element .label ["formula" ] == expected_formula
0 commit comments