1717 * under the License.
1818 */
1919
20- #include < chrono>
21- #include < memory>
22- #include < string>
23- #include < utility>
24- #include < vector>
25-
26- #include < gmock/gmock.h>
2720#include < gtest/gtest.h>
2821
2922#include " iceberg/base_transaction.h"
3023#include " iceberg/partition_spec.h"
3124#include " iceberg/pending_update.h"
32- #include " iceberg/snapshot.h"
3325#include " iceberg/sort_order.h"
3426#include " iceberg/table.h"
35- #include " iceberg/table_identifier.h"
3627#include " iceberg/table_metadata.h"
37- #include " iceberg/table_requirement.h"
38- #include " iceberg/table_requirements.h"
3928#include " iceberg/table_update.h"
4029#include " iceberg/test/matchers.h"
4130#include " iceberg/test/mock_catalog.h"
42- #include " iceberg/transaction.h"
43- #include " iceberg/util/macros.h"
4431
4532namespace iceberg {
4633namespace {
47-
4834using ::testing::ElementsAre;
4935using ::testing::NiceMock;
5036
@@ -80,17 +66,17 @@ std::shared_ptr<Table> CreateTestTable(const TableIdentifier& identifier,
8066 return std::make_shared<Table>(identifier, metadata, " s3://bucket/table/metadata.json" ,
8167 nullptr , catalog);
8268}
69+ } // namespace
8370
8471TEST (TransactionPendingUpdateTest, CommitSetPropertiesUsesCatalog) {
8572 auto metadata = CreateBaseMetadata ();
8673 const auto identifier = MakeIdentifier ();
8774 auto catalog = std::make_shared<NiceMock<MockCatalog>>();
8875 auto table =
8976 CreateTestTable (identifier, std::make_shared<TableMetadata>(*metadata), catalog);
90- BaseTransaction transaction (table, catalog);
91-
92- auto update_properties = transaction.UpdateProperties ();
93- update_properties->Set (" write.metadata.delete-after-commit.enabled" , " true" );
77+ auto transaction = table->NewTransaction ();
78+ auto update_properties = transaction->UpdateProperties ();
79+ update_properties->Set (" new-key" , " new-value" );
9480
9581 EXPECT_CALL (*catalog,
9682 UpdateTable (::testing::Eq (identifier), ::testing::_, ::testing::_))
@@ -104,13 +90,13 @@ TEST(TransactionPendingUpdateTest, CommitSetPropertiesUsesCatalog) {
10490 dynamic_cast <const table::SetProperties*>(updates.front ().get ());
10591 EXPECT_NE (set_update, nullptr );
10692 const auto & updated = set_update->updated ();
107- auto it = updated.find (" write.metadata.delete-after-commit.enabled " );
93+ auto it = updated.find (" new-key " );
10894 EXPECT_NE (it, updated.end ());
109- EXPECT_EQ (" true " , it->second );
95+ EXPECT_EQ (" new-value " , it->second );
11096 return Result<std::unique_ptr<Table>>(std::unique_ptr<Table>());
11197 });
11298
113- EXPECT_THAT (transaction. CommitTransaction (), IsOk ());
99+ EXPECT_THAT (transaction-> CommitTransaction (), IsOk ());
114100}
115101
116102TEST (TransactionPendingUpdateTest, RemovePropertiesSkipsMissingKeys) {
@@ -119,9 +105,9 @@ TEST(TransactionPendingUpdateTest, RemovePropertiesSkipsMissingKeys) {
119105 auto catalog = std::make_shared<NiceMock<MockCatalog>>();
120106 auto table =
121107 CreateTestTable (identifier, std::make_shared<TableMetadata>(*metadata), catalog);
122- BaseTransaction transaction (table, catalog );
108+ auto transaction = table-> NewTransaction ( );
123109
124- auto update_properties = transaction. UpdateProperties ();
110+ auto update_properties = transaction-> UpdateProperties ();
125111 update_properties->Remove (" missing" ).Remove (" existing" );
126112
127113 EXPECT_CALL (*catalog,
@@ -138,7 +124,7 @@ TEST(TransactionPendingUpdateTest, RemovePropertiesSkipsMissingKeys) {
138124 return Result<std::unique_ptr<Table>>(std::unique_ptr<Table>());
139125 });
140126
141- EXPECT_THAT (transaction. CommitTransaction (), IsOk ());
127+ EXPECT_THAT (transaction-> CommitTransaction (), IsOk ());
142128}
143129
144130TEST (TransactionPendingUpdateTest, AggregatesMultiplePendingUpdates) {
@@ -147,9 +133,9 @@ TEST(TransactionPendingUpdateTest, AggregatesMultiplePendingUpdates) {
147133 auto catalog = std::make_shared<NiceMock<MockCatalog>>();
148134 auto table =
149135 CreateTestTable (identifier, std::make_shared<TableMetadata>(*metadata), catalog);
150- BaseTransaction transaction (table, catalog );
136+ auto transaction = table-> NewTransaction ( );
151137
152- auto update_properties = transaction. UpdateProperties ();
138+ auto update_properties = transaction-> UpdateProperties ();
153139 update_properties->Set (" new-key" , " new-value" ).Remove (" existing" );
154140
155141 EXPECT_CALL (*catalog,
@@ -176,8 +162,7 @@ TEST(TransactionPendingUpdateTest, AggregatesMultiplePendingUpdates) {
176162 return Result<std::unique_ptr<Table>>(std::unique_ptr<Table>());
177163 });
178164
179- EXPECT_THAT (transaction. CommitTransaction (), IsOk ());
165+ EXPECT_THAT (transaction-> CommitTransaction (), IsOk ());
180166}
181167
182- } // namespace
183168} // namespace iceberg
0 commit comments