diff options
Diffstat (limited to 'config_test.go')
| -rw-r--r-- | config_test.go | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/config_test.go b/config_test.go index b877236..477b438 100644 --- a/config_test.go +++ b/config_test.go @@ -4,6 +4,8 @@ package gotp import ( + "os" + "path/filepath" "testing" "github.com/shuLhan/share/lib/test" @@ -57,3 +59,41 @@ func TestNewConfig(t *testing.T) { test.Assert(t, `Issuer`, c.expConfig, gotConfig) } } + +func TestMarshaler(t *testing.T) { + var ( + cfg = config{} + + tdata *test.Data + userHomeDir string + err error + ) + + tdata, err = test.LoadData(`testdata/config_marshaler_test.txt`) + if err != nil { + t.Fatal(err) + } + + err = cfg.UnmarshalText(tdata.Input[`input.ini`]) + if err != nil { + t.Fatal(err) + } + + userHomeDir, err = os.UserHomeDir() + if err != nil { + t.Fatal(err) + } + + var expPrivateKey = filepath.Join(userHomeDir, `myprivatekey.pem`) + + test.Assert(t, `UnmarshalText: PrivateKey`, expPrivateKey, cfg.PrivateKey) + + var gotText []byte + + gotText, err = cfg.MarshalText() + if err != nil { + t.Fatal(err) + } + + test.Assert(t, `MarshalText`, string(tdata.Output[`output.ini`]), string(gotText)) +} |
