@@ -57,7 +57,6 @@ std::unique_ptr<TableMetadata> CreateBaseMetadata(
5757
5858} // namespace
5959
60- // Test: Empty updates for CreateTable
6160TEST (TableRequirementsTest, EmptyUpdatesForCreateTable) {
6261 std::vector<std::unique_ptr<TableUpdate>> updates;
6362
@@ -73,7 +72,6 @@ TEST(TableRequirementsTest, EmptyUpdatesForCreateTable) {
7372 EXPECT_NE (assert_does_not_exist, nullptr );
7473}
7574
76- // Test: Empty updates for UpdateTable
7775TEST (TableRequirementsTest, EmptyUpdatesForUpdateTable) {
7876 auto metadata = CreateBaseMetadata ();
7977 std::vector<std::unique_ptr<TableUpdate>> updates;
@@ -90,7 +88,6 @@ TEST(TableRequirementsTest, EmptyUpdatesForUpdateTable) {
9088 EXPECT_EQ (assert_uuid->uuid (), metadata->table_uuid );
9189}
9290
93- // Test: Empty updates for ReplaceTable
9491TEST (TableRequirementsTest, EmptyUpdatesForReplaceTable) {
9592 auto metadata = CreateBaseMetadata ();
9693 std::vector<std::unique_ptr<TableUpdate>> updates;
@@ -107,7 +104,6 @@ TEST(TableRequirementsTest, EmptyUpdatesForReplaceTable) {
107104 EXPECT_EQ (assert_uuid->uuid (), metadata->table_uuid );
108105}
109106
110- // Test: Table already exists (CreateTable requirement validation)
111107TEST (TableRequirementsTest, TableAlreadyExists) {
112108 std::vector<std::unique_ptr<TableUpdate>> updates;
113109
@@ -124,7 +120,6 @@ TEST(TableRequirementsTest, TableAlreadyExists) {
124120 EXPECT_THAT (status, HasErrorMessage (" table already exists" ));
125121}
126122
127- // Test: Table does not exist (CreateTable requirement validation)
128123TEST (TableRequirementsTest, TableDoesNotExist) {
129124 std::vector<std::unique_ptr<TableUpdate>> updates;
130125
@@ -139,7 +134,7 @@ TEST(TableRequirementsTest, TableDoesNotExist) {
139134 EXPECT_THAT (status, IsOk ());
140135}
141136
142- // Test: AssignUUID for UpdateTable
137+ // Test for AssignUUID update
143138TEST (TableRequirementsTest, AssignUUID) {
144139 auto metadata = CreateBaseMetadata (" original-uuid" );
145140 std::vector<std::unique_ptr<TableUpdate>> updates;
@@ -161,12 +156,10 @@ TEST(TableRequirementsTest, AssignUUID) {
161156 ASSERT_NE (assert_uuid, nullptr );
162157 EXPECT_EQ (assert_uuid->uuid (), " original-uuid" );
163158
164- // Validate against base metadata (should succeed)
165159 auto status = requirements[0 ]->Validate (metadata.get ());
166160 EXPECT_THAT (status, IsOk ());
167161}
168162
169- // Test: AssignUUID validation failure
170163TEST (TableRequirementsTest, AssignUUIDFailure) {
171164 auto metadata = CreateBaseMetadata (" original-uuid" );
172165 std::vector<std::unique_ptr<TableUpdate>> updates;
@@ -188,7 +181,6 @@ TEST(TableRequirementsTest, AssignUUIDFailure) {
188181 EXPECT_THAT (status, HasErrorMessage (" UUID does not match" ));
189182}
190183
191- // Test: AssignUUID for ReplaceTable
192184TEST (TableRequirementsTest, AssignUUIDForReplaceTable) {
193185 auto metadata = CreateBaseMetadata (" original-uuid" );
194186 std::vector<std::unique_ptr<TableUpdate>> updates;
@@ -215,56 +207,4 @@ TEST(TableRequirementsTest, AssignUUIDForReplaceTable) {
215207 EXPECT_THAT (status, IsOk ());
216208}
217209
218- // Test: Multiple requirements validation
219- TEST (TableRequirementsTest, ValidateAllRequirements) {
220- auto metadata = CreateBaseMetadata (" test-uuid" );
221- std::vector<std::unique_ptr<TableUpdate>> updates;
222- updates.push_back (std::make_unique<table::AssignUUID>(metadata->table_uuid ));
223-
224- auto result = TableRequirements::ForUpdateTable (*metadata, updates);
225- ASSERT_THAT (result, IsOk ());
226-
227- auto & requirements = result.value ();
228-
229- // All requirements should validate successfully
230- for (const auto & req : requirements) {
231- auto status = req->Validate (metadata.get ());
232- EXPECT_THAT (status, IsOk ());
233- }
234- }
235-
236- // Test: UUID comparison is case-insensitive
237- TEST (TableRequirementsTest, AssignUUIDCaseInsensitive) {
238- auto metadata = CreateBaseMetadata (" TEST-UUID-1234" );
239- std::vector<std::unique_ptr<TableUpdate>> updates;
240- updates.push_back (std::make_unique<table::AssignUUID>(" test-uuid-1234" ));
241-
242- auto result = TableRequirements::ForUpdateTable (*metadata, updates);
243- ASSERT_THAT (result, IsOk ());
244-
245- auto & requirements = result.value ();
246- ASSERT_EQ (requirements.size (), 1 );
247-
248- // Validate against base metadata (should succeed due to case-insensitive comparison)
249- auto status = requirements[0 ]->Validate (metadata.get ());
250- EXPECT_THAT (status, IsOk ());
251- }
252-
253- // Test: ForCreateTable with AssignUUID does not generate requirements
254- TEST (TableRequirementsTest, CreateTableWithAssignUUID) {
255- std::vector<std::unique_ptr<TableUpdate>> updates;
256- updates.push_back (std::make_unique<table::AssignUUID>(" new-table-uuid" ));
257-
258- auto result = TableRequirements::ForCreateTable (updates);
259- ASSERT_THAT (result, IsOk ());
260-
261- auto & requirements = result.value ();
262- // Should have only AssertDoesNotExist, no UUID requirement for new tables
263- ASSERT_EQ (requirements.size (), 1 );
264-
265- auto * assert_does_not_exist =
266- dynamic_cast <table::AssertDoesNotExist*>(requirements[0 ].get ());
267- EXPECT_NE (assert_does_not_exist, nullptr );
268- }
269-
270210} // namespace iceberg
0 commit comments