Skip to content

Commit 5217078

Browse files
Marcin Szalowiczsilvakid
authored andcommitted
Tests: fix resultset test data insert
Signed-off-by: Luís Silva <[email protected]>
1 parent bb1439a commit 5217078

File tree

1 file changed

+42
-6
lines changed

1 file changed

+42
-6
lines changed

test/unit/classes/resultset.cpp

Lines changed: 42 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -197,9 +197,27 @@ void resultset::getTypes()
197197
}
198198

199199
msg.str("");
200-
msg << "INSERT INTO test(id) VALUES ('" << it->value << "')";
201-
stmt->execute(msg.str());
202-
ASSERT_EQUALS(1, (int)stmt->getUpdateCount());
200+
switch(it->ctype)
201+
{
202+
case sql::DataType::BIT:
203+
msg << "INSERT INTO test(id) VALUES (" << it->value << ")";
204+
break;
205+
default:
206+
msg << "INSERT INTO test(id) VALUES (\"" << it->value << "\")";
207+
}
208+
209+
try
210+
{
211+
stmt->execute(msg.str());
212+
ASSERT_EQUALS(1, (int)stmt->getUpdateCount());
213+
}
214+
catch (sql::SQLException &e)
215+
{
216+
logErr(e.what());
217+
logErr("SQLState: " + std::string(e.getSQLState()));
218+
logErr("SqlDef: " + it->sqldef);
219+
fail(e.what(), __FILE__, __LINE__);
220+
}
203221

204222
res.reset(stmt->executeQuery("SELECT id, NULL FROM test"));
205223
checkResultSetScrolling(res);
@@ -633,9 +651,27 @@ void resultset::getTypesMinorIssues()
633651
}
634652

635653
msg.str("");
636-
msg << "INSERT INTO test(id) VALUES ('" << it->value << "')";
637-
stmt->execute(msg.str());
638-
ASSERT_EQUALS(1, (int)stmt->getUpdateCount());
654+
switch(it->ctype)
655+
{
656+
case sql::DataType::BIT:
657+
msg << "INSERT INTO test(id) VALUES (" << it->value << ")";
658+
break;
659+
default:
660+
msg << "INSERT INTO test(id) VALUES (\"" << it->value << "\")";
661+
}
662+
663+
try
664+
{
665+
stmt->execute(msg.str());
666+
ASSERT_EQUALS(1, (int)stmt->getUpdateCount());
667+
}
668+
catch (sql::SQLException &e)
669+
{
670+
logErr(e.what());
671+
logErr("SQLState: " + std::string(e.getSQLState()));
672+
logErr("SqlDef: " + it->sqldef);
673+
fail(e.what(), __FILE__, __LINE__);
674+
}
639675

640676
res.reset(stmt->executeQuery("SELECT id, NULL FROM test"));
641677
checkResultSetScrolling(res);

0 commit comments

Comments
 (0)