@@ -436,69 +436,111 @@ def test_clone_with_change_recommendation(self) -> None:
436436 )
437437
438438 def test_clone_with_change_recommendation_complex (self ) -> None :
439- # TODO: Reduce this to a minimum payload later.
440- # load_example_data should not be used and the first 4 requests
441- # should be unified into a shortened set_models statement.
442- self .load_example_data ()
443- response = self .request (
444- "meeting.create" ,
445- {
446- "committee_id" : 1 ,
447- "start_time" : None ,
448- "end_time" : None ,
449- "name" : "Dev-Meeting" ,
450- "location" : "" ,
451- "admin_ids" : [1 ],
452- "organization_tag_ids" : [],
453- "external_id" : "" ,
454- "language" : "en" ,
455- "set_as_template" : False ,
456- },
457- )
458- self .assert_status_code (response , 200 )
459- response = self .request (
460- "meeting.update" ,
461- {
462- "start_time" : 1924988400 ,
463- "end_time" : 1927580400 ,
439+ self .create_meeting ()
440+ self .create_meeting (
441+ 4 ,
442+ meeting_data = {
443+ "committee_id" : 60 ,
444+ "start_time" : datetime .fromtimestamp (1924988400 , ZoneInfo ("UTC" )),
445+ "end_time" : datetime .fromtimestamp (1927580400 , ZoneInfo ("UTC" )),
464446 "name" : "Dev Meeting" ,
465- "location" : "" ,
466- "organization_tag_ids" : [],
467- "external_id" : "" ,
468- "jitsi_domain" : "" ,
469- "jitsi_room_name" : "" ,
470- "jitsi_room_password" : "" ,
471- "id" : 2 ,
472- },
473- )
474- self .assert_status_code (response , 200 )
475- response = self .request (
476- "motion.create" ,
477- {
478- "meeting_id" : 2 ,
447+ "motions_preamble" : "The assembly may decide:" ,
448+ "motions_default_line_numbering" : "none" ,
449+ "motions_line_length" : 90 ,
450+ "motions_reason_required" : False ,
451+ "motions_origin_motion_toggle_default" : True ,
452+ "motions_enable_origin_motion_display" : True ,
453+ "motions_enable_text_on_projector" : True ,
454+ "motions_enable_reason_on_projector" : True ,
455+ "motions_enable_sidebox_on_projector" : True ,
456+ "motions_enable_recommendation_on_projector" : True ,
457+ "motions_show_referring_motions" : True ,
458+ "motions_show_sequential_number" : True ,
459+ "motions_recommendations_by" : "ABK" ,
460+ "motions_recommendation_text_mode" : "original" ,
461+ "motions_default_sorting" : "number" ,
462+ "motions_number_type" : "per_category" ,
463+ "motions_number_min_digits" : 3 ,
464+ "motions_number_with_blank" : False ,
465+ "motions_amendments_enabled" : True ,
466+ "motions_amendments_in_main_list" : True ,
467+ "motions_amendments_of_amendments" : True ,
468+ "motions_amendments_prefix" : "Ä-" ,
469+ "motions_amendments_text_mode" : "freestyle" ,
470+ "motions_amendments_multiple_paragraphs" : True ,
471+ "motions_supporters_min_amount" : 1 ,
472+ "motions_export_title" : "Motions" ,
473+ "motions_export_preamble" : "an export preamble" ,
474+ "motions_export_submitter_recommendation" : True ,
475+ "motions_export_follow_recommendation" : True ,
476+ "motion_poll_ballot_paper_selection" : "CUSTOM_NUMBER" ,
477+ "motion_poll_ballot_paper_number" : 8 ,
478+ "motion_poll_default_type" : "pseudoanonymous" ,
479+ "motion_poll_default_method" : "YNA" ,
480+ "motion_poll_default_onehundred_percent_base" : "YNA" ,
481+ "motion_poll_default_group_ids" : [],
482+ "motion_poll_default_backend" : "fast" ,
483+ },
484+ )
485+ self .set_user_groups (1 , [5 ])
486+ self .create_motion (
487+ 4 ,
488+ 1 ,
489+ motion_data = {
479490 "title" : "a" ,
480491 "text" : "<p> Vom Ödipuskomplex maßlos gequält, übt Wilfried zyklisches Jodeln.</p>" ,
481- "submitter_meeting_user_ids" : [4 ],
482- "workflow_id" : 3 ,
483- "agenda_create" : False ,
484- "agenda_type" : "internal" ,
492+ "number" : "1 - 1" ,
493+ "number_value" : 1 ,
494+ "category_weight" : 10000 ,
495+ "state_extension" : "<p>regeer</p>" ,
496+ "sort_weight" : 10000 ,
497+ "created" : datetime .fromtimestamp (1924988600 , ZoneInfo ("UTC" )),
498+ "last_modified" : datetime .fromtimestamp (1924988680 , ZoneInfo ("UTC" )),
499+ "start_line_number" : 1 ,
485500 },
486501 )
487- self .assert_status_code (response , 200 )
488- response = self .request (
489- "motion_change_recommendation.create" ,
502+ self .set_models (
490503 {
491- "internal" : False ,
492- "line_from" : 1 ,
493- "line_to" : 1 ,
494- "motion_id" : 5 ,
495- "rejected" : False ,
496- "text" : "<p>a Ödipuskomplex maßlos gequält, übt Wilfried zyklisches Jodeln.</p>" ,
497- "type" : "replacement" ,
498- },
504+ ** {
505+ f"motion_{ role } /1" : {
506+ "meeting_user_id" : 1 ,
507+ "motion_id" : 1 ,
508+ "meeting_id" : 4 ,
509+ ** ({"weight" : 1 } if role != "supporter" else {}),
510+ }
511+ for role in [
512+ "editor" ,
513+ "submitter" ,
514+ "supporter" ,
515+ "working_group_speaker" ,
516+ ]
517+ },
518+ "motion_change_recommendation/111" : {
519+ "line_from" : 11 ,
520+ "line_to" : 23 ,
521+ "text" : "<p>a Ödipuskomplex maßlos gequält, übt Wilfried zyklisches Jodeln.</p>" ,
522+ "motion_id" : 1 ,
523+ "meeting_id" : 4 ,
524+ "rejected" : False ,
525+ },
526+ "motion_change_recommendation/112" : {
527+ "line_from" : 1 ,
528+ "line_to" : 1 ,
529+ "text" : "Falsches Üben von Xylophonmusik quält jeden größeren Zwerg." ,
530+ "motion_id" : 1 ,
531+ "meeting_id" : 4 ,
532+ "creation_time" : datetime .fromtimestamp (
533+ 1924988680 , ZoneInfo ("UTC" )
534+ ),
535+ },
536+ "agenda_item/1" : {
537+ "meeting_id" : 4 ,
538+ "content_object_id" : "motion/1" ,
539+ "type" : "internal" ,
540+ },
541+ }
499542 )
500- self .assert_status_code (response , 200 )
501- response = self .request ("meeting.clone" , {"meeting_id" : 2 })
543+ response = self .request ("meeting.clone" , {"meeting_id" : 4 })
502544 self .assert_status_code (response , 200 )
503545
504546 def test_clone_with_recommendation_extension (self ) -> None :
0 commit comments