Add various deleted flags to entities | Add active to subscriptions | Add DeleteUser && DeleteChannel endpoints [skip-tests]
This commit is contained in:
@@ -1,12 +1,13 @@
|
||||
package test
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
"blackforestbytes.com/simplecloudnotifier/api/apierr"
|
||||
tt "blackforestbytes.com/simplecloudnotifier/test/util"
|
||||
"fmt"
|
||||
"github.com/gin-gonic/gin"
|
||||
"gogs.mikescher.com/BlackForestBytes/goext/langext"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestListSubscriptionsOfUser(t *testing.T) {
|
||||
@@ -1240,3 +1241,106 @@ func TestCancelOutgoingSubscription(t *testing.T) {
|
||||
tt.RequestAuthGetShouldFail(t, data1.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", data1.UID, sub1.SubscriptionId), 404, apierr.SUBSCRIPTION_NOT_FOUND)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSubscriptionDeactivate(t *testing.T) {
|
||||
ws, baseUrl, stop := tt.StartSimpleWebserver(t)
|
||||
defer stop()
|
||||
data := tt.InitDefaultData(t, ws)
|
||||
|
||||
user14 := data.User[14]
|
||||
user15 := data.User[15]
|
||||
chanName := "chan_other_accepted"
|
||||
|
||||
subscriptionID, _ := tt.FindSubscriptionByChanName(t, baseUrl, user14, user15.UID, chanName)
|
||||
|
||||
type subobj struct {
|
||||
SubscriptionId string `json:"subscription_id"`
|
||||
Active bool `json:"active"`
|
||||
}
|
||||
|
||||
initialSub := tt.RequestAuthGet[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID))
|
||||
tt.AssertTrue(t, "initialSub.Active", initialSub.Active)
|
||||
|
||||
// subscriber deactivates
|
||||
{
|
||||
tt.RequestAuthPatch[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID), gin.H{
|
||||
"active": false,
|
||||
})
|
||||
|
||||
sub1 := tt.RequestAuthGet[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID))
|
||||
tt.AssertEqual(t, "sub1.Active", false, sub1.Active)
|
||||
|
||||
sub2 := tt.RequestAuthGet[subobj](t, user15.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user15.UID, subscriptionID))
|
||||
tt.AssertEqual(t, "sub2.Active", false, sub2.Active)
|
||||
}
|
||||
|
||||
// subscriber activates
|
||||
{
|
||||
tt.RequestAuthPatch[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID), gin.H{
|
||||
"active": true,
|
||||
})
|
||||
|
||||
sub1 := tt.RequestAuthGet[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID))
|
||||
tt.AssertEqual(t, "sub1.Active", true, sub1.Active)
|
||||
|
||||
sub2 := tt.RequestAuthGet[subobj](t, user15.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user15.UID, subscriptionID))
|
||||
tt.AssertEqual(t, "sub2.Active", true, sub2.Active)
|
||||
}
|
||||
|
||||
// owner deactivates
|
||||
{
|
||||
tt.RequestAuthPatch[subobj](t, user15.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user15.UID, subscriptionID), gin.H{
|
||||
"active": false,
|
||||
})
|
||||
|
||||
sub1 := tt.RequestAuthGet[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID))
|
||||
tt.AssertEqual(t, "sub1.Active", false, sub1.Active)
|
||||
|
||||
sub2 := tt.RequestAuthGet[subobj](t, user15.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user15.UID, subscriptionID))
|
||||
tt.AssertEqual(t, "sub2.Active", false, sub2.Active)
|
||||
}
|
||||
|
||||
// owner activates
|
||||
{
|
||||
tt.RequestAuthPatch[subobj](t, user15.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user15.UID, subscriptionID), gin.H{
|
||||
"active": true,
|
||||
})
|
||||
|
||||
sub1 := tt.RequestAuthGet[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID))
|
||||
tt.AssertEqual(t, "sub1.Active", true, sub1.Active)
|
||||
|
||||
sub2 := tt.RequestAuthGet[subobj](t, user15.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user15.UID, subscriptionID))
|
||||
tt.AssertEqual(t, "sub2.Active", true, sub2.Active)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSubscriptionActivate(t *testing.T) {
|
||||
ws, baseUrl, stop := tt.StartSimpleWebserver(t)
|
||||
defer stop()
|
||||
data := tt.InitDefaultData(t, ws)
|
||||
|
||||
user14 := data.User[14]
|
||||
user15 := data.User[15]
|
||||
chanName := "chan_other_accepted"
|
||||
|
||||
subscriptionID, _ := tt.FindSubscriptionByChanName(t, baseUrl, user14, user15.UID, chanName)
|
||||
|
||||
type subobj struct {
|
||||
SubscriptionId string `json:"subscription_id"`
|
||||
Active bool `json:"active"`
|
||||
}
|
||||
|
||||
tt.RequestAuthPatch[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID), gin.H{
|
||||
"active": false,
|
||||
})
|
||||
|
||||
deactivatedSub := tt.RequestAuthGet[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID))
|
||||
tt.AssertEqual(t, "deactivatedSub.Active", false, deactivatedSub.Active)
|
||||
|
||||
tt.RequestAuthPatch[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID), gin.H{
|
||||
"active": true,
|
||||
})
|
||||
|
||||
finalSub := tt.RequestAuthGet[subobj](t, user14.AdminKey, baseUrl, fmt.Sprintf("/api/v2/users/%s/subscriptions/%s", user14.UID, subscriptionID))
|
||||
tt.AssertTrue(t, "finalSub.Active", finalSub.Active)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user