2020-07-11 13:49:07 -04:00
|
|
|
package reddit
|
2020-04-29 15:59:18 -04:00
|
|
|
|
|
|
|
import (
|
|
|
|
"os"
|
|
|
|
"testing"
|
2020-08-04 00:42:28 -04:00
|
|
|
|
2020-08-11 16:21:07 -04:00
|
|
|
"github.com/stretchr/testify/require"
|
2020-04-29 15:59:18 -04:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestFromEnv(t *testing.T) {
|
2020-07-11 13:49:07 -04:00
|
|
|
os.Setenv("GO_REDDIT_CLIENT_ID", "id1")
|
|
|
|
defer os.Unsetenv("GO_REDDIT_CLIENT_ID")
|
2020-04-29 15:59:18 -04:00
|
|
|
|
2020-07-11 13:49:07 -04:00
|
|
|
os.Setenv("GO_REDDIT_CLIENT_SECRET", "secret1")
|
|
|
|
defer os.Unsetenv("GO_REDDIT_CLIENT_SECRET")
|
2020-04-29 15:59:18 -04:00
|
|
|
|
2020-07-11 13:49:07 -04:00
|
|
|
os.Setenv("GO_REDDIT_CLIENT_USERNAME", "username1")
|
|
|
|
defer os.Unsetenv("GO_REDDIT_CLIENT_USERNAME")
|
2020-04-29 15:59:18 -04:00
|
|
|
|
2020-07-11 13:49:07 -04:00
|
|
|
os.Setenv("GO_REDDIT_CLIENT_PASSWORD", "password1")
|
|
|
|
defer os.Unsetenv("GO_REDDIT_CLIENT_PASSWORD")
|
2020-04-29 15:59:18 -04:00
|
|
|
|
2020-08-23 22:25:29 -04:00
|
|
|
c, err := NewClient(nil, nil, FromEnv)
|
2020-08-11 16:21:07 -04:00
|
|
|
require.NoError(t, err)
|
2020-04-29 15:59:18 -04:00
|
|
|
|
|
|
|
type values struct {
|
|
|
|
id, secret, username, password string
|
|
|
|
}
|
|
|
|
|
|
|
|
expect := values{"id1", "secret1", "username1", "password1"}
|
|
|
|
actual := values{c.ID, c.Secret, c.Username, c.Password}
|
2020-08-11 16:21:07 -04:00
|
|
|
require.Equal(t, expect, actual)
|
2020-04-29 15:59:18 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
func TestWithBaseURL(t *testing.T) {
|
|
|
|
baseURL := "http://localhost:8080"
|
2020-08-23 22:25:29 -04:00
|
|
|
c, err := NewClient(nil, nil, WithBaseURL(baseURL))
|
2020-08-11 16:21:07 -04:00
|
|
|
require.NoError(t, err)
|
|
|
|
require.Equal(t, baseURL, c.BaseURL.String())
|
2020-04-29 15:59:18 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
func TestWithTokenURL(t *testing.T) {
|
|
|
|
tokenURL := "http://localhost:8080/api/v1/access_token"
|
2020-08-23 22:25:29 -04:00
|
|
|
c, err := NewClient(nil, nil, WithTokenURL(tokenURL))
|
2020-08-11 16:21:07 -04:00
|
|
|
require.NoError(t, err)
|
|
|
|
require.Equal(t, tokenURL, c.TokenURL.String())
|
2020-04-29 15:59:18 -04:00
|
|
|
}
|