aboutsummaryrefslogtreecommitdiff
path: root/config_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'config_test.go')
-rw-r--r--config_test.go40
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))
+}