feat: add radarr support
continuous-integration/drone/pr Build is failing
Details
continuous-integration/drone/pr Build is failing
Details
This commit is contained in:
parent
8c3d3486ae
commit
1fdaeba6e9
|
@ -3,8 +3,8 @@ package domain
|
||||||
type RadarrEventType string
|
type RadarrEventType string
|
||||||
|
|
||||||
const (
|
const (
|
||||||
RadarrEventTypeImport RadarrEventType = "Import"
|
RadarrEventTypeDownload RadarrEventType = "Download"
|
||||||
RadarrEventTypeTest RadarrEventType = "Test"
|
RadarrEventTypeTest RadarrEventType = "Test"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
@ -14,7 +14,7 @@ var (
|
||||||
func NewRadarrEventType(s string) (RadarrEventType, error) {
|
func NewRadarrEventType(s string) (RadarrEventType, error) {
|
||||||
conv := RadarrEventType(s)
|
conv := RadarrEventType(s)
|
||||||
switch conv {
|
switch conv {
|
||||||
case RadarrEventTypeImport,
|
case RadarrEventTypeDownload,
|
||||||
RadarrEventTypeTest:
|
RadarrEventTypeTest:
|
||||||
return conv, nil
|
return conv, nil
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -13,7 +13,7 @@ func TestNewRadarrEventType(t *testing.T) {
|
||||||
t.Run("OK", func(t *testing.T) {
|
t.Run("OK", func(t *testing.T) {
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
|
|
||||||
events := []domain.RadarrEventType{domain.RadarrEventTypeImport, domain.RadarrEventTypeTest}
|
events := []domain.RadarrEventType{domain.RadarrEventTypeDownload, domain.RadarrEventTypeTest}
|
||||||
|
|
||||||
for _, ev := range events {
|
for _, ev := range events {
|
||||||
res, err := domain.NewRadarrEventType(ev.String())
|
res, err := domain.NewRadarrEventType(ev.String())
|
||||||
|
|
|
@ -4,6 +4,7 @@ import (
|
||||||
"context"
|
"context"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"log"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"gitea.dwysokinski.me/Kichiyaki/notificationarr/internal/domain"
|
"gitea.dwysokinski.me/Kichiyaki/notificationarr/internal/domain"
|
||||||
|
@ -121,6 +122,8 @@ func (h *WebhookHandler) handleRadarrWebhook(w http.ResponseWriter, r *http.Requ
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
log.Println(req.EventType)
|
||||||
|
|
||||||
eventType, err := domain.NewRadarrEventType(req.EventType)
|
eventType, err := domain.NewRadarrEventType(req.EventType)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
renderErrorResponse(w, fmt.Errorf("domain.NewRadarrEventType: %w", err))
|
renderErrorResponse(w, fmt.Errorf("domain.NewRadarrEventType: %w", err))
|
||||||
|
|
|
@ -37,7 +37,7 @@ func (s *Radarr) Process(ctx context.Context, payload domain.RadarrWebhookPayloa
|
||||||
|
|
||||||
func (s *Radarr) buildTitle(evType domain.RadarrEventType, _ domain.RadarrMovie) (string, error) {
|
func (s *Radarr) buildTitle(evType domain.RadarrEventType, _ domain.RadarrMovie) (string, error) {
|
||||||
switch evType {
|
switch evType {
|
||||||
case domain.RadarrEventTypeImport,
|
case domain.RadarrEventTypeDownload,
|
||||||
domain.RadarrEventTypeTest:
|
domain.RadarrEventTypeTest:
|
||||||
return "New movie available (Radarr)", nil
|
return "New movie available (Radarr)", nil
|
||||||
default:
|
default:
|
||||||
|
@ -47,7 +47,7 @@ func (s *Radarr) buildTitle(evType domain.RadarrEventType, _ domain.RadarrMovie)
|
||||||
|
|
||||||
func (s *Radarr) buildMessage(evType domain.RadarrEventType, movie domain.RadarrMovie) (string, error) {
|
func (s *Radarr) buildMessage(evType domain.RadarrEventType, movie domain.RadarrMovie) (string, error) {
|
||||||
switch evType {
|
switch evType {
|
||||||
case domain.RadarrEventTypeImport,
|
case domain.RadarrEventTypeDownload,
|
||||||
domain.RadarrEventTypeTest:
|
domain.RadarrEventTypeTest:
|
||||||
return movie.Title, nil
|
return movie.Title, nil
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -20,7 +20,7 @@ func TestRadarr_Process(t *testing.T) {
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
|
|
||||||
for _, evType := range [...]domain.RadarrEventType{
|
for _, evType := range [...]domain.RadarrEventType{
|
||||||
domain.RadarrEventTypeImport,
|
domain.RadarrEventTypeDownload,
|
||||||
domain.RadarrEventTypeTest,
|
domain.RadarrEventTypeTest,
|
||||||
} {
|
} {
|
||||||
t.Run("event type="+evType.String(), func(t *testing.T) {
|
t.Run("event type="+evType.String(), func(t *testing.T) {
|
||||||
|
|
Reference in New Issue