#define BOOST_TEST_MODULE sale #include "../src/core/sale.h" #include #include BOOST_AUTO_TEST_CASE(articles_sum) { const int NUM_ARTICLES = 30; Seller seller("Max", "Mustermann", 1, NUM_ARTICLES); ArticlesVec articles{}; Sale sale{}; for(int i = 0; i < NUM_ARTICLES; ++i) { auto art = std::make_unique
(); art->setPrice((i+1) * 10); articles.push_back(art.get()); seller.addArticle(std::move(art)); } for(int i = 0; i < 10; ++i) { sale.addArticle(articles.at(i)); } BOOST_TEST(sale.sumInCents() == 550); BOOST_TEST(seller.getArticles(true).size() == 10); } BOOST_AUTO_TEST_CASE(remove_article) { auto art = std::make_shared
(); Sale sale{}; BOOST_TEST(art->isSold() == false); sale.addArticle(art.get()); BOOST_TEST(art->isSold() == true); sale.removeArticle(art.get()); BOOST_TEST(art->isSold() == false); }