def worker_thread(ftf, connection): tm = TransactionManager() tm._clear() tm.resolve_missing_transactions(tm2.get_top_hash(), sm.get_transactions(ftf, connection)) self.assertEqual(tm.get_transaction(1)['data'], 'foo1') self.assertEqual(tm.get_transaction(2)['data'], 'foo2') passes.append(True)
def test_transaction_resolution_same_ts_diff_data(self): self.tm.add_transaction("foo0", 1, "bubba", "gump") tm2 = TransactionManager("test_tm.pickle") tm2._clear() tm2.add_transaction("foo1", 1, "bubba", "gump") tm2.resolve_missing_transactions(self.tm.top_hash, self.tm.get_transactions_recent_to_old()) self.assertEqual(tm2.current_id, 2)
def test_transaction_resolution_multiple_same_timestamp(self): self.tm.add_transaction("foo0", 1, "bubba", "gump", uuid="1") self.tm.add_transaction("foo1", 1, "bubba", "gump", uuid="2") self.tm.add_transaction("foo2", 1, "bubba", "gump", uuid="3") tm2 = TransactionManager("test_tm.pickle") tm2._clear() tm2.add_transaction("foo1", 1, "bubba", "gump", uuid="2") tm2.resolve_missing_transactions(self.tm.top_hash, self.tm.get_transactions_recent_to_old()) self.assertEqual(tm2.current_id, 3) self.assertEqual(self.tm.top_hash, tm2.top_hash)
def test_transaction_resolution(self): self.tm.add_transaction("foo0", 1, "bubba", "gump", uuid="1") self.tm.add_transaction("foo1", 2, "bubba", "gump", uuid="2") self.tm.add_transaction("foo2", 3, "bubba", "gump", uuid="3") self.tm.add_transaction("foo3", 4, "bubba", "gump", uuid="4") self.tm.add_transaction("foo4", 5, "bubba", "gump", uuid="5") tm2 = TransactionManager("test_tm.pickle") tm2._clear() tm2.resolve_missing_transactions(self.tm.top_hash, self.tm.get_transactions_recent_to_old()) self.assertEqual(tm2.current_id, 5) for i in xrange(0, 5): self.assertEqual(tm2.get_transaction(i + 1)["data"], "foo%s" % i) tm2 = TransactionManager("test_tm.pickle") tm2._clear() tm2.add_transaction("foo0", 1, "bubba", "gump", uuid="1") tm2.add_transaction("foo1", 2, "bubba", "gump", uuid="2") tm2.add_transaction("foo3", 4, "bubba", "gump", uuid="4") tm2.resolve_missing_transactions(self.tm.top_hash, self.tm.get_transactions_recent_to_old()) self.assertEqual(tm2.current_id, 5) for i in xrange(0, 5): self.assertEqual(tm2.get_transaction(i + 1)["data"], "foo%s" % i)