2014-07-24 12 views
10
go test -timeout 99999 

wirft diese nicht Sinn FehlerWie der Go-Timeout-Flag auf "Go-Test" setzen

invalid value "99999" for flag -test.timeout: 
time: missing unit in duration 99999 

ist es ein Fehler? Ich benutze go version go1.3

Die "Hilfe" CLI ist auch nutzlos. Es sagt . Allerdings, wenn Sie Test tun gehen -test.timeout 99999 erhalten Sie die gleichen Fehler

-test.timeout=0: if positive, sets an aggregate time limit for all tests 
+7

Wie ist _ "fehlende Einheit in Dauer 99999" _ ein Nonsense-Fehler? – icza

Antwort

21

Geben Sie einen gültigen time.ParseDuration Eingang. Zum Beispiel

$ go test -timeout 300ms 

$ go test -timeout 99999s 

Command go

Description of testing flags

-timeout t 

Wenn ein Test läuft länger als t, panic.

Package flag

Dauer Flags jede Eingabe für time.ParseDuration gültig akzeptieren.

Package time

func ParseDuration

func ParseDuration(s string) (Duration, error) 

ParseDuration parst eine Dauer Zeichenfolge. Ein Dauerstring ist eine möglicherweise signierte Folge von Dezimalzahlen mit jeweils optionalem Bruch und einem Einheitensuffix wie "300ms", "-1.5h" oder "2h45m". Gültige Zeiteinheiten sind "ns", "us" (oder "µs ")," ms", "s", "m", "h".