TEST_F(QueueTest, Misc) { buildSimpleTree(); EXPECT_FALSE(q_.empty()); EXPECT_EQ(q_.numPendingEgress(), 5); signalEgress(1, false); EXPECT_EQ(q_.numPendingEgress(), 4); EXPECT_FALSE(q_.empty()); removeTransaction(9); removeTransaction(1); dump(); EXPECT_EQ(nodes_, IDList({{3, 25}, {5, 25}, {7, 50}})); }
TEST_F(QueueTest, RemoveParent) { buildSimpleTree(); removeTransaction(5); dump(); EXPECT_EQ(nodes_, IDList({{1, 100}, {3, 20}, {7, 40}, {9, 40}})); }
TEST_F(QueueTest, RemoveLeaf) { buildSimpleTree(); removeTransaction(3); dump(); EXPECT_EQ(nodes_, IDList({{1, 100}, {5, 33}, {9, 100}, {7, 66}})); }
void CTransactions::removeThingTransaction(const hacc::TDBID & id) { if(id > 0) { QSqlQuery q = HACC_DB->query("select money from transactions where id=?", QVariantList() << id); q.next(); if(QMessageBox::question( HACC_WINDOW, tr("Transaction remove"), tr("You sure you want to delete transaction of %0 money?" "This also remove copies of transaction thing out of the values") .arg(HACC_DB_2_STRG(q, 0)), QMessageBox::Yes | QMessageBox::No) == QMessageBox::Yes) { removeTransaction(id); } } }
TEST_F(QueueTest, nextEgressRemoveParent) { buildSimpleTree(); // Clear egress for all except txn=9 signalEgress(1, false); signalEgress(3, false); signalEgress(5, false); signalEgress(7, false); // Remove parent of 9 (5) removeTransaction(5); nextEgress(); EXPECT_EQ(nodes_, IDList({{9, 100}})); // signal egress for 9's new siblings to verify weights signalEgress(3, true); signalEgress(7, true); nextEgress(); EXPECT_EQ(nodes_, IDList({{9, 40}, {7, 40}, {3, 20}})); }