Skip to content

Commit

Permalink
Merge pull request #1340 from onflow/ianthpun/unit-test-fixes
Browse files Browse the repository at this point in the history
add initial unit tests for global flags
  • Loading branch information
ianthpun authored Jan 24, 2024
2 parents d7bbee7 + 1c2f2a2 commit 64cc226
Show file tree
Hide file tree
Showing 2 changed files with 68 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,14 @@ func InitFlags(cmd *cobra.Command) {
"Filter result values by property name",
)

cmd.PersistentFlags().StringVarP(
&Flags.Format,
"format",
"",
Flags.Format,
"Format result values",
)

cmd.PersistentFlags().StringVarP(
&Flags.Host,
"host",
Expand Down
60 changes: 60 additions & 0 deletions internal/command/global_flags_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
/*
* Flow CLI
*
* Copyright 2019 Dapper Labs, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package command_test

import (
"fmt"
"strconv"
"strings"
"testing"

"github.com/spf13/cobra"

"github.com/onflow/flow-cli/internal/command"
)

func TestInitFlags(t *testing.T) {
cmd := &cobra.Command{}
command.InitFlags(cmd)

flags := []struct {
name string
expected string
}{
{"filter", command.Flags.Filter},
{"format", command.Flags.Format},
{"save", command.Flags.Save},
{"host", command.Flags.Host},
{"network-key", command.Flags.HostNetworkKey},
{"network", command.Flags.Network},
{"log", command.Flags.Log},
{"yes", strconv.FormatBool(command.Flags.Yes)},
{"config-path", fmt.Sprintf("[%s]", strings.Join(command.Flags.ConfigPaths, ","))},
{"skip-version-check", strconv.FormatBool(command.Flags.SkipVersionCheck)},
}

for _, flag := range flags {
f := cmd.PersistentFlags().Lookup(flag.name)
if f == nil {
t.Errorf("Flag %s was not initialized", flag.name)
} else if f.DefValue != flag.expected {
t.Errorf("Flag %s was not initialized with correct default value. Value: %s, Expected: %s", flag.name, f.Value.String(), flag.expected)
}
}
}

0 comments on commit 64cc226

Please sign in to comment.