devtools/testlib.py
branchstable
changeset 7060 f26a1cbddc91
parent 7039 df0e8581b06f
child 7061 bb2080547722
child 7071 db7608cb32bc
equal deleted inserted replaced
7058:ea22892e82d4 7060:f26a1cbddc91
   850         # doctest returns tuple (failure_count, test_count)
   850         # doctest returns tuple (failure_count, test_count)
   851         result = self.shell().process_script(testfile)
   851         result = self.shell().process_script(testfile)
   852         if result[0] and result[1]:
   852         if result[0] and result[1]:
   853             raise self.failureException("doctest file '%s' failed"
   853             raise self.failureException("doctest file '%s' failed"
   854                                         % testfile)
   854                                         % testfile)
       
   855 
       
   856     # notifications ############################################################
       
   857 
       
   858     def assertSentEmail(self, subject, recipients=None, nb_msgs=None):
       
   859         """test recipients in system mailbox for given email subject
       
   860 
       
   861         :param subject: email subject to find in mailbox
       
   862         :param recipients: list of email recipients
       
   863         :param nb_msgs: expected number of entries
       
   864         :returns: list of matched emails
       
   865         """
       
   866         messages = [email for email in MAILBOX
       
   867                     if email.message.get('Subject') == subject]
       
   868         if recipients is not None:
       
   869             sent_to = set()
       
   870             for msg in messages:
       
   871                 sent_to.update(msg.recipients)
       
   872             self.assertSetEqual(set(recipients), sent_to)
       
   873         if nb_msgs is not None:
       
   874             self.assertEqual(len(MAILBOX), nb_msgs)
       
   875         return messages
   855 
   876 
   856     # deprecated ###############################################################
   877     # deprecated ###############################################################
   857 
   878 
   858     @deprecated('[3.8] use self.execute(...).get_entity(0, 0)')
   879     @deprecated('[3.8] use self.execute(...).get_entity(0, 0)')
   859     def entity(self, rql, args=None, eidkey=None, req=None):
   880     def entity(self, rql, args=None, eidkey=None, req=None):