Database System 0.1.0
Advanced C++20 Database System with Multi-Backend Support
Loading...
Searching...
No Matches
database::testing::scoped_test_database Class Reference

RAII wrapper for test database setup/teardown. More...

#include <database_test_utils.h>

Collaboration diagram for database::testing::scoped_test_database:
Collaboration graph

Public Member Functions

 scoped_test_database (mock_database &db)
 
 ~scoped_test_database ()
 
mock_databaseget ()
 
const mock_databaseget () const
 

Private Attributes

mock_databasedb_
 

Detailed Description

RAII wrapper for test database setup/teardown.

Definition at line 88 of file database_test_utils.h.

Constructor & Destructor Documentation

◆ scoped_test_database()

database::testing::scoped_test_database::scoped_test_database ( mock_database & db)
inlineexplicit

Definition at line 90 of file database_test_utils.h.

91 : db_(db)
92 {
93 core::connection_config config;
94 config.host = "localhost";
95 config.port = 5432;
96 config.database = "test_db";
97 db_.initialize(config);
98 }
kcenon::common::VoidResult initialize(const core::connection_config &config) override
Initialize the database backend.

References database::core::connection_config::database, db_, database::core::connection_config::host, database::testing::mock_database::initialize(), and database::core::connection_config::port.

Here is the call graph for this function:

◆ ~scoped_test_database()

database::testing::scoped_test_database::~scoped_test_database ( )
inline

Definition at line 100 of file database_test_utils.h.

100 {
101 db_.shutdown();
102 db_.reset();
103 }
kcenon::common::VoidResult shutdown() override
Shutdown the database backend gracefully.

References db_, database::testing::mock_database::reset(), and database::testing::mock_database::shutdown().

Here is the call graph for this function:

Member Function Documentation

◆ get() [1/2]

mock_database & database::testing::scoped_test_database::get ( )
inline

Definition at line 105 of file database_test_utils.h.

105{ return db_; }

References db_.

◆ get() [2/2]

const mock_database & database::testing::scoped_test_database::get ( ) const
inline

Definition at line 106 of file database_test_utils.h.

106{ return db_; }

References db_.

Member Data Documentation

◆ db_

mock_database& database::testing::scoped_test_database::db_
private

Definition at line 109 of file database_test_utils.h.

Referenced by get(), get(), scoped_test_database(), and ~scoped_test_database().


The documentation for this class was generated from the following file: