36 lines
1.0 KiB
C++
36 lines
1.0 KiB
C++
#include "catch.hpp"
|
|
#include "duckdb.h"
|
|
|
|
using namespace std;
|
|
|
|
TEST_CASE("Simple In-Memory DB Start Up and Shutdown", "[simplestartup]") {
|
|
duckdb_database database;
|
|
duckdb_connection connection;
|
|
|
|
// open and close a database in in-memory mode
|
|
REQUIRE(duckdb_open(NULL, &database) == DuckDBSuccess);
|
|
REQUIRE(duckdb_connect(database, &connection) == DuckDBSuccess);
|
|
duckdb_disconnect(&connection);
|
|
duckdb_close(&database);
|
|
}
|
|
|
|
TEST_CASE("Multiple In-Memory DB Start Up and Shutdown", "[multiplestartup]") {
|
|
duckdb_database database[10];
|
|
duckdb_connection connection[100];
|
|
|
|
// open and close 10 databases
|
|
// and open 10 connections per database
|
|
for (size_t i = 0; i < 10; i++) {
|
|
REQUIRE(duckdb_open(NULL, &database[i]) == DuckDBSuccess);
|
|
for (size_t j = 0; j < 10; j++) {
|
|
REQUIRE(duckdb_connect(database[i], &connection[i * 10 + j]) == DuckDBSuccess);
|
|
}
|
|
}
|
|
for (size_t i = 0; i < 10; i++) {
|
|
for (size_t j = 0; j < 10; j++) {
|
|
duckdb_disconnect(&connection[i * 10 + j]);
|
|
}
|
|
duckdb_close(&database[i]);
|
|
}
|
|
}
|