@@ -141,9 +141,6 @@ def do_submission(self, name, rev, group=None, formats=["txt",], author=None):
141141 self .assertTrue (os .path .exists (os .path .join (self .staging_dir , u"%s-%s.%s" % (name , rev , format ))))
142142 self .assertEqual (Submission .objects .filter (name = name ).count (), 1 )
143143 submission = Submission .objects .get (name = name )
144- if len (submission .authors ) != 1 :
145- debug .show ('submission' )
146- debug .pprint ('submission.__dict__' )
147144 self .assertEqual (len (submission .authors ), 1 )
148145 a = submission .authors [0 ]
149146 self .assertEqual (a ["name" ], author .ascii )
@@ -397,7 +394,7 @@ def submit_existing(self, formats, change_authors=True, group_type='wg', stream_
397394
398395 # confirm
399396 mailbox_before = len (outbox )
400- r = self .client .post (confirm_url )
397+ r = self .client .post (confirm_url , { 'action' : 'confirm' } )
401398 self .assertEqual (r .status_code , 302 )
402399
403400 # check we have document events
@@ -526,7 +523,7 @@ def submit_new_individual(self, formats):
526523
527524 # confirm
528525 mailbox_before = len (outbox )
529- r = self .client .post (confirm_url )
526+ r = self .client .post (confirm_url , { 'action' : 'confirm' } )
530527 self .assertEqual (r .status_code , 302 )
531528
532529 draft = Document .objects .get (docalias__name = name )
@@ -574,12 +571,35 @@ def test_submit_update_individual(self):
574571 confirm_url = self .extract_confirm_url (outbox [- 1 ])
575572 self .assertFalse ("chairs have been copied" in unicode (outbox [- 1 ]))
576573 mailbox_before = len (outbox )
577- r = self .client .post (confirm_url )
574+ r = self .client .post (confirm_url , { 'action' : 'confirm' } )
578575 self .assertEqual (r .status_code , 302 )
576+ self .assertEqual (len (outbox ), mailbox_before + 3 )
579577 draft = Document .objects .get (docalias__name = name )
580578 self .assertEqual (draft .rev , rev )
581579 self .assertEqual (draft .relateddocument_set .filter (relationship_id = 'replaces' ).count (), replaces_count )
582580
581+ def test_submit_cancel_confirmation (self ):
582+ draft = make_test_data ()
583+ draft .group = None
584+ draft .save_with_history ([DocEvent .objects .create (doc = draft , rev = draft .rev , type = "added_comment" , by = Person .objects .get (user__username = "secretary" ), desc = "Test" )])
585+ name = draft .name
586+ old_rev = draft .rev
587+ rev = '%02d' % (int (draft .rev )+ 1 )
588+ status_url , author = self .do_submission (name , rev )
589+ mailbox_before = len (outbox )
590+ r = self .supply_extra_metadata (name , status_url , "Submitter Name" , "author@example.com" , replaces = '' )
591+ self .assertEqual (r .status_code , 302 )
592+ status_url = r ["Location" ]
593+ r = self .client .get (status_url )
594+ self .assertEqual (len (outbox ), mailbox_before + 1 )
595+ confirm_url = self .extract_confirm_url (outbox [- 1 ])
596+ mailbox_before = len (outbox )
597+ r = self .client .post (confirm_url , {'action' :'cancel' })
598+ self .assertEqual (r .status_code , 302 )
599+ self .assertEqual (len (outbox ), mailbox_before )
600+ draft = Document .objects .get (docalias__name = name )
601+ self .assertEqual (draft .rev , old_rev )
602+
583603 def test_submit_new_wg_with_dash (self ):
584604 make_test_data ()
585605
0 commit comments