tunit - Reference Guide  1.0.0
Modern c++17 unit testing framework on Windows, macOS, Linux, iOS and android.
directory_assume.h
Go to the documentation of this file.
1 #pragma once
4 #include "assume.h"
5 #include "directory_assert.h"
6 
8 namespace tunit {
13  class directory_assume final : private base_assert {
14  public:
16  directory_assume() = delete;
18 
19 #if defined(__cpp_lib_filesystem)
20  static void are_equal(const std::filesystem::directory_entry& expected, const std::filesystem::directory_entry& actual) {are_equal(expected, actual, "", line_info());}
31 
43  static void are_equal(const std::filesystem::directory_entry& expected, const std::filesystem::directory_entry& actual, const tunit::line_info& line_info) {are_equal(expected, actual, "", line_info);}
44 
56  static void are_equal(const std::filesystem::directory_entry& expected, const std::filesystem::directory_entry& actual, const std::string& message) {are_equal(expected, actual, message, line_info());}
57 
70  static void are_equal(const std::filesystem::directory_entry& expected, const std::filesystem::directory_entry& actual, const std::string& message, const tunit::line_info& line_info) {
71  try {
72  directory_assert::are_equal(expected, actual, message, line_info);
73  } catch (...) {
74  assert::abort();
75  }
76  }
77 
88  static void are_not_equal(const std::filesystem::directory_entry& expected, const std::filesystem::directory_entry& actual) {are_not_equal(expected, actual, "", line_info());}
89 
101  static void are_not_equal(const std::filesystem::directory_entry& expected, const std::filesystem::directory_entry& actual, const tunit::line_info& line_info) {are_not_equal(expected, actual, "", line_info);}
102 
114  static void are_not_equal(const std::filesystem::directory_entry& expected, const std::filesystem::directory_entry& actual, const std::string& message) {are_not_equal(expected, actual, message, line_info());}
115 
128  static void are_not_equal(const std::filesystem::directory_entry& expected, const std::filesystem::directory_entry& actual, const std::string& message, const tunit::line_info& line_info) {
129  try {
130  directory_assert::are_not_equal(expected, actual, message, line_info);
131  } catch (...) {
132  assert::abort();
133  }
134  }
135 #endif
136 
148  template<typename Char>
149  static void exists(const std::basic_string<Char>& directory) {exists(directory, "", line_info());}
150 
163  template<typename Char>
164  static void exists(const std::basic_string<Char>& directory, const tunit::line_info& line_info) {exists(directory, "", line_info);}
165 
178  template<typename Char>
179  static void exists(const std::basic_string<Char>& directory, const std::string& message) {exists(directory, message, line_info());}
180 
194  template<typename Char>
195  static void exists(const std::basic_string<Char>& directory, const std::string& message, const tunit::line_info& line_info) {
196  try {
197  directory_assert::exists(directory, message, line_info);
198  } catch (...) {
199  assert::abort();
200  }
201  }
202 
204  template<typename Char>
205  static void exists(const Char* directory) {exists(directory, "", line_info());}
206  template<typename Char>
207  static void exists(const Char* directory, const tunit::line_info& line_info) {exists(directory, "", line_info);}
208  template<typename Char>
209  static void exists(const Char* directory, const std::string& message) {exists(directory, message, line_info());}
210  template<typename Char>
211  static void exists(const Char* directory, const std::string& message, const tunit::line_info& line_info) {exists(std::basic_string<Char>(directory), message, line_info);}
213 
225  template<typename Char>
226  static void does_not_exist(const std::basic_string<Char>& directory) {does_not_exist(directory, "", line_info());}
227 
240  template<typename Char>
241  static void does_not_exist(const std::basic_string<Char>& directory, const tunit::line_info& line_info) {does_not_exist(directory, "", line_info);}
242 
255  template<typename Char>
256  static void does_not_exist(const std::basic_string<Char>& directory, const std::string& message) {does_not_exist(directory, message, line_info());}
257 
271  template<typename Char>
272  static void does_not_exist(const std::basic_string<Char>& directory, const std::string& message, const tunit::line_info& line_info) {
273  try {
274  directory_assert::does_not_exist(directory, message, line_info);
275  } catch (...) {
276  assert::abort();
277  }
278  }
279 
281  template<typename Char>
282  static void does_not_exist(const Char* directory) {does_not_exist(directory, "", line_info());}
283  template<typename Char>
284  static void does_not_exist(const Char* directory, const tunit::line_info& line_info) {does_not_exist(directory, "", line_info);}
285  template<typename Char>
286  static void does_not_exist(const Char* directory, const std::string& message) {does_not_exist(directory, message, line_info());}
287  template<typename Char>
288  static void does_not_exist(const Char* directory, const std::string& message, const tunit::line_info& line_info) {does_not_exist(std::basic_string<Char>(directory), message, line_info);}
290  };
291 }
static void does_not_exist(const std::basic_string< Char > &directory, const std::string &message)
Asserts that file not exists.
Definition: directory_assume.h:256
static void exists(const std::basic_string< Char > &directory, const std::string &message)
Asserts that directory exists.
Definition: directory_assume.h:179
static void exists(const std::basic_string< Char > &directory, const std::string &message, const tunit::line_info &line_info)
Asserts that directory exists.
Definition: directory_assume.h:195
static void exists(const std::basic_string< Char > &directory)
Asserts that directory exists.
Definition: directory_assert.h:150
The directory_assume class contains a collection of static methods that implement the most directory ...
Definition: directory_assume.h:13
Contains tunit::directory_assert class.
static void does_not_exist(const std::basic_string< Char > &directory, const std::string &message, const tunit::line_info &line_info)
Asserts that file not exists.
Definition: directory_assume.h:272
static void abort()
Abort current test.
Definition: base_assert.h:26
static void does_not_exist(const std::basic_string< Char > &directory, const tunit::line_info &line_info)
Asserts that file not exists.
Definition: directory_assume.h:241
line_info information class is used to store current file, current line and current function informat...
Definition: line_info.h:13
Contains tunit::assume class.
static void does_not_exist(const std::basic_string< Char > &directory)
Asserts that file not exists.
Definition: directory_assert.h:227
Definition: base_assert.h:15
The tunit namespace contains a unit test library.
Definition: abort_error.h:8
static void exists(const std::basic_string< Char > &directory)
Asserts that directory exists.
Definition: directory_assume.h:149
static void exists(const std::basic_string< Char > &directory, const tunit::line_info &line_info)
Asserts that directory exists.
Definition: directory_assume.h:164
static void does_not_exist(const std::basic_string< Char > &directory)
Asserts that file not exists.
Definition: directory_assume.h:226