Skip to content

Commit 9d01b02

Browse files
authored
Explictly check for schema_id in tests (#487)
1 parent 0e1fe8a commit 9d01b02

File tree

6 files changed

+25
-22
lines changed

6 files changed

+25
-22
lines changed

tests/catalog/test_base.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -614,9 +614,9 @@ def test_add_column(catalog: InMemoryCatalog) -> None:
614614
NestedField(field_id=2, name="y", field_type=LongType(), required=True, doc="comment"),
615615
NestedField(field_id=3, name="z", field_type=LongType(), required=True),
616616
NestedField(field_id=4, name="new_column1", field_type=IntegerType(), required=False),
617-
schema_id=0,
618617
identifier_field_ids=[],
619618
)
619+
assert given_table.schema().schema_id == 1
620620

621621
transaction = given_table.transaction()
622622
transaction.update_schema().add_column(path="new_column2", field_type=IntegerType(), doc="doc").commit()
@@ -628,9 +628,9 @@ def test_add_column(catalog: InMemoryCatalog) -> None:
628628
NestedField(field_id=3, name="z", field_type=LongType(), required=True),
629629
NestedField(field_id=4, name="new_column1", field_type=IntegerType(), required=False),
630630
NestedField(field_id=5, name="new_column2", field_type=IntegerType(), required=False, doc="doc"),
631-
schema_id=0,
632631
identifier_field_ids=[],
633632
)
633+
assert given_table.schema().schema_id == 2
634634

635635

636636
def test_add_column_with_statement(catalog: InMemoryCatalog) -> None:
@@ -644,9 +644,9 @@ def test_add_column_with_statement(catalog: InMemoryCatalog) -> None:
644644
NestedField(field_id=2, name="y", field_type=LongType(), required=True, doc="comment"),
645645
NestedField(field_id=3, name="z", field_type=LongType(), required=True),
646646
NestedField(field_id=4, name="new_column1", field_type=IntegerType(), required=False),
647-
schema_id=0,
648647
identifier_field_ids=[],
649648
)
649+
assert given_table.schema().schema_id == 1
650650

651651
with given_table.transaction() as tx:
652652
tx.update_schema().add_column(path="new_column2", field_type=IntegerType(), doc="doc").commit()
@@ -657,9 +657,9 @@ def test_add_column_with_statement(catalog: InMemoryCatalog) -> None:
657657
NestedField(field_id=3, name="z", field_type=LongType(), required=True),
658658
NestedField(field_id=4, name="new_column1", field_type=IntegerType(), required=False),
659659
NestedField(field_id=5, name="new_column2", field_type=IntegerType(), required=False, doc="doc"),
660-
schema_id=0,
661660
identifier_field_ids=[],
662661
)
662+
assert given_table.schema().schema_id == 2
663663

664664

665665
def test_catalog_repr(catalog: InMemoryCatalog) -> None:

tests/integration/test_partition_evolution.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -419,9 +419,9 @@ def test_change_specs_and_schema_transaction(catalog: Catalog) -> None:
419419
NestedField(field_id=2, name='event_ts', field_type=TimestampType(), required=False),
420420
NestedField(field_id=3, name='str', field_type=StringType(), required=False),
421421
NestedField(field_id=4, name='col_string', field_type=StringType(), required=False),
422-
schema_id=1,
423422
identifier_field_ids=[],
424423
)
424+
assert table.schema().schema_id == 1
425425

426426

427427
@pytest.mark.integration

tests/integration/test_reads.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,6 @@ def create_table(catalog: Catalog) -> Table:
9393
NestedField(field_id=2, name="int", field_type=IntegerType(), required=True),
9494
NestedField(field_id=3, name="bool", field_type=BooleanType(), required=False),
9595
NestedField(field_id=4, name="datetime", field_type=TimestampType(), required=False),
96-
schema_id=1,
9796
)
9897

9998
return catalog.create_table(identifier=TABLE_NAME, schema=schema)

tests/integration/test_rest_schema.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -361,19 +361,19 @@ def test_revert_changes(simple_table: Table, table_schema_simple: Schema) -> Non
361361
NestedField(field_id=1, name='foo', field_type=StringType(), required=False),
362362
NestedField(field_id=2, name='bar', field_type=IntegerType(), required=True),
363363
NestedField(field_id=3, name='baz', field_type=BooleanType(), required=False),
364-
schema_id=0,
365364
identifier_field_ids=[2],
366365
),
367366
1: Schema(
368367
NestedField(field_id=1, name='foo', field_type=StringType(), required=False),
369368
NestedField(field_id=2, name='bar', field_type=IntegerType(), required=True),
370369
NestedField(field_id=3, name='baz', field_type=BooleanType(), required=False),
371370
NestedField(field_id=4, name='data', field_type=IntegerType(), required=False),
372-
schema_id=1,
373371
identifier_field_ids=[2],
374372
),
375373
}
376374
assert simple_table.schema().schema_id == 0
375+
assert simple_table.schemas()[0].schema_id == 0
376+
assert simple_table.schemas()[1].schema_id == 1
377377

378378

379379
@pytest.mark.integration

tests/table/test_init.py

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -107,26 +107,26 @@ def test_schema(table_v2: Table) -> None:
107107
NestedField(field_id=1, name="x", field_type=LongType(), required=True),
108108
NestedField(field_id=2, name="y", field_type=LongType(), required=True, doc="comment"),
109109
NestedField(field_id=3, name="z", field_type=LongType(), required=True),
110-
schema_id=1,
111110
identifier_field_ids=[1, 2],
112111
)
112+
assert table_v2.schema().schema_id == 1
113113

114114

115115
def test_schemas(table_v2: Table) -> None:
116116
assert table_v2.schemas() == {
117117
0: Schema(
118118
NestedField(field_id=1, name="x", field_type=LongType(), required=True),
119-
schema_id=0,
120119
identifier_field_ids=[],
121120
),
122121
1: Schema(
123122
NestedField(field_id=1, name="x", field_type=LongType(), required=True),
124123
NestedField(field_id=2, name="y", field_type=LongType(), required=True, doc="comment"),
125124
NestedField(field_id=3, name="z", field_type=LongType(), required=True),
126-
schema_id=1,
127125
identifier_field_ids=[1, 2],
128126
),
129127
}
128+
assert table_v2.schemas()[0].schema_id == 0
129+
assert table_v2.schemas()[1].schema_id == 1
130130

131131

132132
def test_spec(table_v2: Table) -> None:
@@ -266,31 +266,34 @@ def test_table_scan_ref_does_not_exists(table_v2: Table) -> None:
266266

267267
def test_table_scan_projection_full_schema(table_v2: Table) -> None:
268268
scan = table_v2.scan()
269-
assert scan.select("x", "y", "z").projection() == Schema(
269+
projection_schema = scan.select("x", "y", "z").projection()
270+
assert projection_schema == Schema(
270271
NestedField(field_id=1, name="x", field_type=LongType(), required=True),
271272
NestedField(field_id=2, name="y", field_type=LongType(), required=True, doc="comment"),
272273
NestedField(field_id=3, name="z", field_type=LongType(), required=True),
273-
schema_id=1,
274274
identifier_field_ids=[1, 2],
275275
)
276+
assert projection_schema.schema_id == 1
276277

277278

278279
def test_table_scan_projection_single_column(table_v2: Table) -> None:
279280
scan = table_v2.scan()
280-
assert scan.select("y").projection() == Schema(
281+
projection_schema = scan.select("y").projection()
282+
assert projection_schema == Schema(
281283
NestedField(field_id=2, name="y", field_type=LongType(), required=True, doc="comment"),
282-
schema_id=1,
283284
identifier_field_ids=[2],
284285
)
286+
assert projection_schema.schema_id == 1
285287

286288

287289
def test_table_scan_projection_single_column_case_sensitive(table_v2: Table) -> None:
288290
scan = table_v2.scan()
289-
assert scan.with_case_sensitive(False).select("Y").projection() == Schema(
291+
projection_schema = scan.with_case_sensitive(False).select("Y").projection()
292+
assert projection_schema == Schema(
290293
NestedField(field_id=2, name="y", field_type=LongType(), required=True, doc="comment"),
291-
schema_id=1,
292294
identifier_field_ids=[2],
293295
)
296+
assert projection_schema.schema_id == 1
294297

295298

296299
def test_table_scan_projection_unknown_column(table_v2: Table) -> None:
@@ -983,20 +986,22 @@ def test_correct_schema() -> None:
983986
)
984987

985988
# Should use the current schema, instead the one from the snapshot
986-
assert t.scan().projection() == Schema(
989+
projection_schema = t.scan().projection()
990+
assert projection_schema == Schema(
987991
NestedField(field_id=1, name='x', field_type=LongType(), required=True),
988992
NestedField(field_id=2, name='y', field_type=LongType(), required=True),
989993
NestedField(field_id=3, name='z', field_type=LongType(), required=True),
990-
schema_id=1,
991994
identifier_field_ids=[1, 2],
992995
)
996+
assert projection_schema.schema_id == 1
993997

994998
# When we explicitly filter on the commit, we want to have the schema that's linked to the snapshot
995-
assert t.scan(snapshot_id=123).projection() == Schema(
999+
projection_schema = t.scan(snapshot_id=123).projection()
1000+
assert projection_schema == Schema(
9961001
NestedField(field_id=1, name='x', field_type=LongType(), required=True),
997-
schema_id=0,
9981002
identifier_field_ids=[],
9991003
)
1004+
assert projection_schema.schema_id == 0
10001005

10011006
with pytest.warns(UserWarning, match="Metadata does not contain schema with id: 10"):
10021007
t.scan(snapshot_id=234).projection()

tests/table/test_metadata.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,6 @@ def test_v1_metadata_parsing_directly(example_table_metadata_v1: Dict[str, Any])
120120
NestedField(field_id=1, name="x", field_type=LongType(), required=True),
121121
NestedField(field_id=2, name="y", field_type=LongType(), required=True, doc="comment"),
122122
NestedField(field_id=3, name="z", field_type=LongType(), required=True),
123-
schema_id=0,
124123
identifier_field_ids=[],
125124
)
126125
]

0 commit comments

Comments
 (0)