Skip to content

Commit fd025b2

Browse files
committed
fix: broken test after change in python-bigquery
Following this change: googleapis/python-bigquery#1408 the SchemaField __init__ and __repr__ method have evolved. This broke some tests.
1 parent c8e9c49 commit fd025b2

File tree

4 files changed

+28
-28
lines changed

4 files changed

+28
-28
lines changed

bigquery_frame/data_diff/dataframe_comparator.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,9 +106,9 @@ def _schema_to_string(
106106
c1 STRING (nullable)
107107
c2 INTEGER (nullable)
108108
>>> schema = [
109-
... SchemaField('id', 'INTEGER', 'NULLABLE', 'An id', (), None),
110-
... SchemaField('c1', 'STRING', 'REQUIRED', 'A string column', (), None),
111-
... SchemaField('c2', 'INTEGER', 'NULLABLE', 'An int column', (), None)
109+
... SchemaField(name='id', field_type='INTEGER', mode='NULLABLE', description='An id'),
110+
... SchemaField(name='c1', field_type='STRING', mode='REQUIRED', description='A string column'),
111+
... SchemaField(name='c2', field_type='INTEGER', mode='NULLABLE', description='An int column')
112112
... ]
113113
>>> print('\\n'.join(df_comparator._schema_to_string(schema, include_nullable=True, include_metadata=True)))
114114
id INTEGER (nullable) An id

bigquery_frame/dataframe.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ def schema_to_simple_string(schema: List[SchemaField]):
7777
>>> bq = BigQueryBuilder()
7878
>>> df = bq.sql('SELECT 1 as id, STRUCT(1 as a, [STRUCT(2 as c, 3 as d)] as b, [4, 5] as e) as s')
7979
>>> print(df.schema) # noqa: E501
80-
[SchemaField('id', 'INTEGER', 'NULLABLE', None, (), None), SchemaField('s', 'RECORD', 'NULLABLE', None, (SchemaField('a', 'INTEGER', 'NULLABLE', None, (), None), SchemaField('b', 'RECORD', 'REPEATED', None, (SchemaField('c', 'INTEGER', 'NULLABLE', None, (), None), SchemaField('d', 'INTEGER', 'NULLABLE', None, (), None)), None), SchemaField('e', 'INTEGER', 'REPEATED', None, (), None)), None)]
80+
[SchemaField('id', 'INTEGER', 'NULLABLE', None, None, (), None), SchemaField('s', 'RECORD', 'NULLABLE', None, None, (SchemaField('a', 'INTEGER', 'NULLABLE', None, None, (), None), SchemaField('b', 'RECORD', 'REPEATED', None, None, (SchemaField('c', 'INTEGER', 'NULLABLE', None, None, (), None), SchemaField('d', 'INTEGER', 'NULLABLE', None, None, (), None)), None), SchemaField('e', 'INTEGER', 'REPEATED', None, None, (), None)), None)]
8181
>>> schema_to_simple_string(df.schema)
8282
'id:INTEGER,s:STRUCT<a:INTEGER,b:ARRAY<STRUCT<c:INTEGER,d:INTEGER>>,e:ARRAY<INTEGER>>'
8383

bigquery_frame/transformations_impl/flatten_schema.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,11 @@ def flatten_schema_field(prefix: str, schema_field: SchemaField, nullable: bool)
5757
mode = "REPEATED"
5858
return [
5959
SchemaField(
60-
prefix,
61-
schema_field.field_type,
62-
mode,
63-
schema_field.description,
64-
schema_field.fields,
60+
name=prefix,
61+
field_type=schema_field.field_type,
62+
mode=mode,
63+
description=schema_field.description,
64+
fields=schema_field.fields,
6565
)
6666
]
6767

tests/test_dataframe.py

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ def test_createOrReplaceTempView(bq: BigQueryBuilder):
1414
df2 = bq.sql("""SELECT * FROM pokedex""")
1515

1616
expected = [
17-
SchemaField("id", "INTEGER", "NULLABLE", None, (), None),
18-
SchemaField("name", "STRING", "NULLABLE", None, (), None),
19-
SchemaField("types", "STRING", "REPEATED", None, (), None),
20-
SchemaField("other_col", "INTEGER", "NULLABLE", None, (), None),
17+
SchemaField(name="id", field_type="INTEGER", mode="NULLABLE"),
18+
SchemaField(name="name", field_type="STRING", mode="NULLABLE"),
19+
SchemaField(name="types", field_type="STRING", mode="REPEATED"),
20+
SchemaField(name="other_col", field_type="INTEGER", mode="NULLABLE"),
2121
]
2222

2323
assert df2.schema == expected
@@ -29,7 +29,7 @@ def test_createOrReplaceTempView_with_reserved_keyword_alias(bq: BigQueryBuilder
2929
bq.sql("""SELECT 1 as id""").createOrReplaceTempView("all")
3030
df = bq.table("all")
3131

32-
expected = [SchemaField("id", "INTEGER", "NULLABLE", None, (), None)]
32+
expected = [SchemaField(name="id", field_type="INTEGER", mode="NULLABLE")]
3333

3434
assert df.schema == expected
3535

@@ -66,10 +66,10 @@ def test_createOrReplaceTempTable(bq: BigQueryBuilder):
6666
df2 = bq.sql("""SELECT * FROM pokedex""")
6767

6868
expected = [
69-
SchemaField("id", "INTEGER", "NULLABLE", None, (), None),
70-
SchemaField("name", "STRING", "NULLABLE", None, (), None),
71-
SchemaField("types", "STRING", "REPEATED", None, (), None),
72-
SchemaField("other_col", "INTEGER", "NULLABLE", None, (), None),
69+
SchemaField(name="id", field_type="INTEGER", mode="NULLABLE"),
70+
SchemaField(name="name", field_type="STRING", mode="NULLABLE"),
71+
SchemaField(name="types", field_type="STRING", mode="REPEATED"),
72+
SchemaField(name="other_col", field_type="INTEGER", mode="NULLABLE"),
7373
]
7474

7575
assert df2.schema == expected
@@ -81,7 +81,7 @@ def test_createOrReplaceTempTable_with_reserved_keyword_alias(bq: BigQueryBuilde
8181
bq.sql("""SELECT 1 as id""").createOrReplaceTempTable("all")
8282
df = bq.table("all")
8383

84-
expected = [SchemaField("id", "INTEGER", "NULLABLE", None, (), None)]
84+
expected = [SchemaField(name="id", field_type="INTEGER", mode="NULLABLE")]
8585

8686
assert df.schema == expected
8787

@@ -98,8 +98,8 @@ def test_select(bq: BigQueryBuilder):
9898
df = bq.sql("""SELECT 1 as c1, 2 as c2""").select("c1", "c2").select(["c1", "c2"])
9999

100100
expected = [
101-
SchemaField("c1", "INTEGER", "NULLABLE", None, (), None),
102-
SchemaField("c2", "INTEGER", "NULLABLE", None, (), None),
101+
SchemaField(name="c1", field_type="INTEGER", mode="NULLABLE"),
102+
SchemaField(name="c2", field_type="INTEGER", mode="NULLABLE"),
103103
]
104104

105105
assert df.schema == expected
@@ -117,10 +117,10 @@ def test_bare_strings(bq: BigQueryBuilder):
117117
df5 = df4.withColumn("name", "LOWER(name)", replace=True)
118118

119119
expected = [
120-
SchemaField("id", "INTEGER", "NULLABLE", None, (), None),
121-
SchemaField("name", "STRING", "NULLABLE", None, (), None),
122-
SchemaField("types", "STRING", "REPEATED", None, (), None),
123-
SchemaField("nb_types", "INTEGER", "NULLABLE", None, (), None),
120+
SchemaField(name="id", field_type="INTEGER", mode="NULLABLE"),
121+
SchemaField(name="name", field_type="STRING", mode="NULLABLE"),
122+
SchemaField(name="types", field_type="STRING", mode="REPEATED"),
123+
SchemaField(name="nb_types", field_type="INTEGER", mode="NULLABLE"),
124124
]
125125

126126
assert df5.schema == expected
@@ -176,9 +176,9 @@ def test_drop(bq: BigQueryBuilder):
176176
df2 = df.drop("other_col", "col_that_does_not_exists")
177177

178178
expected = [
179-
SchemaField("id", "INTEGER", "NULLABLE", None, (), None),
180-
SchemaField("name", "STRING", "NULLABLE", None, (), None),
181-
SchemaField("types", "STRING", "REPEATED", None, (), None),
179+
SchemaField(name="id", field_type="INTEGER", mode="NULLABLE"),
180+
SchemaField(name="name", field_type="STRING", mode="NULLABLE"),
181+
SchemaField(name="types", field_type="STRING", mode="REPEATED"),
182182
]
183183

184184
assert df2.schema == expected

0 commit comments

Comments
 (0)