grim/resticide
Clone
Summary
Browse
Changes
Graph
Add a bunch of stuff to the readme
develop
tip
2016-07-09, Gary Kramlich
f8bc0c4813a9
Add a bunch of stuff to the readme
package
main
import
(
"fmt"
"net/url"
"os"
"runtime"
flag
"gopkg.in/ogier/pflag.v0"
"bitbucket.org/rw_grim/resticide/loader"
"bitbucket.org/rw_grim/resticide/reporter"
"bitbucket.org/rw_grim/resticide/runner"
)
const
(
resticideVersion
=
"0.1"
)
func
main
()
{
flag
.
Usage
=
func
()
{
fmt
.
Fprintf
(
os
.
Stderr
,
"Usage: resticide [OPTIONS]\n\nOptions:\n"
)
flag
.
PrintDefaults
()
}
testDir
:=
flag
.
String
(
"path"
,
"resticide"
,
"The path to search for tests"
)
verbose
:=
flag
.
Bool
(
"verbose"
,
false
,
"Whether or not to use verbose output"
)
version
:=
flag
.
Bool
(
"version"
,
false
,
"Show the version and exit"
)
host
:=
flag
.
String
(
"host"
,
""
,
"The hostname to use"
)
workers
:=
flag
.
Int
(
"workers"
,
runtime
.
NumCPU
(),
"How many workers to use to run tests"
)
flag
.
Parse
()
if
*
version
{
fmt
.
Fprintf
(
os
.
Stderr
,
"resticide v%s\n"
,
resticideVersion
)
os
.
Exit
(
0
)
}
if
*
host
==
""
{
fmt
.
Printf
(
"You must specify a host\n"
)
return
}
url
,
err
:=
url
.
Parse
(
*
host
)
if
err
!=
nil
{
fmt
.
Printf
(
"error %s\n"
,
err
.
Error
())
return
}
report
:=
reporter
.
NewReporter
(
*
verbose
)
report
.
AddHandler
(
new
(
reporter
.
ConsoleReporter
))
tests
,
err
:=
loader
.
LoadTests
(
*
testDir
,
report
)
if
err
!=
nil
{
fmt
.
Printf
(
"error %s\n"
,
err
.
Error
())
return
}
os
.
Exit
(
runner
.
Run
(
tests
,
url
,
*
workers
,
report
))
}