diff options
Diffstat (limited to 'libdbpp/unittests/testUtils.cpp')
-rw-r--r-- | libdbpp/unittests/testUtils.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/libdbpp/unittests/testUtils.cpp b/libdbpp/unittests/testUtils.cpp index 4c269e9..ac9b7c1 100644 --- a/libdbpp/unittests/testUtils.cpp +++ b/libdbpp/unittests/testUtils.cpp @@ -50,6 +50,26 @@ BOOST_AUTO_TEST_CASE( forEachRowNulls ) }); } +BOOST_AUTO_TEST_CASE( stdforOverRows ) +{ + auto db = DB::ConnectionPtr(DB::MockDatabase::openConnectionTo("pqmock")); + unsigned int count = 0; + int64_t totalOfa = 0; + std::string totalOfc; + auto sel = db->select("SELECT a, c FROM forEachRow ORDER BY a DESC"); + for (const auto & row : sel->as<int64_t, std::string>()) { + count += 1; + BOOST_REQUIRE_EQUAL("a", row[0].name); + BOOST_REQUIRE_EQUAL(1, row["c"].colNo); + int64_t a = row.value<0>(); + totalOfa += a; + totalOfc += row.value<1>(); + } + BOOST_REQUIRE_EQUAL(count, 2); + BOOST_REQUIRE_EQUAL(totalOfa, 3); + BOOST_REQUIRE_EQUAL(totalOfc, "Some textSome text"); +} + BOOST_AUTO_TEST_CASE( execute ) { auto db = DB::ConnectionPtr(DB::MockDatabase::openConnectionTo("pqmock")); |