Skip to content

Commit a6d6989

Browse files
committed
Fixing bug on error and making sure that the database is not left in an inconsitent state
1 parent 0372f42 commit a6d6989

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

qiita_db/metadata_template/base_metadata_template.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1252,7 +1252,7 @@ def update_category(self, category, samples_and_values):
12521252

12531253
if any([column_type != vt for vt in value_types]):
12541254
value_str = ', '.join(
1255-
[v for value in viewvalues(samples_and_values)])
1255+
[str(value) for value in viewvalues(samples_and_values)])
12561256
value_types_str = ', '.join(value_types)
12571257

12581258
raise ValueError(

qiita_db/metadata_template/test/test_sample_template.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1253,7 +1253,6 @@ def test_exists_false(self):
12531253
self.assertFalse(SampleTemplate.exists(self.new_study.id))
12541254

12551255
def test_update_category(self):
1256-
"""setitem raises an error (currently not allowed)"""
12571256
with self.assertRaises(QiitaDBUnknownIDError):
12581257
self.tester.update_category('country', {"foo": "bar"})
12591258

@@ -1295,10 +1294,18 @@ def test_update_category(self):
12951294
# testing that if fails when trying to change an int column value
12961295
# to str
12971296
st = SampleTemplate.create(self.metadata, self.new_study)
1298-
mapping = {'2.Sample1': "no_value"}
1297+
1298+
sql = """SELECT * FROM qiita.sample_2 ORDER BY sample_id"""
1299+
before = self.conn_handler.execute_fetchall(sql)
1300+
mapping = {'2.Sample1': 1, '2.Sample2': "no_value"}
1301+
12991302
with self.assertRaises(ValueError):
13001303
st.update_category('int_column', mapping)
13011304

1305+
after = self.conn_handler.execute_fetchall(sql)
1306+
1307+
self.assertEqual(before, after)
1308+
13021309
def test_update(self):
13031310
"""Updates values in existing mapping file"""
13041311
# creating a new sample template

0 commit comments

Comments
 (0)