Skip to content
Snippets Groups Projects

ENH: Add test for extended extern C interface

Merged Florian Spreckelsen requested to merge f-extended-c into f-files
All threads resolved!
Files
2
+ 32
0
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
#include "caosdb/status_code.h" // for StatusCode
#include "ccaosdb.h" // for caosdb_info_version_info, caosdb_...
#include "gtest/gtest-message.h" // for Message
#include "gtest/gtest-test-part.h" // for TestPartResult
@@ -40,3 +41,34 @@ TEST(test_ccaosdb, connection_ssl_authentication_success) {
EXPECT_EQ(minor, version_info.minor);
EXPECT_STREQ(pre_release, version_info.pre_release);
}
TEST(test_ccaosdb, test_count_query) {
caosdb_connection_connection connection;
int return_code(
caosdb_connection_connection_manager_get_default_connection(&connection));
EXPECT_EQ(return_code, 0);
caosdb_transaction_transaction transaction;
return_code =
caosdb_connection_connection_create_transaction(&connection, &transaction);
EXPECT_EQ(return_code, 0);
// COUNT query with an empty result
return_code = caosdb_transaction_transaction_query(
&transaction, "COUNT ENTITY WITH id='non-existing'");
EXPECT_EQ(return_code, caosdb::StatusCode::GO_ON);
return_code = caosdb_transaction_transaction_execute(&transaction);
EXPECT_EQ(return_code, 0);
long dummy(-1); // NOLINT
long *count = &dummy; // NOLINT
return_code =
caosdb_transaction_transaction_get_count_result(&transaction, count);
EXPECT_EQ(return_code, 0);
EXPECT_EQ(*count, 0);
return_code = caosdb_transaction_delete_transaction(&transaction);
EXPECT_EQ(return_code, 0);
}
Loading