def test_set_feedback(self):
     filename = "c37a3efa-593c-4bab-b49c-bee0613c4fb2"
     expected = "009 feedback response for period 2019 sample unit 49900108249D"
     meta_data = MetaWrapper(filename)
     meta_data.set_feedback(self.test_survey, self.test_bytes)
     actual = meta_data.get_description()
     self.assertEqual(expected, actual)
     self.assertEqual(f'{filename}:ftp', meta_data.filename)
Exemple #2
0
 def test_set_feedback(self, mock_time):
     mock_time.return_value = 1629452867.587326
     filename = "c37a3efa-593c-4bab-b49c-bee0613c4fb2"
     expected = "009 feedback response for period 2019 sample unit 49900108249D"
     meta_data = MetaWrapper(filename)
     meta_data.set_feedback(self.test_survey)
     actual = meta_data.get_description()
     self.assertEqual(expected, actual)
     self.assertEqual(f'{filename}-fb-1629452867:ftp', meta_data.filename)
Exemple #3
0
def deliver_feedback():
    """
    Endpoint for feedback submissions only. POST request requires the feedback JSON to be uploaded as
    "submission", and the filename passed in the query parameters.
    """
    logger.info('Processing Feedback submission')
    filename = request.args.get("filename")
    meta = MetaWrapper(filename)
    files = request.files
    submission_bytes = files[SUBMISSION_FILE].read()
    survey_dict = json.loads(submission_bytes.decode())
    data_bytes = submission_bytes
    meta.set_feedback(survey_dict)
    return process(meta, data_bytes)