74 lines
1.4 KiB
Go
74 lines
1.4 KiB
Go
package radarr
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
)
|
|
|
|
func testClient(t *testing.T) *Client {
|
|
t.Helper()
|
|
url := os.Getenv("RADARR_URL")
|
|
key := os.Getenv("RADARR_API_KEY")
|
|
if url == "" || key == "" {
|
|
t.Skip("RADARR_URL and RADARR_API_KEY not set")
|
|
}
|
|
return NewClient(url, key, true)
|
|
}
|
|
|
|
func TestList(t *testing.T) {
|
|
c := testClient(t)
|
|
movies, err := c.List()
|
|
if err != nil {
|
|
t.Fatalf("List: %v", err)
|
|
}
|
|
if len(movies) == 0 {
|
|
t.Fatal("List returned no movies")
|
|
}
|
|
m := movies[0]
|
|
if m.Title == "" {
|
|
t.Error("first movie has no title")
|
|
}
|
|
}
|
|
|
|
func TestLookup(t *testing.T) {
|
|
c := testClient(t)
|
|
results, err := c.Lookup("Dune")
|
|
if err != nil {
|
|
t.Fatalf("Lookup: %v", err)
|
|
}
|
|
if len(results) == 0 {
|
|
t.Fatal("Lookup returned no results")
|
|
}
|
|
if results[0].Title == "" {
|
|
t.Error("first result has no title")
|
|
}
|
|
}
|
|
|
|
func TestQualityProfiles(t *testing.T) {
|
|
c := testClient(t)
|
|
profiles, err := c.QualityProfiles()
|
|
if err != nil {
|
|
t.Fatalf("QualityProfiles: %v", err)
|
|
}
|
|
if len(profiles) == 0 {
|
|
t.Fatal("no quality profiles returned")
|
|
}
|
|
if profiles[0].Name == "" {
|
|
t.Error("first profile has no name")
|
|
}
|
|
}
|
|
|
|
func TestRootFolders(t *testing.T) {
|
|
c := testClient(t)
|
|
folders, err := c.RootFolders()
|
|
if err != nil {
|
|
t.Fatalf("RootFolders: %v", err)
|
|
}
|
|
if len(folders) == 0 {
|
|
t.Fatal("no root folders returned")
|
|
}
|
|
if folders[0].Path == "" {
|
|
t.Error("first folder has no path")
|
|
}
|
|
}
|