1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
|
package singleprocess
// import (
// "context"
// "testing"
// "github.com/stretchr/testify/require"
// "github.com/hashicorp/go-hclog"
// "github.com/hashicorp/vagrant-plugin-sdk/proto/vagrant_plugin_sdk"
// "github.com/hashicorp/vagrant/internal/server"
// "github.com/hashicorp/vagrant/internal/server/proto/vagrant_server"
// "github.com/hashicorp/vagrant/internal/server/singleprocess/state"
// "github.com/hashicorp/vagrant/internal/serverconfig"
// )
// func TestServiceConfig(t *testing.T) {
// ctx := context.Background()
// // Create our server
// impl, err := New(WithDB(testDB(t)))
// require.NoError(t, err)
// client := server.TestServer(t, impl)
// // Simplify writing tests
// type (
// SReq = vagrant_server.ConfigSetRequest
// GReq = vagrant_server.ConfigGetRequest
// )
// Var := &vagrant_server.ConfigVar{
// Scope: &vagrant_server.ConfigVar_Project{
// Project: &vagrant_plugin_sdk.Ref_Project{
// ResourceId: "test",
// Name: "bar",
// },
// },
// Name: "DATABASE_URL",
// Value: "postgresql:///",
// }
// t.Run("set and get", func(t *testing.T) {
// require := require.New(t)
// // Create, should get an ID back
// resp, err := client.SetConfig(ctx, &SReq{Variables: []*vagrant_server.ConfigVar{Var}})
// require.NoError(err)
// require.NotNil(resp)
// // Let's write some data
// grep, err := client.GetConfig(ctx, &GReq{
// Scope: &vagrant_server.ConfigGetRequest_Project{
// Project: &vagrant_plugin_sdk.Ref_Project{
// ResourceId: "test",
// Name: "bar",
// },
// },
// })
// require.NoError(err)
// require.NotNil(grep)
// require.Equal(1, len(grep.Variables))
// require.Equal(Var.Name, grep.Variables[0].Name)
// require.Equal(Var.Value, grep.Variables[0].Value)
// })
// }
// func TestServerConfigWithStartupConfig(t *testing.T) {
// cfg := &serverconfig.Config{
// CEBConfig: &serverconfig.CEBConfig{
// Addr: "myendpoint",
// TLSEnabled: false,
// TLSSkipVerify: true,
// },
// }
// db := testDB(t)
// // Create our server
// impl, err := New(
// WithDB(db),
// WithConfig(cfg),
// )
// require.NoError(t, err)
// _ = server.TestServer(t, impl)
// st, err := state.New(hclog.L(), db)
// require.NoError(t, err)
// t.Run("Check config defaults are set", func(t *testing.T) {
// require := require.New(t)
// retCfg, err := st.ServerConfigGet()
// require.NoError(err)
// require.NotNil(retCfg)
// addr := retCfg.AdvertiseAddrs[0]
// require.Equal(cfg.CEBConfig.Addr, addr.Addr)
// require.Equal(cfg.CEBConfig.TLSEnabled, addr.Tls)
// require.Equal(cfg.CEBConfig.TLSSkipVerify, addr.TlsSkipVerify)
// })
// }
// func TestServerConfigWithNoStartupConfig(t *testing.T) {
// db := testDB(t)
// // Create our server
// impl, err := New(
// WithDB(db),
// )
// require.NoError(t, err)
// _ = server.TestServer(t, impl)
// st, err := state.New(hclog.L(), db)
// require.NoError(t, err)
// t.Run("Check config defaults are not set", func(t *testing.T) {
// require := require.New(t)
// retCfg, err := st.ServerConfigGet()
// require.NoError(err)
// require.NotNil(retCfg)
// require.Len(retCfg.AdvertiseAddrs, 0)
// })
// }
|