def METHOD_NAME(self):
    prep = StringIO(EXP_PREP_TEMPLATE.format(1))
    prep_table = load_template_to_dataframe(prep)
    response = self.post('/api/v1/study/1/preparation?data_type=16S',
                         data=prep_table.T.to_dict(),
                         headers=self.headers, asjson=True)
    self.assertEqual(response.code, 201)
    exp = json_decode(response.body)
    exp_prep = PrepTemplate(exp['id']).to_dataframe()
    prep_table.index.name = 'sample_name'
    # sort columns to be comparable
    prep_table = prep_table[sorted(prep_table.columns.tolist())]
    exp_prep = exp_prep[sorted(exp_prep.columns.tolist())]
    exp_prep.drop('qiita_prep_id', axis=1, inplace=True)
    pd.testing.assert_frame_equal(prep_table, exp_prep)