commit
6266d3e5b7
|
@ -1,5 +1,6 @@
|
||||||
[![GoDoc](https://godoc.org/github.com/alexflint/go-arg?status.svg)](https://godoc.org/github.com/alexflint/go-arg)
|
[![GoDoc](https://godoc.org/github.com/alexflint/go-arg?status.svg)](https://godoc.org/github.com/alexflint/go-arg)
|
||||||
[![Build Status](https://travis-ci.org/alexflint/go-arg.svg?branch=master)](https://travis-ci.org/alexflint/go-arg)
|
[![Build Status](https://travis-ci.org/alexflint/go-arg.svg?branch=master)](https://travis-ci.org/alexflint/go-arg)
|
||||||
|
[![GolangCI](https://golangci.com/badges/github.com/alexflint/go-arg.svg)](https://golangci.com/r/github.com/alexflint/go-arg)
|
||||||
[![Coverage Status](https://coveralls.io/repos/alexflint/go-arg/badge.svg?branch=master&service=github)](https://coveralls.io/github/alexflint/go-arg?branch=master)
|
[![Coverage Status](https://coveralls.io/repos/alexflint/go-arg/badge.svg?branch=master&service=github)](https://coveralls.io/github/alexflint/go-arg?branch=master)
|
||||||
[![Report Card](https://goreportcard.com/badge/github.com/alexflint/go-arg)](https://goreportcard.com/badge/github.com/alexflint/go-arg)
|
[![Report Card](https://goreportcard.com/badge/github.com/alexflint/go-arg)](https://goreportcard.com/badge/github.com/alexflint/go-arg)
|
||||||
|
|
||||||
|
|
|
@ -458,14 +458,14 @@ func TestHelpFlag(t *testing.T) {
|
||||||
func TestPanicOnNonPointer(t *testing.T) {
|
func TestPanicOnNonPointer(t *testing.T) {
|
||||||
var args struct{}
|
var args struct{}
|
||||||
assert.Panics(t, func() {
|
assert.Panics(t, func() {
|
||||||
parse("", args)
|
_ = parse("", args)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestPanicOnNonStruct(t *testing.T) {
|
func TestPanicOnNonStruct(t *testing.T) {
|
||||||
var args string
|
var args string
|
||||||
assert.Panics(t, func() {
|
assert.Panics(t, func() {
|
||||||
parse("", &args)
|
_ = parse("", &args)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -7,4 +7,5 @@ func main() {
|
||||||
Test string
|
Test string
|
||||||
}
|
}
|
||||||
arg.MustParse(&args)
|
arg.MustParse(&args)
|
||||||
|
_ = args.Test
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,14 +2,14 @@ package arg
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
|
"errors"
|
||||||
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/stretchr/testify/assert"
|
"github.com/stretchr/testify/assert"
|
||||||
"github.com/stretchr/testify/require"
|
"github.com/stretchr/testify/require"
|
||||||
"strings"
|
|
||||||
"fmt"
|
|
||||||
"errors"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type NameDotName struct {
|
type NameDotName struct {
|
||||||
|
@ -56,16 +56,16 @@ Options:
|
||||||
--help, -h display this help and exit
|
--help, -h display this help and exit
|
||||||
`
|
`
|
||||||
var args struct {
|
var args struct {
|
||||||
Input string `arg:"positional"`
|
Input string `arg:"positional"`
|
||||||
Output []string `arg:"positional" help:"list of outputs"`
|
Output []string `arg:"positional" help:"list of outputs"`
|
||||||
Name string `help:"name to use"`
|
Name string `help:"name to use"`
|
||||||
Value int `help:"secret value"`
|
Value int `help:"secret value"`
|
||||||
Verbose bool `arg:"-v" help:"verbosity level"`
|
Verbose bool `arg:"-v" help:"verbosity level"`
|
||||||
Dataset string `help:"dataset to use"`
|
Dataset string `help:"dataset to use"`
|
||||||
Optimize int `arg:"-O" help:"optimization level"`
|
Optimize int `arg:"-O" help:"optimization level"`
|
||||||
Ids []int64 `help:"Ids"`
|
Ids []int64 `help:"Ids"`
|
||||||
Values []float64 `help:"Values"`
|
Values []float64 `help:"Values"`
|
||||||
Workers int `arg:"-w,env:WORKERS" help:"number of workers to start"`
|
Workers int `arg:"-w,env:WORKERS" help:"number of workers to start"`
|
||||||
File *NameDotName `arg:"-f" help:"File with mandatory extension"`
|
File *NameDotName `arg:"-f" help:"File with mandatory extension"`
|
||||||
}
|
}
|
||||||
args.Name = "Foo Bar"
|
args.Name = "Foo Bar"
|
||||||
|
@ -89,15 +89,11 @@ Options:
|
||||||
type MyEnum int
|
type MyEnum int
|
||||||
|
|
||||||
func (n *MyEnum) UnmarshalText(b []byte) error {
|
func (n *MyEnum) UnmarshalText(b []byte) error {
|
||||||
b = []byte("Hello")
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (n *MyEnum) MarshalText() (text []byte, err error) {
|
func (n *MyEnum) MarshalText() ([]byte, error) {
|
||||||
s := "There was a problem"
|
return nil, errors.New("There was a problem")
|
||||||
text = []byte(s)
|
|
||||||
err = errors.New(s)
|
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestUsageError(t *testing.T) {
|
func TestUsageError(t *testing.T) {
|
||||||
|
|
Loading…
Reference in New Issue