@@ -3,6 +3,7 @@ package main
33import (
44 "testing"
55
6+ "github.com/alecthomas/kong"
67 "gotest.tools/v3/assert"
78)
89
@@ -31,3 +32,39 @@ func TestCheckPaths(t *testing.T) {
3132 assert .Equal (t , inLocal , outRemote )
3233 assert .Equal (t , inRemote , outLocal )
3334}
35+
36+ func TestJsonConfig_Get (t * testing.T ) {
37+ var app appCfg
38+ parser , err := kong .New (& app , kong .Configuration (kong .JSON , "testdata/get.json" ))
39+ assert .NilError (t , err )
40+ _ , err = parser .Parse ([]string {"get" , "remote" , "local" })
41+ assert .NilError (t , err )
42+ assert .Equal (t , app .Get .LocalPath , "local" )
43+ assert .Equal (t , app .Get .RemotePath , "remote" )
44+ assert .Equal (t , app .Get .SkipHash , true )
45+ assert .Equal (t , app .Get .SymKey , "wibble" )
46+ assert .Equal (t , app .Get .PemKey , "" )
47+ assert .Equal (t , app .Get .AccessKey , "test_accessKey" )
48+ assert .Equal (t , app .Get .SecretKey , "test_secretKey" )
49+ assert .Equal (t , app .Get .Token , "test_token" )
50+ assert .Equal (t , app .Get .Region , "test_region" )
51+ assert .Equal (t , app .Get .Endpoint , "test_endpoint" )
52+ }
53+
54+ func TestJsonConfig_Put (t * testing.T ) {
55+ var app appCfg
56+ parser , err := kong .New (& app , kong .Configuration (kong .JSON , "testdata/put.json" ))
57+ assert .NilError (t , err )
58+ _ , err = parser .Parse ([]string {"put" , "local" , "remote" })
59+ assert .NilError (t , err )
60+ assert .Equal (t , app .Put .LocalPath , "local" )
61+ assert .Equal (t , app .Put .RemotePath , "remote" )
62+ assert .Equal (t , app .Put .SkipHash , false )
63+ assert .Equal (t , app .Put .SymKey , "" )
64+ assert .Equal (t , app .Put .PemKey , "wobble" )
65+ assert .Equal (t , app .Put .AccessKey , "test_accessKey" )
66+ assert .Equal (t , app .Put .SecretKey , "test_secretKey" )
67+ assert .Equal (t , app .Put .Token , "test_token" )
68+ assert .Equal (t , app .Put .Region , "test_region" )
69+ assert .Equal (t , app .Put .Endpoint , "test_endpoint" )
70+ }
0 commit comments