fix: enable Twitch EventSub by default (#6040)

this should let us get some more eyes on the implementation and make
sure it doesn't misbehave
This commit is contained in:
pajlada
2025-03-08 12:13:58 +01:00
committed by GitHub
parent 266dc8d202
commit 0835064375
3 changed files with 49 additions and 12 deletions
+47 -10
View File
@@ -1,3 +1,4 @@
#include "mocks/BaseApplication.hpp"
#include "providers/twitch/PubSubActions.hpp"
#include "providers/twitch/PubSubClient.hpp"
#include "providers/twitch/PubSubManager.hpp"
@@ -73,6 +74,14 @@ public:
}
};
const QString TEST_SETTINGS = R"(
{
"eventsub": {
"enableExperimental": false
}
}
)";
class FTest : public PubSub
{
public:
@@ -86,9 +95,28 @@ public:
}
};
class MockApplication : public mock::BaseApplication
{
public:
MockApplication(const char *path, std::chrono::seconds pingInterval,
QString token = "token")
: mock::BaseApplication(TEST_SETTINGS)
, pubSub(path, pingInterval, token)
{
}
PubSub *getTwitchPubSub() override
{
return &this->pubSub;
}
FTest pubSub;
};
TEST(TwitchPubSubClient, ServerRespondsToPings)
{
FTest pubSub("", 1s);
MockApplication a("", 1s);
auto &pubSub = a.pubSub;
pubSub.start();
@@ -127,7 +155,8 @@ TEST(TwitchPubSubClient, ServerRespondsToPings)
TEST(TwitchPubSubClient, ServerDoesntRespondToPings)
{
FTest pubSub("/dont-respond-to-ping", 1s);
MockApplication a("/dont-respond-to-ping", 1s);
auto &pubSub = a.pubSub;
pubSub.start();
pubSub.listenToChannelModerationActions("123456");
@@ -156,7 +185,8 @@ TEST(TwitchPubSubClient, ServerDoesntRespondToPings)
TEST(TwitchPubSubClient, DisconnectedAfter1s)
{
FTest pubSub("/disconnect-client-after-1s", 10s);
MockApplication a("/disconnect-client-after-1s", 10s);
auto &pubSub = a.pubSub;
pubSub.start();
@@ -191,7 +221,8 @@ TEST(TwitchPubSubClient, DisconnectedAfter1s)
TEST(TwitchPubSubClient, ExceedTopicLimit)
{
FTest pubSub("", 1s);
MockApplication a("", 1s);
auto &pubSub = a.pubSub;
pubSub.start();
@@ -231,7 +262,8 @@ TEST(TwitchPubSubClient, ExceedTopicLimit)
TEST(TwitchPubSubClient, ExceedTopicLimitSingleStep)
{
FTest pubSub("", 1s);
MockApplication a("", 1s);
auto &pubSub = a.pubSub;
pubSub.start();
@@ -260,7 +292,8 @@ TEST(TwitchPubSubClient, ExceedTopicLimitSingleStep)
TEST(TwitchPubSubClient, ModeratorActionsUserBanned)
{
FTest pubSub("/moderator-actions-user-banned", 1s);
MockApplication a("/moderator-actions-user-banned", 1s);
auto &pubSub = a.pubSub;
pubSub.start();
@@ -303,7 +336,8 @@ TEST(TwitchPubSubClient, ModeratorActionsUserBanned)
TEST(TwitchPubSubClient, MissingToken)
{
// The token that's required is "xD"
FTest pubSub("/authentication-required", 1s, "");
MockApplication a("/authentication-required", 1s, "");
auto &pubSub = a.pubSub;
pubSub.start();
@@ -328,7 +362,8 @@ TEST(TwitchPubSubClient, MissingToken)
TEST(TwitchPubSubClient, WrongToken)
{
// The token that's required is "xD"
FTest pubSub("/authentication-required", 1s);
MockApplication a("/authentication-required", 1s);
auto &pubSub = a.pubSub;
pubSub.start();
@@ -353,7 +388,8 @@ TEST(TwitchPubSubClient, WrongToken)
TEST(TwitchPubSubClient, CorrectToken)
{
// The token that's required is "xD"
FTest pubSub("/authentication-required", 1s, "xD");
MockApplication a("/authentication-required", 1s, "xD");
auto &pubSub = a.pubSub;
pubSub.start();
@@ -377,7 +413,8 @@ TEST(TwitchPubSubClient, CorrectToken)
TEST(TwitchPubSubClient, AutoModMessageHeld)
{
FTest pubSub("/automod-held", 1s);
MockApplication a("/automod-held", 1s);
auto &pubSub = a.pubSub;
pubSub.start();