diff options
author | Vidhu Kant Sharma <vidhukant@vidhukant.com> | 2023-08-15 13:37:22 +0530 |
---|---|---|
committer | Vidhu Kant Sharma <vidhukant@vidhukant.com> | 2023-08-15 13:37:22 +0530 |
commit | d0d0d0cdc4218f1f944481a5116c74d81682deff (patch) | |
tree | 9cca99607126273d317ad9bae0b66c6248f07035 /anime.go | |
parent | 266af04ade2dd1617bb27079779bdb81d6f18ee0 (diff) |
added validators for read-only endpoints
Diffstat (limited to 'anime.go')
-rw-r--r-- | anime.go | 32 |
1 files changed, 26 insertions, 6 deletions
@@ -22,7 +22,11 @@ import "encoding/json" const ANIME_BASE_URL string = BASE_URL + "/anime" func (c Client) SearchAnime(animes *[]Anime, params *SearchParams) error { - // TODO: validate params + err := validateAnimeSearchParams(params) + if err != nil { + return err + } + var res struct { Data []struct { Anime Anime `json:"node"` @@ -43,7 +47,11 @@ func (c Client) SearchAnime(animes *[]Anime, params *SearchParams) error { } func (c Client) GetAnimeById(anime *Anime, id int, fields []string) error { - // TODO: validate params + err := validateAnimeFields(&fields) + if err != nil { + return err + } + body, err := c.get(ANIME_BASE_URL + getIdQuery(id, fields)) if err != nil { return err @@ -54,7 +62,11 @@ func (c Client) GetAnimeById(anime *Anime, id int, fields []string) error { } func (c Client) GetAnimeRanking(animes *[]RankedAnime, params *RankingParams) error { - // TODO: validate params + err := validateAnimeRankingParams(params) + if err != nil { + return err + } + body, err := c.get(ANIME_BASE_URL + getRankingQuery(params)) if err != nil { return err @@ -79,7 +91,11 @@ func (c Client) GetAnimeRanking(animes *[]RankedAnime, params *RankingParams) er } func (c Client) GetSeasonalAnime(animes *[]Anime, params *SeasonalParams) error { - // TODO: validate params + err := validateSeasonalParams(params) + if err != nil { + return err + } + body, err := c.get(ANIME_BASE_URL + getSeasonalQuery(params)) if err != nil { return err @@ -100,9 +116,13 @@ func (c Client) GetSeasonalAnime(animes *[]Anime, params *SeasonalParams) error return nil } +// TODO: only allow MainAuth not ClientAuth func (c Client) GetSuggestedAnime(animes *[]Anime, params *SuggestedParams) error { - // TODO: validate params - // TODO: only allow MainAuth not ClientAuth + err := validateSuggestedParams(params) + if err != nil { + return err + } + body, err := c.get(ANIME_BASE_URL + getSuggestedQuery(params)) if err != nil { return err |