2021-02-06 11:05:50 -05:00
|
|
|
package configuration
|
2020-07-19 14:26:24 +00:00
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"encoding/json"
|
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
|
|
|
"github.com/stretchr/testify/require"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func Test_OpenVPN_JSON(t *testing.T) {
|
|
|
|
|
t.Parallel()
|
|
|
|
|
in := OpenVPN{
|
2021-07-19 15:10:53 +00:00
|
|
|
Root: true,
|
|
|
|
|
Flags: []string{},
|
2020-07-19 14:26:24 +00:00
|
|
|
}
|
2021-04-25 15:44:45 -04:00
|
|
|
data, err := json.MarshalIndent(in, "", " ")
|
2020-07-19 14:26:24 +00:00
|
|
|
require.NoError(t, err)
|
2021-04-25 15:44:45 -04:00
|
|
|
assert.Equal(t, `{
|
|
|
|
|
"user": "",
|
|
|
|
|
"password": "",
|
|
|
|
|
"verbosity": 0,
|
2021-07-19 15:10:53 +00:00
|
|
|
"flags": [],
|
2021-04-25 15:44:45 -04:00
|
|
|
"mssfix": 0,
|
|
|
|
|
"run_as_root": true,
|
|
|
|
|
"cipher": "",
|
|
|
|
|
"auth": "",
|
2021-09-13 11:30:14 -04:00
|
|
|
"conf_file": "",
|
2021-08-17 15:44:11 +00:00
|
|
|
"version": "",
|
|
|
|
|
"encryption_preset": "",
|
2021-08-18 17:41:53 +00:00
|
|
|
"ipv6": false,
|
2021-08-19 23:22:55 +00:00
|
|
|
"procuser": "",
|
|
|
|
|
"interface": ""
|
2021-04-25 15:44:45 -04:00
|
|
|
}`, string(data))
|
2020-07-19 14:26:24 +00:00
|
|
|
var out OpenVPN
|
|
|
|
|
err = json.Unmarshal(data, &out)
|
|
|
|
|
require.NoError(t, err)
|
|
|
|
|
assert.Equal(t, in, out)
|
|
|
|
|
}
|