Minor improvements
This commit is contained in:
		@@ -4,6 +4,8 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
go-discogs is a Go client library for the [Discogs API](https://www.discogs.com/developers/). Check the usage section to see how to access the Discogs API.
 | 
					go-discogs is a Go client library for the [Discogs API](https://www.discogs.com/developers/). Check the usage section to see how to access the Discogs API.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The lib is under MIT but be sure you are familiar with [Discogs API Terms of Use](https://support.discogs.com/hc/en-us/articles/360009334593-API-Terms-of-Use).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Feauteres
 | 
					### Feauteres
 | 
				
			||||||
 * Database
 | 
					 * Database
 | 
				
			||||||
  * [Releases](#releases)
 | 
					  * [Releases](#releases)
 | 
				
			||||||
@@ -31,10 +33,11 @@ import "github.com/irlndts/go-discogs"
 | 
				
			|||||||
Some requests require authentification (as any user). According to [Discogs](https://www.discogs.com/developers/#page:authentication,header:authentication-discogs-auth-flow), to send requests with Discogs Auth, you have two options: sending your credentials in the query string with key and secret parameters or a [token parameter](https://www.discogs.com/settings/developers).
 | 
					Some requests require authentification (as any user). According to [Discogs](https://www.discogs.com/developers/#page:authentication,header:authentication-discogs-auth-flow), to send requests with Discogs Auth, you have two options: sending your credentials in the query string with key and secret parameters or a [token parameter](https://www.discogs.com/settings/developers).
 | 
				
			||||||
This is token way example:
 | 
					This is token way example:
 | 
				
			||||||
```go
 | 
					```go
 | 
				
			||||||
client, err := discogs.NewClient(&discogs.Options{
 | 
					client, err := discogs.New(&discogs.Options{
 | 
				
			||||||
        UserAgent: "Some Name",
 | 
					        UserAgent: "Some Name",
 | 
				
			||||||
        Currency:  "EUR", // optional, "USD" (default), "GBP", "EUR", "CAD", "AUD", "JPY", "CHF", "MXN", "BRL", "NZD", "SEK", "ZAR" are allowed
 | 
					        Currency:  "EUR", // optional, "USD" (default), "GBP", "EUR", "CAD", "AUD", "JPY", "CHF", "MXN", "BRL", "NZD", "SEK", "ZAR" are allowed
 | 
				
			||||||
        Token:     "Some Token", // optional
 | 
					        Token:     "Some Token", // optional
 | 
				
			||||||
 | 
					        URL:       "https://api.discogs.com", // optional
 | 
				
			||||||
    })
 | 
					    })
 | 
				
			||||||
``` 
 | 
					``` 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -85,5 +88,3 @@ Example
 | 
				
			|||||||
    fmt.Println(r.Title)
 | 
					    fmt.Println(r.Title)
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					 | 
				
			||||||
etc. 
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										20
									
								
								discogs.go
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								discogs.go
									
									
									
									
									
								
							@@ -14,22 +14,26 @@ const (
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
// Options is a set of options to use discogs API client
 | 
					// Options is a set of options to use discogs API client
 | 
				
			||||||
type Options struct {
 | 
					type Options struct {
 | 
				
			||||||
	URL       string
 | 
						// Discogs API endpoint (optional).
 | 
				
			||||||
	Currency  string
 | 
						URL string
 | 
				
			||||||
 | 
						// Currency to use (optional, default is USD).
 | 
				
			||||||
 | 
						Currency string
 | 
				
			||||||
 | 
						// UserAgent to to call discogs api with.
 | 
				
			||||||
	UserAgent string
 | 
						UserAgent string
 | 
				
			||||||
	Token     string
 | 
						// Token provided by discogs (optional).
 | 
				
			||||||
 | 
						Token string
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Client is a Discogs client for making Discogs API requests.
 | 
					// Discogs is a Discogs' client for making Discogs API requests.
 | 
				
			||||||
type Client struct {
 | 
					type Discogs struct {
 | 
				
			||||||
	Database *DatabaseService
 | 
						Database *DatabaseService
 | 
				
			||||||
	Search   *SearchService
 | 
						Search   *SearchService
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var header *http.Header
 | 
					var header *http.Header
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// NewClient returns a new Client.
 | 
					// New returns a new discogs API client.
 | 
				
			||||||
func NewClient(o *Options) (*Client, error) {
 | 
					func New(o *Options) (*Discogs, error) {
 | 
				
			||||||
	header = &http.Header{}
 | 
						header = &http.Header{}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if o == nil || o.UserAgent == "" {
 | 
						if o == nil || o.UserAgent == "" {
 | 
				
			||||||
@@ -52,7 +56,7 @@ func NewClient(o *Options) (*Client, error) {
 | 
				
			|||||||
		o.URL = discogsAPI
 | 
							o.URL = discogsAPI
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return &Client{
 | 
						return &Discogs{
 | 
				
			||||||
		Database: newDatabaseService(o.URL, cur),
 | 
							Database: newDatabaseService(o.URL, cur),
 | 
				
			||||||
		Search:   newSearchService(o.URL + "/database/search"),
 | 
							Search:   newSearchService(o.URL + "/database/search"),
 | 
				
			||||||
	}, nil
 | 
						}, nil
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -9,7 +9,7 @@ const (
 | 
				
			|||||||
	testToken     = ""
 | 
						testToken     = ""
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func initDiscogsClient(t *testing.T, options *Options) *Client {
 | 
					func initDiscogsClient(t *testing.T, options *Options) *Discogs {
 | 
				
			||||||
	if options == nil {
 | 
						if options == nil {
 | 
				
			||||||
		options = &Options{
 | 
							options = &Options{
 | 
				
			||||||
			UserAgent: testUserAgent,
 | 
								UserAgent: testUserAgent,
 | 
				
			||||||
@@ -22,7 +22,7 @@ func initDiscogsClient(t *testing.T, options *Options) *Client {
 | 
				
			|||||||
		options.UserAgent = testUserAgent
 | 
							options.UserAgent = testUserAgent
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	client, err := NewClient(options)
 | 
						client, err := New(options)
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		t.Fatalf("failed to create client: %s", err)
 | 
							t.Fatalf("failed to create client: %s", err)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
@@ -30,7 +30,7 @@ func initDiscogsClient(t *testing.T, options *Options) *Client {
 | 
				
			|||||||
	return client
 | 
						return client
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func TestNewClient(t *testing.T) {
 | 
					func TestNew(t *testing.T) {
 | 
				
			||||||
	tests := map[string]struct {
 | 
						tests := map[string]struct {
 | 
				
			||||||
		options *Options
 | 
							options *Options
 | 
				
			||||||
		err     error
 | 
							err     error
 | 
				
			||||||
@@ -53,7 +53,7 @@ func TestNewClient(t *testing.T) {
 | 
				
			|||||||
	for name := range tests {
 | 
						for name := range tests {
 | 
				
			||||||
		tt := tests[name]
 | 
							tt := tests[name]
 | 
				
			||||||
		t.Run(name, func(t *testing.T) {
 | 
							t.Run(name, func(t *testing.T) {
 | 
				
			||||||
			if _, err := NewClient(tt.options); err != tt.err {
 | 
								if _, err := New(tt.options); err != tt.err {
 | 
				
			||||||
				t.Errorf("err got=%s; want=%s", err, tt.err)
 | 
									t.Errorf("err got=%s; want=%s", err, tt.err)
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		})
 | 
							})
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -7,7 +7,7 @@ import (
 | 
				
			|||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func main() {
 | 
					func main() {
 | 
				
			||||||
	d, err := discogs.NewClient(&discogs.Options{
 | 
						d, err := discogs.New(&discogs.Options{
 | 
				
			||||||
		UserAgent: "TestDiscogsClient/0.0.1 +http://example.com",
 | 
							UserAgent: "TestDiscogsClient/0.0.1 +http://example.com",
 | 
				
			||||||
		Currency:  "USD",
 | 
							Currency:  "USD",
 | 
				
			||||||
		Token:     "",
 | 
							Token:     "",
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user