def compose_email(params, ftp_server, ftp_dir, out_files): #NOTIFY_USER mail_server = settings.DRI_MAIL_SERVER fromaddr = settings.CSC_FROM_ADDRESS user_name, user_email = get_user_info(params) subj = 'Data request %s' % params['output_file_name'] now = datetime.datetime.now() date = now.strftime( '%Y-%m-%d %H:%M' ) pick_up_latest = (now + datetime.timedelta(days=25)).strftime( '%Y-%m-%d' ) display_keys = [params['area_type'],'variables','units', 'start_date', 'end_date'] if 'data_type' in params.keys(): display_keys.insert(0,'data_type') params_display_list = WRCCUtils.form_to_display_list(display_keys, params) dp = '';files='' for item in params_display_list: key = item[0] val = item[1] dp+=key + ': ' + val +'\n' + ' ' zip_file = out_files[0].split('/')[-1] for f in out_files[1:]: files+= f + '\n' + ' ' message_text =''' Date: %s Dear %s, Your data request has been processed. ^ ^ (O,O) ( ) -"-"- The data is available here: %s Please connect as Guest. You will not need a password. The data is stored in the zip archive: %s The individual file names are: %s You can pick up your data until: %s. Your parameters were: %s '''%(date, user_name,'ftp://' + ftp_server + ftp_dir, zip_file, files, str(pick_up_latest), dp) return subj, message_text
def test_defaults(self): #Test most general case: #convert all form aprameters to display key_order_list = None for app_name, params in self.test_params.iteritems(): display_params = WRCCUtils.form_to_display_list(key_order_list, params) try: self.assertIsInstance(display_params, list) except AssertionError as err: logger.error('AssertionError' + str(err)) try: self.assertNotEqual(display_params,[]) except AssertionError as err: logger.error('AssertionError' + str(err)) logger.info(display_params) for dp in display_params: try: self.assertEqual(len(dp),2) except AssertionError as err: logger.error('AssertionError' + str(err))