Skip to content

Commit 545f857

Browse files
committed
schema instead of type for column
1 parent 2a4bab9 commit 545f857

15 files changed

Lines changed: 134 additions & 120 deletions

abstra_json_sql/apply.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -748,7 +748,8 @@ def apply_with(with_clause: With, tables: ITablesSnapshot, ctx: dict):
748748
name=part.name,
749749
columns=[
750750
Column(
751-
name=field_name(field), type=infer_expression(field.expression, ctx)
751+
name=field_name(field),
752+
schema=infer_expression(field.expression, ctx),
752753
)
753754
for field in part.command.field_parts
754755
],

abstra_json_sql/cli.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ def interactive_create_table(workdir: Path):
132132
# Create column
133133
column = Column(
134134
name=column_name,
135-
type=column_type,
135+
schema=column_type,
136136
is_primary_key=is_primary_key,
137137
default=default_value,
138138
)

abstra_json_sql/eval_test.py

Lines changed: 60 additions & 60 deletions
Large diffs are not rendered by default.

abstra_json_sql/persistence/base_test.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ def setUp(self):
1616
test_table = Table(
1717
name="test_table",
1818
columns=[
19-
Column(name="id", type=ColumnType.int),
20-
Column(name="name", type=ColumnType.string),
19+
Column(name="id", schema=ColumnType.int),
20+
Column(name="name", schema=ColumnType.string),
2121
],
2222
data=[],
2323
)
@@ -30,8 +30,8 @@ def setUp(self):
3030
test_table_l = Table(
3131
name="test_table",
3232
columns=[
33-
Column(name="id", type=ColumnType.int),
34-
Column(name="name", type=ColumnType.string),
33+
Column(name="id", schema=ColumnType.int),
34+
Column(name="name", schema=ColumnType.string),
3535
],
3636
data=[],
3737
)

abstra_json_sql/persistence/extended.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ def change_column_type(
9696
if table.name == table_name:
9797
for col in table.columns:
9898
if col.name == column_name:
99-
col.type = new_type
99+
col.schema = new_type
100100
return
101101
self.snapshot.change_column_type(table_name, column_name, new_type)
102102

abstra_json_sql/persistence/extended_test.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ def base_tables(self):
1313
def extra_table(self):
1414
return Table(
1515
name="extra",
16-
columns=[Column(name="id", type=ColumnType.int)],
16+
columns=[Column(name="id", schema=ColumnType.int)],
1717
data=[{"id": 1}],
1818
)
1919

@@ -24,7 +24,7 @@ def test_extended_tables_creation(self, base_tables, extra_table):
2424

2525
def test_get_table_from_base(self, base_tables, extra_table):
2626
base_table = Table(
27-
name="base", columns=[Column(name="id", type=ColumnType.int)], data=[]
27+
name="base", columns=[Column(name="id", schema=ColumnType.int)], data=[]
2828
)
2929
base_tables.add_table(base_table)
3030

@@ -46,7 +46,7 @@ def test_get_nonexistent_table(self, base_tables, extra_table):
4646
def test_add_table(self, base_tables, extra_table):
4747
extended = ExtendedTables(base_tables, [extra_table])
4848
new_table = Table(
49-
name="new", columns=[Column(name="id", type=ColumnType.int)], data=[]
49+
name="new", columns=[Column(name="id", schema=ColumnType.int)], data=[]
5050
)
5151
extended.add_table(new_table)
5252

abstra_json_sql/persistence/json.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ def get_table(self, name: str) -> Optional[Table]:
9090
assert isinstance(row, dict), f"Row {row} is not a dictionary"
9191
for key, value in row.items():
9292
if key not in [col.name for col in columns_set]:
93-
col = Column(name=key, type=ColumnType.from_value(value))
93+
col = Column(name=key, schema=ColumnType.from_value(value))
9494
columns_set.add(col)
9595
columns = list(columns_set)
9696
# Save inferred metadata
@@ -265,7 +265,7 @@ def change_column_type(
265265
# Update metadata
266266
for col in columns:
267267
if col.name == column_name:
268-
col.type = new_type
268+
col.schema = new_type
269269
break
270270
else:
271271
raise ValueError(f"Column {column_name} not found in table {table_name}")

abstra_json_sql/persistence/json_test.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@ def sample_table(self):
4141
return Table(
4242
name="users",
4343
columns=[
44-
Column(name="id", type=ColumnType.int, is_primary_key=True),
45-
Column(name="name", type=ColumnType.string),
46-
Column(name="age", type=ColumnType.int),
44+
Column(name="id", schema=ColumnType.int, is_primary_key=True),
45+
Column(name="name", schema=ColumnType.string),
46+
Column(name="age", schema=ColumnType.int),
4747
],
4848
data=[
4949
{"id": 1, "name": "Alice", "age": 30},
@@ -118,7 +118,7 @@ def test_rename_table(self, tables, sample_table, temp_dir):
118118
def test_add_column(self, tables, sample_table):
119119
tables.add_table(sample_table)
120120
new_column = Column(
121-
name="email", type=ColumnType.string, default="test@example.com"
121+
name="email", schema=ColumnType.string, default="test@example.com"
122122
)
123123
tables.add_column("users", new_column)
124124

@@ -154,7 +154,7 @@ def test_change_column_type(self, tables, sample_table):
154154

155155
table = tables.get_table("users")
156156
age_col = table.get_column("age")
157-
assert age_col.type == ColumnType.string
157+
assert age_col.schema == ColumnType.string
158158

159159
def test_insert(self, tables, sample_table):
160160
tables.add_table(sample_table)
@@ -194,8 +194,8 @@ def test_new_uuid_implementation():
194194
table = Table(
195195
name="users",
196196
columns=[
197-
Column(name="id", type=ColumnType.int, is_primary_key=True),
198-
Column(name="name", type=ColumnType.string),
197+
Column(name="id", schema=ColumnType.int, is_primary_key=True),
198+
Column(name="name", schema=ColumnType.string),
199199
],
200200
data=[
201201
{"id": 1, "name": "Alice"},
@@ -249,8 +249,8 @@ def test_uuid_file_names_and_rename():
249249
table = Table(
250250
name="users",
251251
columns=[
252-
Column(name="id", type=ColumnType.int, is_primary_key=True),
253-
Column(name="name", type=ColumnType.string),
252+
Column(name="id", schema=ColumnType.int, is_primary_key=True),
253+
Column(name="name", schema=ColumnType.string),
254254
],
255255
data=[
256256
{"id": 1, "name": "Alice"},

abstra_json_sql/persistence/jsonl.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ def get_table(self, name: str) -> Optional[Table]:
139139
for row in data:
140140
for key, value in row.items():
141141
if key not in [col.name for col in columns_set]:
142-
col = Column(name=key, type=ColumnType.from_value(value))
142+
col = Column(name=key, schema=ColumnType.from_value(value))
143143
columns_set.add(col)
144144
columns = list(columns_set)
145145
# Save inferred metadata
@@ -290,7 +290,7 @@ def change_column_type(
290290
# Update metadata
291291
for col in columns:
292292
if col.name == column_name:
293-
col.type = new_type
293+
col.schema = new_type
294294
break
295295
else:
296296
raise ValueError(f"Column {column_name} not found in table {table_name}")

abstra_json_sql/persistence/jsonl_test.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,9 @@ def sample_table(self):
4444
return Table(
4545
name="users",
4646
columns=[
47-
Column(name="id", type=ColumnType.int, is_primary_key=True),
48-
Column(name="name", type=ColumnType.string),
49-
Column(name="age", type=ColumnType.int),
47+
Column(name="id", schema=ColumnType.int, is_primary_key=True),
48+
Column(name="name", schema=ColumnType.string),
49+
Column(name="age", schema=ColumnType.int),
5050
],
5151
data=[
5252
{"id": 1, "name": "Alice", "age": 30},
@@ -118,7 +118,7 @@ def test_rename_table(self, tables, sample_table, temp_dir):
118118
def test_add_column(self, tables, sample_table):
119119
tables.add_table(sample_table)
120120
new_column = Column(
121-
name="email", type=ColumnType.string, default="test@example.com"
121+
name="email", schema=ColumnType.string, default="test@example.com"
122122
)
123123
tables.add_column("users", new_column)
124124

@@ -154,7 +154,7 @@ def test_change_column_type(self, tables, sample_table):
154154

155155
table = tables.get_table("users")
156156
age_col = table.get_column("age")
157-
assert age_col.type == ColumnType.string
157+
assert age_col.schema == ColumnType.string
158158

159159
def test_insert(self, tables, sample_table):
160160
tables.add_table(sample_table)

0 commit comments

Comments
 (0)