def do_receivers_messages_and_unread_verification(self): # Receiver1 check the presence of the whistleblower message (only 1) x = yield receiver.get_receivertip_list(self.receiver1_desc['id'], 'en') # Receiver1 send one message msgrequest = {'content': u'Receiver1 send a message to WB'} k = yield rtip.create_message_receiver(self.receiver1_desc['id'], self.rtip1_id, msgrequest) self.assertEqual(k['visualized'], False) self.assertEqual(k['content'], msgrequest['content']) # Whistleblower check the presence of receiver1 unread message receiver_info_list = yield wbtip.get_wbtip_receivers_list( self.wbtip_id, 'en') for r in receiver_info_list: if r['id'] == self.receiver1_desc['id']: self.assertEqual(r['name'], self.receiver1_desc['name']) else: self.assertEqual(r['name'], self.receiver2_desc['name']) # Receiver2 check the presence of the whistleblower message (2 expected) a = yield receiver.get_receivertip_list(self.receiver1_desc['id'], 'en') self.assertEqual(len(a), 1) # Receiver2 READ the messages from the whistleblower unread = yield rtip.get_messages_list(self.receiver2_desc['id'], self.rtip2_id) self.assertEqual(unread[0]['visualized'], unread[1]['visualized']) self.assertEqual(unread[0]['visualized'], False) readed = yield rtip.get_messages_list(self.receiver2_desc['id'], self.rtip2_id) self.assertEqual(readed[0]['visualized'], readed[1]['visualized']) self.assertEqual(readed[0]['visualized'], True) # Receiver2 send two message msgrequest = {'content': u'Receiver2 send #1/2 message to WB'} yield rtip.create_message_receiver(self.receiver2_desc['id'], self.rtip2_id, msgrequest) msgrequest = {'content': u'Receiver2 send #2/2 message to WB'} yield rtip.create_message_receiver(self.receiver2_desc['id'], self.rtip2_id, msgrequest) # Whistleblower read the messages from Receiver2 wunread = yield wbtip.get_messages_content(self.wbtip_id, self.receiver2_desc['id']) self.assertEqual(len(wunread), 4) # two msg from Wb, two from R2 self.assertFalse(wunread[2]['visualized']) self.assertFalse(wunread[3]['visualized']) wreaded = yield wbtip.get_messages_content(self.wbtip_id, self.receiver2_desc['id']) self.assertTrue(wreaded[2]['visualized']) self.assertTrue(wreaded[3]['visualized'])
def do_receivers_messages_and_unread_verification(self): # Receiver1 check the presence of the whistleblower message (only 1) x = yield receiver.get_receivertip_list(self.receiver1_desc['id'], 'en') # Receiver1 send one message msgrequest = { 'content': u'Receiver1 send a message to WB' } k = yield rtip.create_message_receiver(self.receiver1_desc['id'], self.rtip1_id, msgrequest) self.assertEqual(k['visualized'], False) self.assertEqual(k['content'], msgrequest['content']) # Whistleblower check the presence of receiver1 unread message receiver_info_list = yield wbtip.get_wbtip_receivers_list(self.wbtip_id, 'en') for r in receiver_info_list: if r['id'] == self.receiver1_desc['id']: self.assertEqual(r['name'], self.receiver1_desc['name']) else: self.assertEqual(r['name'], self.receiver2_desc['name']) # Receiver2 check the presence of the whistleblower message (2 expected) a = yield receiver.get_receivertip_list(self.receiver1_desc['id'], 'en') self.assertEqual(len(a), 1) # Receiver2 READ the messages from the whistleblower unread = yield rtip.get_messages_list(self.receiver2_desc['id'], self.rtip2_id) self.assertEqual(unread[0]['visualized'], unread[1]['visualized']) self.assertEqual(unread[0]['visualized'], False) readed = yield rtip.get_messages_list(self.receiver2_desc['id'], self.rtip2_id) self.assertEqual(readed[0]['visualized'], readed[1]['visualized']) self.assertEqual(readed[0]['visualized'], True) # Receiver2 send two message msgrequest = { 'content': u'Receiver2 send #1/2 message to WB' } yield rtip.create_message_receiver(self.receiver2_desc['id'], self.rtip2_id, msgrequest) msgrequest = { 'content': u'Receiver2 send #2/2 message to WB' } yield rtip.create_message_receiver(self.receiver2_desc['id'], self.rtip2_id, msgrequest) # Whistleblower read the messages from Receiver2 wunread = yield wbtip.get_messages_content(self.wbtip_id, self.receiver2_desc['id']) self.assertEqual(len(wunread), 4) # two msg from Wb, two from R2 self.assertFalse(wunread[2]['visualized']) self.assertFalse(wunread[3]['visualized']) wreaded = yield wbtip.get_messages_content(self.wbtip_id, self.receiver2_desc['id']) self.assertTrue(wreaded[2]['visualized']) self.assertTrue(wreaded[3]['visualized'])
def perform_post_submission_actions(self): commentCreation = { 'content': 'comment!', } messageCreation = { 'content': 'message!', } self.dummyRTips = yield self.get_rtips() for rtip_desc in self.dummyRTips: yield rtip.create_comment_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], commentCreation) yield rtip.create_message_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], messageCreation) self.dummyWBTips = yield self.get_wbtips() for wbtip_desc in self.dummyWBTips: yield wbtip.create_comment_wb(wbtip_desc['wbtip_id'], commentCreation) for receiver_id in wbtip_desc['wbtip_receivers']: yield wbtip.create_message_wb(wbtip_desc['wbtip_id'], receiver_id, messageCreation)
def perform_submission(self): self.dummySubmission['context_id'] = self.dummyContext['id'] self.dummySubmission['receivers'] = self.dummyContext['receivers'] self.dummySubmission['wb_steps'] = yield fill_random_fields(self.dummyContext['id']) self.dummySubmission = yield create_submission(self.dummySubmission, False, 'en') yield self.emulate_file_upload(self.dummySubmission['id']) submission = yield update_submission(self.dummySubmission['id'], self.dummySubmission, True, 'en') self.dummyWBTip = yield create_whistleblower_tip(self.dummySubmission) yield delivery_sched.DeliverySchedule().operation() yield notification_sched.NotificationSchedule().operation() commentCreation = { 'content': 'comment!', } messageCreation = { 'content': 'message!', } rtips_desc = yield self.get_rtips() for rtip_desc in rtips_desc: yield rtip.create_comment_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], commentCreation) yield rtip.create_message_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], messageCreation) wbtips_desc = yield self.get_wbtips() for wbtip_desc in wbtips_desc: yield wbtip.create_comment_wb(wbtip_desc['wbtip_id'], commentCreation) for receiver_id in wbtip_desc['wbtip_receivers']: yield wbtip.create_message_wb(wbtip_desc['wbtip_id'], receiver_id, messageCreation) yield delivery_sched.DeliverySchedule().operation() yield notification_sched.NotificationSchedule().operation()
def perform_post_submission_actions(self): commentCreation = { 'content': 'comment!', } messageCreation = { 'content': 'message!', } identityaccessrequestCreation = { 'request_motivation': 'request motivation' } self.dummyRTips = yield self.get_rtips() for rtip_desc in self.dummyRTips: yield rtip.create_comment_receiver(rtip_desc['receiver_id'], rtip_desc['id'], commentCreation) yield rtip.create_message_receiver(rtip_desc['receiver_id'], rtip_desc['id'], messageCreation) yield self.emulate_file_append(rtip_desc['id'], 3) yield rtip.create_identityaccessrequest(rtip_desc['receiver_id'], rtip_desc['id'], identityaccessrequestCreation, 'en') self.dummyWBTips = yield self.get_wbtips() for wbtip_desc in self.dummyWBTips: yield wbtip.create_comment_wb(wbtip_desc['id'], commentCreation) for receiver_id in wbtip_desc['receivers_ids']: yield wbtip.create_message_wb(wbtip_desc['id'], receiver_id, messageCreation)
def fill_data(self): try: yield do_appdata_init() except Exception as excp: print "Fail fill_data/do_appdata_init: %s" % excp raise excp receivers_ids = [] try: self.dummyReceiver_1 = yield create_receiver(self.dummyReceiver_1) receivers_ids.append(self.dummyReceiver_1['id']) self.dummyReceiver_2 = yield create_receiver(self.dummyReceiver_2) receivers_ids.append(self.dummyReceiver_2['id']) except Exception as excp: print "Fail fill_data/create_receiver: %s" % excp raise excp try: self.dummyContext['receivers'] = receivers_ids self.dummyContext = yield create_context(self.dummyContext) except Exception as excp: print "Fail fill_data/create_context: %s" % excp raise excp self.dummySubmission['context_id'] = self.dummyContext['id'] self.dummySubmission['receivers'] = receivers_ids self.dummySubmission['wb_fields'] = fill_random_fields(self.dummyContext) try: self.dummySubmissionNotFinalized = yield create_submission(self.dummySubmission, finalize=False) except Exception as excp: print "Fail fill_data/create_submission: %s" % excp raise excp try: self.dummySubmission = yield create_submission(self.dummySubmission, finalize=False) except Exception as excp: print "Fail fill_data/create_submission: %s" % excp raise excp yield self.emulate_file_upload(self.dummySubmission['id']) try: submission = yield update_submission(self.dummySubmission['id'], self.dummySubmission, finalize=True) except Exception as excp: print "Fail fill_data/update_submission: %s" % excp raise excp try: self.dummyWBTip = yield create_whistleblower_tip(self.dummySubmission) except Exception as excp: print "Fail fill_data/create_whistleblower: %s" % excp raise excp assert self.dummyReceiver_1.has_key('id') assert self.dummyReceiver_2.has_key('id') assert self.dummyContext.has_key('id') assert self.dummySubmission.has_key('id') yield delivery_sched.DeliverySchedule().operation() yield notification_sched.NotificationSchedule().operation() commentCreation = { 'content': 'comment!', } messageCreation = { 'content': 'message!', } rtips_desc = yield self.get_rtips() for rtip_desc in rtips_desc: yield rtip.create_comment_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], commentCreation) yield rtip.create_message_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], messageCreation) wbtips_desc = yield self.get_wbtips() for wbtip_desc in wbtips_desc: yield wbtip.create_comment_wb(wbtip_desc['wbtip_id'], commentCreation) for receiver_id in wbtip_desc['wbtip_receivers']: yield wbtip.create_message_wb(wbtip_desc['wbtip_id'], receiver_id, messageCreation) yield delivery_sched.DeliverySchedule().operation() yield notification_sched.NotificationSchedule().operation()
def fill_data(self): try: yield do_appdata_init() except Exception as excp: print "Fail fill_data/do_appdata_init: %s" % excp raise excp receivers_ids = [] try: self.dummyReceiver_1 = yield create_receiver(self.dummyReceiver_1) receivers_ids.append(self.dummyReceiver_1['id']) self.dummyReceiver_2 = yield create_receiver(self.dummyReceiver_2) receivers_ids.append(self.dummyReceiver_2['id']) except Exception as excp: print "Fail fill_data/create_receiver: %s" % excp raise excp try: self.dummyContext['receivers'] = receivers_ids self.dummyContext = yield create_context(self.dummyContext) except Exception as excp: print "Fail fill_data/create_context: %s" % excp raise excp self.dummySubmission['context_id'] = self.dummyContext['id'] self.dummySubmission['receivers'] = receivers_ids self.dummySubmission['wb_fields'] = fill_random_fields( self.dummyContext) try: self.dummySubmissionNotFinalized = yield create_submission( self.dummySubmission, finalize=False) except Exception as excp: print "Fail fill_data/create_submission: %s" % excp raise excp try: self.dummySubmission = yield create_submission( self.dummySubmission, finalize=False) except Exception as excp: print "Fail fill_data/create_submission: %s" % excp raise excp yield self.emulate_file_upload(self.dummySubmission['id']) try: submission = yield update_submission(self.dummySubmission['id'], self.dummySubmission, finalize=True) except Exception as excp: print "Fail fill_data/update_submission: %s" % excp raise excp try: self.dummyWBTip = yield create_whistleblower_tip( self.dummySubmission) except Exception as excp: print "Fail fill_data/create_whistleblower: %s" % excp raise excp assert self.dummyReceiver_1.has_key('id') assert self.dummyReceiver_2.has_key('id') assert self.dummyContext.has_key('id') assert self.dummySubmission.has_key('id') yield delivery_sched.DeliverySchedule().operation() yield notification_sched.NotificationSchedule().operation() commentCreation = { 'content': 'comment!', } messageCreation = { 'content': 'message!', } rtips_desc = yield self.get_rtips() for rtip_desc in rtips_desc: yield rtip.create_comment_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], commentCreation) yield rtip.create_message_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], messageCreation) wbtips_desc = yield self.get_wbtips() for wbtip_desc in wbtips_desc: yield wbtip.create_comment_wb(wbtip_desc['wbtip_id'], commentCreation) for receiver_id in wbtip_desc['wbtip_receivers']: yield wbtip.create_message_wb(wbtip_desc['wbtip_id'], receiver_id, messageCreation) yield delivery_sched.DeliverySchedule().operation() yield notification_sched.NotificationSchedule().operation()
def fill_data(self): yield do_appdata_init() receivers_ids = [] # fill_data/create_receiver self.dummyReceiver_1 = yield create_receiver(self.dummyReceiver_1) receivers_ids.append(self.dummyReceiver_1['id']) self.dummyReceiver_2 = yield create_receiver(self.dummyReceiver_2) receivers_ids.append(self.dummyReceiver_2['id']) # fill_data/create_context self.dummyContext['receivers'] = receivers_ids self.dummyContext = yield create_context(self.dummyContext) # fill_data: create cield templates for idx, field in enumerate(self.dummyFieldTemplates): f = yield create_field(field, 'en') self.dummyFieldTemplates[idx]['id'] = f['id'] # fill_data: create fields and associate them to the context steps for idx, field in enumerate(self.dummyFields): field['is_template'] = False if idx <= 2: # "Field 1", "Field 2" and "Generalities" are associated to the first step field['step_id'] = self.dummyContext['steps'][0]['id'] else: # Name, Surname, Gender" are associated to field "Generalities" # "Field 1" and "Field 2" are associated to the first step field['fieldgroup_id'] = self.dummyFields[2]['id'] f = yield create_field(field, 'en') self.dummyFields[idx]['id'] = f['id'] self.dummyContext['steps'][0]['children'] = [ self.dummyFields[0], # Field 1 self.dummyFields[1], # Field 2 self.dummyFields[2] # Generalities ] yield update_context(self.dummyContext['id'], self.dummyContext) # fill_data/create_submission self.dummySubmission['context_id'] = self.dummyContext['id'] self.dummySubmission['receivers'] = receivers_ids self.dummySubmission['wb_steps'] = yield fill_random_fields(self.dummyContext['id']) self.dummySubmissionNotFinalized = yield create_submission(self.dummySubmission, finalize=False) self.dummySubmission = yield create_submission(self.dummySubmission, finalize=False) yield self.emulate_file_upload(self.dummySubmission['id']) # fill_data/update_submssion submission = yield update_submission(self.dummySubmission['id'], self.dummySubmission, finalize=True) # fill_data/create_whistleblower self.dummyWBTip = yield create_whistleblower_tip(self.dummySubmission) assert self.dummyReceiver_1.has_key('id') assert self.dummyReceiver_2.has_key('id') assert self.dummyContext.has_key('id') assert self.dummySubmission.has_key('id') yield delivery_sched.DeliverySchedule().operation() yield notification_sched.NotificationSchedule().operation() commentCreation = { 'content': 'comment!', } messageCreation = { 'content': 'message!', } rtips_desc = yield self.get_rtips() for rtip_desc in rtips_desc: yield rtip.create_comment_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], commentCreation) yield rtip.create_message_receiver(rtip_desc['receiver_id'], rtip_desc['rtip_id'], messageCreation) wbtips_desc = yield self.get_wbtips() for wbtip_desc in wbtips_desc: yield wbtip.create_comment_wb(wbtip_desc['wbtip_id'], commentCreation) for receiver_id in wbtip_desc['wbtip_receivers']: yield wbtip.create_message_wb(wbtip_desc['wbtip_id'], receiver_id, messageCreation) yield delivery_sched.DeliverySchedule().operation() yield notification_sched.NotificationSchedule().operation()