add generate heper config
All checks were successful
Go Action / goaction (pull_request) Successful in 4m52s
All checks were successful
Go Action / goaction (pull_request) Successful in 4m52s
This commit is contained in:
@@ -1,11 +1,18 @@
|
||||
package generate_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"gitoa.ru/go-4devs/config/definition"
|
||||
"gitoa.ru/go-4devs/config/definition/generate"
|
||||
"gitoa.ru/go-4devs/config/definition/generate/bootstrap"
|
||||
"gitoa.ru/go-4devs/config/definition/generate/view"
|
||||
"gitoa.ru/go-4devs/config/definition/group"
|
||||
"gitoa.ru/go-4devs/config/definition/option"
|
||||
"gitoa.ru/go-4devs/config/definition/proto"
|
||||
"gitoa.ru/go-4devs/config/test/require"
|
||||
)
|
||||
|
||||
type LogLevel string
|
||||
@@ -17,7 +24,7 @@ func (l *LogLevel) UnmarshalText(in []byte) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func Configure(def *definition.Definition) {
|
||||
func Configure(_ context.Context, def *definition.Definition) error {
|
||||
def.Add(
|
||||
option.String("test", "test string", view.WithSkipContext),
|
||||
group.New("user", "configure user",
|
||||
@@ -30,4 +37,52 @@ func Configure(def *definition.Definition) {
|
||||
proto.New("service", "servise logger", option.New("level", "log level", LogLevel(""))),
|
||||
),
|
||||
)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func TestGenerate_Bootstrap(t *testing.T) {
|
||||
t.SkipNow()
|
||||
t.Parallel()
|
||||
|
||||
ctx := context.Background()
|
||||
options := definition.New()
|
||||
err := Configure(ctx, options)
|
||||
require.NoError(t, err)
|
||||
|
||||
cfg, _ := generate.NewMemoryProvider("generate_test.go",
|
||||
generate.WithMethods("Config"),
|
||||
generate.WithFullPkg("gitoa.ru/go-4devs/config/definition/generate_test"),
|
||||
)
|
||||
|
||||
path, err := bootstrap.Bootstrap(ctx, generate.NewConfigure(ctx, cfg))
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
os.Remove(path)
|
||||
|
||||
t.Log(path)
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
func TestGenerate_Genereate(t *testing.T) {
|
||||
t.SkipNow()
|
||||
t.Parallel()
|
||||
|
||||
ctx := context.Background()
|
||||
options := definition.New()
|
||||
err := Configure(ctx, options)
|
||||
require.NoError(t, err)
|
||||
|
||||
cfg, _ := generate.NewMemoryProvider("generate_test.go",
|
||||
generate.WithMethods("Config"),
|
||||
generate.WithFullPkg("gitoa.ru/go-4devs/config/definition/generate_test"),
|
||||
)
|
||||
|
||||
err = generate.Generate(ctx, generate.NewConfigure(ctx, cfg))
|
||||
require.NoError(t, err)
|
||||
|
||||
t.FailNow()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user