from __future__ import annotations
def test_select_star(spark) -> None:
df = spark.createDataFrame([(1, 2, 3)], ["a", "b", "c"])
result = df.select("*").collect()
rows = list(result)
assert len(rows) == 1
row = rows[0]
assert len(row) == 3
assert row[0] == 1 and row[1] == 2 and row[2] == 3
out_df = df.select("*")
names = out_df.columns
assert names == ["a", "b", "c"]
def test_select_star_plus_column(spark) -> None:
df = spark.createDataFrame([(10, 20)], ["a", "b"])
result = df.select("*", "a").collect()
rows = list(result)
assert len(rows) == 1
row = rows[0]
assert row[0] == 10 and row[1] == 20 and row[2] == 10
out_df = df.select("*", "a")
names = out_df.columns
assert "a" in names and "b" in names
assert len(names) == 3