✨ Add formatters.Preferred
This commit is contained in:
parent
11dea95ce2
commit
febbce8a6b
4 changed files with 22 additions and 2 deletions
|
|
@ -60,7 +60,7 @@ var dropCmd = &cobra.Command{
|
|||
return err
|
||||
}
|
||||
|
||||
form, err := formatters.New("plain")
|
||||
form, err := formatters.Preferred()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ func init() {
|
|||
// will be global for your application.
|
||||
|
||||
rootCmd.PersistentFlags().StringVarP(&config.ConfigPath, "config", "c", config.ConfigPath, "config file")
|
||||
rootCmd.PersistentFlags().StringToStringVarP(&config.Overrides, "config-value", "v", config.Overrides, "Override config values. Use dot syntax to specify key. E.g. -v output.stdout.config.json=true")
|
||||
rootCmd.PersistentFlags().StringToStringVarP(&config.Overrides, "config-value", "v", config.Overrides, "Override config values. Use dot syntax to specify key. E.g. -v output.stdout.config.formatter=json")
|
||||
|
||||
// Cobra also supports local flags, which will only run
|
||||
// when this action is called directly.
|
||||
|
|
|
|||
|
|
@ -12,6 +12,16 @@ var formatterMap = map[string]formatMaker{
|
|||
"plain": newPlain,
|
||||
}
|
||||
|
||||
func Preferred() (f Formatter, err error) {
|
||||
conf, err := config.Load()
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
std, _ := conf.Outputs.Stdout()
|
||||
kind := std.Formatter
|
||||
return New(kind)
|
||||
}
|
||||
|
||||
func New(kind string) (f Formatter, err error) {
|
||||
conf, err := config.Load()
|
||||
if err != nil {
|
||||
|
|
|
|||
|
|
@ -32,4 +32,14 @@ func TestNewCantGetConfig(t *testing.T) {
|
|||
form, err := New("plain")
|
||||
assert.Nil(t, form)
|
||||
assert.Error(t, err)
|
||||
|
||||
form, err = Preferred()
|
||||
assert.Nil(t, form)
|
||||
assert.Error(t, err)
|
||||
}
|
||||
|
||||
func TestPreferred(t *testing.T) {
|
||||
form, err := Preferred()
|
||||
assert.NotNil(t, form)
|
||||
assert.NoError(t, err)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue