snoobert/geddit_options_test.go
Vartan Benohanian 4094044593 Rename package to go-reddit
Signed-off-by: Vartan Benohanian <vartanbeno@gmail.com>
2020-07-11 13:49:07 -04:00

62 lines
1.6 KiB
Go

package reddit
import (
"os"
"reflect"
"testing"
)
func TestFromEnv(t *testing.T) {
os.Setenv("GO_REDDIT_CLIENT_ID", "id1")
defer os.Unsetenv("GO_REDDIT_CLIENT_ID")
os.Setenv("GO_REDDIT_CLIENT_SECRET", "secret1")
defer os.Unsetenv("GO_REDDIT_CLIENT_SECRET")
os.Setenv("GO_REDDIT_CLIENT_USERNAME", "username1")
defer os.Unsetenv("GO_REDDIT_CLIENT_USERNAME")
os.Setenv("GO_REDDIT_CLIENT_PASSWORD", "password1")
defer os.Unsetenv("GO_REDDIT_CLIENT_PASSWORD")
c, err := NewClient(nil, FromEnv)
if err != nil {
t.Fatalf("got unexpected error: %v", err)
}
type values struct {
id, secret, username, password string
}
expect := values{"id1", "secret1", "username1", "password1"}
actual := values{c.ID, c.Secret, c.Username, c.Password}
if !reflect.DeepEqual(expect, actual) {
t.Fatalf("got unexpected value\nexpect: %s\nactual: %s", Stringify(expect), Stringify(actual))
}
}
func TestWithBaseURL(t *testing.T) {
baseURL := "http://localhost:8080"
c, err := NewClient(nil, WithBaseURL(baseURL))
if err != nil {
t.Fatalf("got unexpected error: %v", err)
}
if expect, actual := baseURL, c.BaseURL.String(); expect != actual {
t.Fatalf("got unexpected value\nexpect: %s\nactual: %s", Stringify(expect), Stringify(actual))
}
}
func TestWithTokenURL(t *testing.T) {
tokenURL := "http://localhost:8080/api/v1/access_token"
c, err := NewClient(nil, WithTokenURL(tokenURL))
if err != nil {
t.Fatalf("got unexpected error: %v", err)
}
if expect, actual := tokenURL, c.TokenURL.String(); expect != actual {
t.Fatalf("got unexpected value\nexpect: %s\nactual: %s", Stringify(expect), Stringify(actual))
}
}