Break utils package into subpackages.
This commit is contained in:
parent
06ecd73f67
commit
d7a5adb239
25 changed files with 276 additions and 318 deletions
24
internal/utils/dbidentifier/dbidentifier.go
Normal file
24
internal/utils/dbidentifier/dbidentifier.go
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
package dbidentifier
|
||||
|
||||
import (
|
||||
"github.com/go-jet/jet/v2/internal/3rdparty/snaker"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// ToGoIdentifier converts database identifier to Go identifier.
|
||||
func ToGoIdentifier(databaseIdentifier string) string {
|
||||
return snaker.SnakeToCamel(replaceInvalidChars(databaseIdentifier))
|
||||
}
|
||||
|
||||
// ToGoFileName converts database identifier to Go file name.
|
||||
func ToGoFileName(databaseIdentifier string) string {
|
||||
return strings.ToLower(replaceInvalidChars(databaseIdentifier))
|
||||
}
|
||||
|
||||
func replaceInvalidChars(str string) string {
|
||||
str = strings.Replace(str, " ", "_", -1)
|
||||
str = strings.Replace(str, "-", "_", -1)
|
||||
str = strings.Replace(str, ".", "_", -1)
|
||||
|
||||
return str
|
||||
}
|
||||
25
internal/utils/dbidentifier/dbidentifier_test.go
Normal file
25
internal/utils/dbidentifier/dbidentifier_test.go
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
package dbidentifier
|
||||
|
||||
import (
|
||||
"github.com/stretchr/testify/require"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestToGoIdentifier(t *testing.T) {
|
||||
require.Equal(t, ToGoIdentifier(""), "")
|
||||
require.Equal(t, ToGoIdentifier("uuid"), "UUID")
|
||||
require.Equal(t, ToGoIdentifier("col1"), "Col1")
|
||||
require.Equal(t, ToGoIdentifier("PG-13"), "Pg13")
|
||||
require.Equal(t, ToGoIdentifier("13_pg"), "13Pg")
|
||||
|
||||
require.Equal(t, ToGoIdentifier("mytable"), "Mytable")
|
||||
require.Equal(t, ToGoIdentifier("MYTABLE"), "Mytable")
|
||||
require.Equal(t, ToGoIdentifier("MyTaBlE"), "MyTaBlE")
|
||||
require.Equal(t, ToGoIdentifier("myTaBlE"), "MyTaBlE")
|
||||
|
||||
require.Equal(t, ToGoIdentifier("my_table"), "MyTable")
|
||||
require.Equal(t, ToGoIdentifier("MY_TABLE"), "MyTable")
|
||||
require.Equal(t, ToGoIdentifier("My_Table"), "MyTable")
|
||||
require.Equal(t, ToGoIdentifier("My Table"), "MyTable")
|
||||
require.Equal(t, ToGoIdentifier("My-Table"), "MyTable")
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue