PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
kcenon::pacs::integration_test::test_directory Class Reference

RAII wrapper for temporary test directory. More...

#include <test_fixtures.h>

Collaboration diagram for kcenon::pacs::integration_test::test_directory:
Collaboration graph

Public Member Functions

 test_directory (const std::string &prefix="pacs_test_")
 
 ~test_directory ()
 
 test_directory (const test_directory &)=delete
 
test_directoryoperator= (const test_directory &)=delete
 
 test_directory (test_directory &&)=delete
 
test_directoryoperator= (test_directory &&)=delete
 
const std::filesystem::path & path () const noexcept
 
std::string string () const
 

Private Attributes

std::filesystem::path path_
 

Detailed Description

RAII wrapper for temporary test directory.

Definition at line 775 of file test_fixtures.h.

Constructor & Destructor Documentation

◆ test_directory() [1/3]

kcenon::pacs::integration_test::test_directory::test_directory ( const std::string & prefix = "pacs_test_")
inlineexplicit

Definition at line 777 of file test_fixtures.h.

777 {
778 auto temp_base = std::filesystem::temp_directory_path();
779 path_ = temp_base / (prefix + std::to_string(
780 std::chrono::system_clock::now().time_since_epoch().count()));
781 std::filesystem::create_directories(path_);
782 }

References path_.

◆ ~test_directory()

kcenon::pacs::integration_test::test_directory::~test_directory ( )
inline

Definition at line 784 of file test_fixtures.h.

784 {
785 if (std::filesystem::exists(path_)) {
786 std::filesystem::remove_all(path_);
787 }
788 }

References path_.

◆ test_directory() [2/3]

kcenon::pacs::integration_test::test_directory::test_directory ( const test_directory & )
delete

◆ test_directory() [3/3]

kcenon::pacs::integration_test::test_directory::test_directory ( test_directory && )
delete

Member Function Documentation

◆ operator=() [1/2]

test_directory & kcenon::pacs::integration_test::test_directory::operator= ( const test_directory & )
delete

◆ operator=() [2/2]

test_directory & kcenon::pacs::integration_test::test_directory::operator= ( test_directory && )
delete

◆ path()

const std::filesystem::path & kcenon::pacs::integration_test::test_directory::path ( ) const
inlinenodiscardnoexcept
Returns
Path to test directory

Definition at line 797 of file test_fixtures.h.

797{ return path_; }

References path_.

Referenced by TEST_CASE(), TEST_CASE(), TEST_CASE(), TEST_CASE(), TEST_CASE(), TEST_CASE(), TEST_CASE(), TEST_CASE(), and TEST_CASE().

Here is the caller graph for this function:

◆ string()

std::string kcenon::pacs::integration_test::test_directory::string ( ) const
inlinenodiscard
Returns
Path as string

Definition at line 800 of file test_fixtures.h.

800{ return path_.string(); }

References path_.

Member Data Documentation

◆ path_

std::filesystem::path kcenon::pacs::integration_test::test_directory::path_
private

Definition at line 803 of file test_fixtures.h.

Referenced by path(), string(), test_directory(), and ~test_directory().


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