Skip to content

Commit e8eab9c

Browse files
committed
feat(#58): remove trailing comma in Enum SQL
1 parent 47de70d commit e8eab9c

3 files changed

Lines changed: 5 additions & 4 deletions

File tree

pydbml/renderer/sql/default/enum.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ def render_enum(model: Enum) -> str:
2121

2222
result = comment_to_sql(model.comment) if model.comment else ''
2323
result += f'CREATE TYPE {get_full_name_for_sql(model)} AS ENUM (\n'
24-
result += '\n'.join(f'{indent(DefaultSQLRenderer.render(i), " ")}' for i in model.items)
24+
enum_body = '\n'.join(f'{indent(DefaultSQLRenderer.render(i), " ")}' for i in model.items)
25+
result += enum_body.rstrip(',')
2526
result += '\n);'
2627
return result
2728

test/test_data/integration1.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
CREATE TYPE "level" AS ENUM (
22
'junior',
33
'middle',
4-
'senior',
4+
'senior'
55
);
66

77
CREATE TABLE "books" (

test/test_renderer/test_sql/test_default/test_enum.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ def test_simple_enum(enum1: Enum) -> None:
2121
expected = (
2222
'CREATE TYPE "product status" AS ENUM (\n'
2323
" 'production',\n"
24-
" 'development',\n"
24+
" 'development'\n"
2525
");"
2626
)
2727
assert render_enum(enum1) == expected
@@ -33,7 +33,7 @@ def test_comments(enum1: Enum) -> None:
3333
"-- Enum comment\n"
3434
'CREATE TYPE "product status" AS ENUM (\n'
3535
" 'production',\n"
36-
" 'development',\n"
36+
" 'development'\n"
3737
");"
3838
)
3939
assert render_enum(enum1) == expected

0 commit comments

Comments
 (0)