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") } }