Fixed several unit tests

This commit is contained in:
John Wiegley 2011-02-04 04:40:31 -05:00
parent 8c81a1decb
commit c313cee085
3 changed files with 29 additions and 23 deletions

View file

@ -13,20 +13,20 @@ using namespace ledger;
struct amount_fixture {
amount_fixture() {
times_initialize();
amount_t::initialize();
times_initialize();
amount_t::initialize();
// Cause the display precision for dollars to be initialized to 2.
amount_t x1("$1.00");
BOOST_CHECK(x1);
// Cause the display precision for dollars to be initialized to 2.
amount_t x1("$1.00");
BOOST_CHECK(x1);
amount_t::stream_fullstrings = true; // make reports from UnitTests accurate
amount_t::stream_fullstrings = true; // make reports from UnitTests accurate
}
~amount_fixture() {
amount_t::stream_fullstrings = false;
amount_t::shutdown();
times_shutdown();
amount_t::stream_fullstrings = false;
amount_t::shutdown();
times_shutdown();
}
};
@ -460,10 +460,14 @@ BOOST_AUTO_TEST_CASE(testCommodityComparisons)
BOOST_CHECK(x3 <= x5);
BOOST_CHECK(x3 < x5);
BOOST_CHECK(x3 <= x5);
#ifndef NOT_FOR_PYTHON
BOOST_CHECK(! (x3 == x5));
#endif
BOOST_CHECK(x3 < x1);
BOOST_CHECK(x3 < x4);
#ifndef NOT_FOR_PYTHON
BOOST_CHECK(! (x6 == x7));
#endif
BOOST_CHECK_THROW(x6 < x7, amount_error);
BOOST_CHECK(x1.valid());

View file

@ -10,21 +10,21 @@ using namespace ledger;
struct balance_fixture {
balance_fixture() {
times_initialize();
amount_t::initialize();
times_initialize();
amount_t::initialize();
// Cause the display precision for dollars to be initialized to 2.
amount_t x1("$1.00");
BOOST_CHECK(x1);
// Cause the display precision for dollars to be initialized to 2.
amount_t x1("$1.00");
BOOST_CHECK(x1);
amount_t::stream_fullstrings = true; // make reports from UnitTests accurate
amount_t::stream_fullstrings = true; // make reports from UnitTests accurate
}
~balance_fixture()
{
amount_t::stream_fullstrings = false;
amount_t::shutdown();
times_shutdown();
amount_t::stream_fullstrings = false;
amount_t::shutdown();
times_shutdown();
}
};

View file

@ -11,14 +11,14 @@ using namespace ledger;
struct commodity_fixture {
commodity_fixture() {
times_initialize();
amount_t::initialize();
amount_t::stream_fullstrings = true;
times_initialize();
amount_t::initialize();
amount_t::stream_fullstrings = true;
}
~commodity_fixture() {
amount_t::shutdown();
times_shutdown();
amount_t::shutdown();
times_shutdown();
}
};
@ -50,7 +50,9 @@ BOOST_AUTO_TEST_CASE(testPriceHistory)
amount_t x1("100.10 AAPL");
BOOST_CHECK_THROW(x0.value(), amount_error);
#ifndef NOT_FOR_PYTHON
BOOST_CHECK(! x1.value());
#endif
// Commodities cannot be constructed by themselves, since a great deal
// of their state depends on how they were seen to be used.