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)
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)
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)