Compare commits

...

2 Commits

Author SHA1 Message Date
5f5f1ad114 Generate cloud instead televendcloud entities 2025-12-15 10:37:28 +01:00
0a4030c389 Tweak output 2025-11-04 09:58:08 +01:00
9 changed files with 24 additions and 26 deletions

View File

@ -165,7 +165,6 @@ func run() error {
// Introspect table
prompt.PrintHeader("Introspecting Table")
tableInfo, err := dbClient.IntrospectTable(cfg.DBTable)
if err != nil {
return fmt.Errorf("failed to introspect table: %w", err)
@ -225,7 +224,6 @@ func run() error {
// Print summary
prompt.PrintHeader("Summary")
fmt.Printf("\n")
fmt.Printf(" Entity name: %s\n", color.GreenString(ctx.EntityName))
fmt.Printf(" Module name: %s\n", color.GreenString(ctx.ModuleName))
fmt.Printf(" Output dir: %s\n", color.GreenString(moduleDir))

View File

@ -26,23 +26,23 @@ func GenerateFactory(ctx *Context) (string, error) {
}
for moduleName, entityName := range fkImports {
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.factory import (\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.factory import (\n",
moduleName))
b.WriteString(fmt.Sprintf(" %sFactory,\n", entityName))
b.WriteString(")\n")
}
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.model import (\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.model import (\n",
ctx.ModuleName))
b.WriteString(fmt.Sprintf(" %s,\n", ctx.EntityName))
b.WriteString(")\n")
b.WriteString("from televend_core.test_extras.factory_boy_utils import (\n")
b.WriteString(" CustomSelfAttribute,\n")
b.WriteString(" TelevendBaseFactory,\n")
b.WriteString(" CloudBaseFactory,\n")
b.WriteString(")\n\n\n")
// Class definition
b.WriteString(fmt.Sprintf("class %sFactory(TelevendBaseFactory):\n", ctx.EntityName))
b.WriteString(fmt.Sprintf("class %sFactory(CloudBaseFactory):\n", ctx.EntityName))
// Add boolean fields with defaults
for _, col := range ctx.TableInfo.Columns {

View File

@ -14,7 +14,7 @@ func GenerateFilter(ctx *Context) (string, error) {
// Imports
b.WriteString("from televend_core.databases.base_filter import BaseFilter\n")
b.WriteString("from televend_core.databases.common.filters.filters import EQ, IN, filterfield\n")
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.model import %s\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.model import %s\n",
ctx.ModuleName, ctx.EntityName))
b.WriteString("\n\n")

View File

@ -370,8 +370,8 @@ func TestGenerateRepository(t *testing.T) {
"CRUDRepository",
"model_cls = User",
"from televend_core.databases.base_repository import CRUDRepository",
"from televend_core.databases.televend_repositories.user.filter import",
"from televend_core.databases.televend_repositories.user.model import User",
"from televend_core.databases.cloud_repositories.user.filter import",
"from televend_core.databases.cloud_repositories.user.model import User",
}
for _, expected := range expectedStrings {
@ -508,7 +508,7 @@ func TestGenerateTable(t *testing.T) {
},
expected: []string{
"Enum",
"from televend_core.databases.televend_repositories.order.enum import",
"from televend_core.databases.cloud_repositories.order.enum import",
"OrderStatus",
`Enum(`,
`*OrderStatus.to_value_list()`,
@ -580,7 +580,7 @@ func TestGenerateModel(t *testing.T) {
EnumTypes: map[string]database.EnumType{},
},
expected: []string{
"from televend_core.databases.televend_repositories.user.model import User",
"from televend_core.databases.cloud_repositories.user.model import User",
"user_id: int",
"user: User",
"title: str",
@ -791,7 +791,7 @@ func TestGenerateFactory(t *testing.T) {
"from __future__ import annotations",
"from typing import Type",
"import factory",
"class UserFactory(TelevendBaseFactory):",
"class UserFactory(CloudBaseFactory):",
"alive = True",
"id = None",
`name = factory.Faker("pystr", max_chars=100)`,
@ -816,7 +816,7 @@ func TestGenerateFactory(t *testing.T) {
EnumTypes: map[string]database.EnumType{},
},
expected: []string{
"from televend_core.databases.televend_repositories.user.factory import",
"from televend_core.databases.cloud_repositories.user.factory import",
"UserFactory",
`user = CustomSelfAttribute("..user", UserFactory)`,
"user_id = factory.LazyAttribute(lambda a: a.user.id if a.user else None)",

View File

@ -12,7 +12,7 @@ func GenerateLoadOptions(ctx *Context) (string, error) {
// Imports
b.WriteString("from televend_core.databases.base_load_options import LoadOptions\n")
b.WriteString("from televend_core.databases.common.load_options import joinload\n")
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.model import %s\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.model import %s\n",
ctx.ModuleName, ctx.EntityName))
b.WriteString("\n\n")

View File

@ -11,13 +11,13 @@ func GenerateManager(ctx *Context) (string, error) {
// Imports
b.WriteString("from televend_core.databases.base_manager import CRUDManager\n")
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.filter import (\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.filter import (\n",
ctx.ModuleName))
b.WriteString(fmt.Sprintf(" %sFilter,\n", ctx.EntityName))
b.WriteString(")\n")
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.model import %s\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.model import %s\n",
ctx.ModuleName, ctx.EntityName))
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.repository import (\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.repository import (\n",
ctx.ModuleName))
b.WriteString(fmt.Sprintf(" %sRepository,\n", ctx.EntityName))
b.WriteString(")\n")

View File

@ -38,7 +38,7 @@ func GenerateModel(ctx *Context) (string, error) {
// Import enum types
if len(ctx.TableInfo.EnumTypes) > 0 {
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.enum import (\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.enum import (\n",
ctx.ModuleName))
for _, enumType := range ctx.TableInfo.EnumTypes {
enumName := naming.ToPascalCase(enumType.TypeName)
@ -49,7 +49,7 @@ func GenerateModel(ctx *Context) (string, error) {
// Write foreign key imports
for moduleName, entityName := range fkImports {
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.model import %s\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.model import %s\n",
moduleName, entityName))
}

View File

@ -11,11 +11,11 @@ func GenerateRepository(ctx *Context) (string, error) {
// Imports
b.WriteString("from televend_core.databases.base_repository import CRUDRepository\n")
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.filter import (\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.filter import (\n",
ctx.ModuleName))
b.WriteString(fmt.Sprintf(" %sFilter,\n", ctx.EntityName))
b.WriteString(")\n")
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.model import %s\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.model import %s\n",
ctx.ModuleName, ctx.EntityName))
b.WriteString("\n\n")

View File

@ -72,14 +72,14 @@ func GenerateTable(ctx *Context) (string, error) {
if len(ctx.TableInfo.EnumTypes) > 0 {
for _, enumType := range ctx.TableInfo.EnumTypes {
enumName := naming.ToPascalCase(enumType.TypeName)
b.WriteString(fmt.Sprintf("from televend_core.databases.televend_repositories.%s.enum import (\n",
b.WriteString(fmt.Sprintf("from televend_core.databases.cloud_repositories.%s.enum import (\n",
ctx.ModuleName))
b.WriteString(fmt.Sprintf(" %s,\n", enumName))
b.WriteString(")\n")
}
}
b.WriteString("from televend_core.databases.televend_repositories.table_meta import metadata_obj\n\n")
b.WriteString("from televend_core.databases.cloud_repositories.table_meta import metadata_obj\n\n")
// Table definition
b.WriteString(fmt.Sprintf("%s = Table(\n", ctx.TableConstant))