xtd 0.2.0
file_assume.cpp

Shows how to use xtd::tunit::file_assume class.

#include <xtd/xtd.tunit>
#include <stdexcept>
using namespace xtd::io;
using namespace xtd::tunit;
namespace unit_tests {
// The class test must be declared with test_class_ helper.
class test_class_(test) {
void test_method_(test_case1) {
}
void test_method_(test_case2) {
// No need to remove fn because the file does not exist.
}
void test_method_(test_case3) {
auto is = std::istringstream {"xtd::tunit::file_assume::are_equal example."};
file_assume::are_equal(std::istringstream {"xtd::tunit::file_assume::are_equel example."}, is);
}
};
}
auto main() -> int {
return console_unit_test().run();
}
// This code can produce the following output :
//
// Start 3 tests from 1 test case
// Run tests:
// SUCCEED unit_tests::test.test_case1 (0 ms total)
// ABORTED test.test_case2 (0 ms total)
// Test aborted
// Expected: file exists
// But was: "t35uk5my.8v2"
// Stack Trace: in |---OMITTED---|/file_assume.cpp:18
// ABORTED test.test_case3 (0 ms total)
// Test aborted
// Expected: istream at offset 32 value e
// But was: a
// Stack Trace: in |---OMITTED---|/file_assume.cpp:24
//
// Test results:
// SUCCEED 1 test.
// ABORTED 2 tests.
// End 3 tests from 1 test case ran. (0 ms total)
static void remove(const xtd::string &path)
Deletes the specified file.
static xtd::string get_temp_file_name()
Creates a uniquely named, zero-byte temporary file on disk and returns the full path of that file.
static xtd::string get_random_file_name()
Returns a random folder name or file name.
The console_unit_test class is console unit test interface.
Definition console_unit_test.hpp:23
static void exists(const xtd::basic_string< char_t > &file, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Assumes that file exists.
Definition file_assume.hpp:295
static void are_equal(const std::basic_istream< char_t > &expected, const std::basic_istream< char_t > &actual, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Assumes that two files are equal.
Definition file_assume.hpp:50
int32 run() noexcept
Runs all tests in this unit_test object and prints the result.
#define test_method_(method_name)
Add test method to class test.
Definition test_method_attribute.hpp:72
bool is(xtd::any value)
Checks if the result of an expression is compatible with a given type.
Definition is.hpp:485
The xtd::io namespace contains types that allow reading and writing to files and data streams,...
Definition binary_reader.hpp:17
The tunit namespace contains a unit test library.
Definition abort_error.hpp:10