def METHOD_NAME(self):
    url = reverse(save_temp_file)
    self.check_require_login(url)
    response = self.client.post(url, {
        'f': SimpleUploadedFile("test_data.tsv", TSV_DATA),
        'invalid': SimpleUploadedFile("test_data.foo", TSV_DATA),
    })
    self.assertEqual(response.status_code, 400)
    self.assertDictEqual(response.json(), {'errors': ['Received 2 files instead of 1']})
    response = self.client.post(url, {'invalid': SimpleUploadedFile("test_data.foo", TSV_DATA)})
    self.assertEqual(response.status_code, 400)
    self.assertDictEqual(response.json(), {'errors': ['Unexpected file type: test_data.foo']})
    response = self.client.post(url, {'f': SimpleUploadedFile("test_data.tsv", TSV_DATA)})
    self.assertEqual(response.status_code, 200)
    response_json = response.json()
    self.assertDictEqual(response_json, {
        'info': ['Parsed 3 rows from test_data.tsv'],
        'uploadedFileId': mock.ANY,
    })
    # Test loading uploaded file
    uploaded_file_id = response_json['uploadedFileId']
    file_content = load_uploaded_file(uploaded_file_id)
    self.assertListEqual(file_content, PARSED_DATA)
    # File should be removed after loading it once
    with self.assertRaises(IOError):
        load_uploaded_file(uploaded_file_id)
    # Test uploading with returned data and test with file formats
    wb = xl.Workbook()
    ws = wb[wb.sheetnames[0]]
    ws['A1'], ws['B1'], ws['C1'] = ['Family ID', 'Individual ID', 'Notes']
    ws['A2'], ws['B2'], ws['C2'] = [1, 'NA19675', 'An affected individual, additional metadata']
    ws['A3'], ws['B3'] = [0, 'NA19678']
    ws['A4'] = ''  # for testing trimming trailing empty rows
    with NamedTemporaryFile() as tmp:
        wb.save(tmp)
        tmp.seek(0)
        xlsx_data = tmp.read()
    for ext, data in TEST_DATA_TYPES.items():
        if ext == 'xls' or ext == 'xlsx':
            data = xlsx_data
        response = self.client.post(
            '{}?parsedData=true'.format(url), {'f': SimpleUploadedFile("test_data.{}".format(ext), data)})
        self.assertEqual(response.status_code, 200)
        self.assertDictEqual(response.json(), {
            'parsedData': PARSED_DATA,
            'uploadedFileId': mock.ANY,
        })