dbmate/commands_test.go
2015-11-25 11:32:13 -08:00

32 lines
674 B
Go

package main_test
import (
"flag"
"github.com/adrianmacneil/dbmate"
"github.com/codegangsta/cli"
"github.com/stretchr/testify/require"
"os"
"testing"
)
func newContext() *cli.Context {
app := main.NewApp()
flagset := flag.NewFlagSet(app.Name, flag.ContinueOnError)
for _, f := range app.Flags {
f.Apply(flagset)
}
return cli.NewContext(app, flagset, nil)
}
func TestGetDatabaseUrl_Default(t *testing.T) {
os.Setenv("DATABASE_URL", "postgres://example.org/db")
ctx := newContext()
u, err := main.GetDatabaseURL(ctx)
require.Nil(t, err)
require.Equal(t, "postgres", u.Scheme)
require.Equal(t, "example.org", u.Host)
require.Equal(t, "/db", u.Path)
}