IT戦記

プログラミング、起業などについて書いているプログラマーのブログです😚

Boost::Test で、 teardown や setup をする方法

めもめも

#define BOOST_TEST_MODULE "Unit test for hogehoge."
#include <boost/test/unit_test.hpp>

struct Fixture {
    Fixture() {
        // ここに setup 的なことを書く
    }   
    ~Fixture() {
        // ここに teardown 的なことを書く
    }   
};

BOOST_GLOBAL_FIXTURE( Fixture );

BOOST_AUTO_TEST_SUITE( hoge_test )

BOOST_AUTO_TEST_CASE( case_hoge ){
    BOOST_REQUIRE_MESSAGE(expression, "hoge is hogehoge.");
}

BOOST_AUTO_TEST_CASE( case_hoge ){
    BOOST_REQUIRE_MESSAGE(expression, "hoge is hogehoge.");
}

BOOST_AUTO_TEST_CASE( case_hoge ){
    BOOST_REQUIRE_MESSAGE(expression, "hoge is hogehoge.");
}

BOOST_AUTO_TEST_CASE( case_hoge ){
    BOOST_REQUIRE_MESSAGE(expression, "hoge is hogehoge.");
}

BOOST_AUTO_TEST_SUITE_END()

C++ で finally 的なことは、なんでもデストラクタのタイミングを利用してやるんだなあ。