@@ -19,6 +19,7 @@ func Test_options(t *testing.T) {
1919 AddFlagAlias ("addr" ),
2020 AddFlagShort ('p' ),
2121 SetFlagDefault (3000 ),
22+ SetFlagDefaultEnv ("PORT" ),
2223 ),
2324 AddSubCmd ("proxy" , "Proxy requests" ,
2425 AddAlias ("p" ),
@@ -59,6 +60,7 @@ func Test_options(t *testing.T) {
5960 test .DeepEqual (t , []string {"addr" }, portFlag .aliases )
6061 test .DeepEqual (t , []rune {'p' }, portFlag .shorts )
6162 test .Equal (t , 3000 , portFlag .defaultValue )
63+ test .Equal (t , "PORT" , portFlag .defaultEnvName )
6264 test .Nil (t , portFlag .value )
6365 test .Equal (t , reflect .ValueOf (IntParser ).Pointer (), reflect .ValueOf (portFlag .parser ).Pointer ())
6466 test .False (t , portFlag .isBool ())
@@ -151,6 +153,29 @@ func ExampleAddFlag() {
151153 // --port -p Port to run server on (type: int, default: "3000")
152154}
153155
156+ func ExampleAddFlag_with_env () {
157+ os .Setenv ("PORT" , "8080" )
158+ defer os .Unsetenv ("PORT" )
159+
160+ command , _ := NewCommand ("server" , "An http server." ,
161+ AddFlag ("port" , "Port to run server on" ,
162+ AddFlagShort ('p' ),
163+ SetFlagDefault (3000 ),
164+ SetFlagDefaultEnv ("PORT" ),
165+ ),
166+ )
167+
168+ command .renderHelp (os .Stdout )
169+ // Output:
170+ // server: An http server.
171+ //
172+ // Usage:
173+ // server [flags]
174+ //
175+ // Flags:
176+ // --port -p Port to run server on (type: int, default: $PORT, "3000")
177+ }
178+
154179func ExampleAddArg () {
155180 command , _ := NewCommand ("server" , "An http server." ,
156181 AddArg ("port" , "Port to run server on" , SetArgParser (IntParser )),
0 commit comments