X-Git-Url: https://git.localhorst.tv/?a=blobdiff_plain;ds=sidebyside;f=tests%2FUnit%2FTwitchBot%2FTokenizedMessageTest.php;h=832b9702cf2a345b82023f022bc592d4b157cdaa;hb=4c72d4b8bec61eba5b3dc43df5eafd890e123d37;hp=8d415739f66ad6b0ec926dc5b63e09f1862a85ba;hpb=f3e985ec38b6221ef4c450e02b3e61e8ef08dc21;p=alttp.git diff --git a/tests/Unit/TwitchBot/TokenizedMessageTest.php b/tests/Unit/TwitchBot/TokenizedMessageTest.php index 8d41573..832b970 100644 --- a/tests/Unit/TwitchBot/TokenizedMessageTest.php +++ b/tests/Unit/TwitchBot/TokenizedMessageTest.php @@ -8,32 +8,90 @@ use PHPUnit\Framework\TestCase; class TokenizedMessageTest extends TestCase { public function test_classification() { + $this->assertEquals('cmd', TokenizedMessage::fromString('!start')->classify()); + + $this->assertEquals('eyes', TokenizedMessage::fromString(':eyes:')->classify()); + $this->assertEquals('eyes', TokenizedMessage::fromString('holysm3Eyes', ['emotes' => 'blah:0-11'])->classify()); + $this->assertEquals('gg', TokenizedMessage::fromString('gg')->classify()); $this->assertEquals('gg', TokenizedMessage::fromString('GG')->classify()); $this->assertEquals('gg', TokenizedMessage::fromString('Gg')->classify()); + $this->assertEquals('gg', TokenizedMessage::fromString('ggs')->classify()); + $this->assertEquals('gg', TokenizedMessage::fromString('gg monkaS')->classify()); + $this->assertEquals('gg', TokenizedMessage::fromString('ja gg dann, ne')->classify()); + $this->assertEquals('gg', TokenizedMessage::fromString('duden2Gg', ['emotes' => 'blah:0-7'])->classify()); + $this->assertEquals('gg', TokenizedMessage::fromString('ticknaGg2', ['emotes' => 'blah:0-8'])->classify()); + $this->assertNotEquals('gg', TokenizedMessage::fromString('Eggnog')->classify()); $this->assertEquals('gl', TokenizedMessage::fromString('glhf')->classify()); $this->assertEquals('gl', TokenizedMessage::fromString('gl & hf')->classify()); $this->assertEquals('hi', TokenizedMessage::fromString('hi')->classify()); $this->assertEquals('hi', TokenizedMessage::fromString('hallo')->classify()); - $this->assertEquals('hi', TokenizedMessage::fromString('osora9Hello')->classify()); + $this->assertEquals('hi', TokenizedMessage::fromString('Hallo zusammen :)')->classify()); + $this->assertEquals('hi', TokenizedMessage::fromString('osora9Hello', ['emotes' => 'blah:0-10'])->classify()); + $this->assertEquals('hi', TokenizedMessage::fromString('hallo ihr lieben ticknaHi2 ticknaHerz', ['emotes' => 'blah:17-25/blubb:27-36'])->classify()); $this->assertNotEquals('hi', TokenizedMessage::fromString('hier steht was')->classify()); $this->assertEquals('hype', TokenizedMessage::fromString('122 Hype!')->classify()); + $this->assertEquals('hype', TokenizedMessage::fromString('Sarühlalü KomodoHype', ['emotes' => '81273:10-19'])->classify()); + + $this->assertEquals('kappa', TokenizedMessage::fromString('Kappa', ['emotes' => 'blah:0-4'])->classify()); + $this->assertEquals('kappa', TokenizedMessage::fromString('KappaClaus', ['emotes' => 'blah:0-9'])->classify()); + $this->assertEquals('kappa', TokenizedMessage::fromString('Keepo', ['emotes' => 'blah:0-4'])->classify()); + $this->assertNotEquals('kappa', TokenizedMessage::fromString('I keep order')->classify()); $this->assertEquals('number', TokenizedMessage::fromString('13')->classify()); $this->assertEquals('number', TokenizedMessage::fromString('22')->classify()); $this->assertEquals('lol', TokenizedMessage::fromString('haha')->classify()); $this->assertEquals('lol', TokenizedMessage::fromString('KEKW')->classify()); - $this->assertEquals('lol', TokenizedMessage::fromString('LUL')->classify()); + $this->assertEquals('lol', TokenizedMessage::fromString('LUL', ['emotes' => 'blah:0-2'])->classify()); + $this->assertEquals('lol', TokenizedMessage::fromString(':D')->classify()); + $this->assertEquals('lol', TokenizedMessage::fromString('xD')->classify()); + $this->assertEquals('lol', TokenizedMessage::fromString('denkst du LUL', ['emotes' => 'blah:10-12'])->classify()); + $this->assertNotEquals('lol', TokenizedMessage::fromString('holy nynyxDiscoLove', ['emotes' => 'blah:5-18'])->classify()); $this->assertEquals('o7', TokenizedMessage::fromString('o7')->classify()); + $this->assertEquals('o7', TokenizedMessage::fromString('ticknaSalutieren', ['emotes' => 'blah:0-15'])->classify()); $this->assertEquals('pog', TokenizedMessage::fromString('Pog')->classify()); + $this->assertNotEquals('pog', TokenizedMessage::fromString('wo war der')->classify()); + + $this->assertEquals('rage', TokenizedMessage::fromString('duden2Rage', ['emotes' => 'blah:0-10'])->classify()); + + $this->assertEquals('question', TokenizedMessage::fromString('Joaaa geht so ...und selbst?')->classify()); + + $this->assertEquals('sad', TokenizedMessage::fromString(':(')->classify()); + $this->assertEquals('sad', TokenizedMessage::fromString('PoroSad', ['emotes' => 'blah:0-7'])->classify()); + + $this->assertEquals('sweat', TokenizedMessage::fromString('monkaS')->classify()); + + $this->assertEquals('thx', TokenizedMessage::fromString('danke für den tipp')->classify()); + + $this->assertEquals('wtf', TokenizedMessage::fromString('wtf? lol')->classify()); + $this->assertNotEquals('wtf', TokenizedMessage::fromString('ein waterwalk aufgesetzt')->classify()); + + $this->assertEquals('yes', TokenizedMessage::fromString('ja geht SeemsGood')->classify()); + $this->assertEquals('yes', TokenizedMessage::fromString('also ich würde sagen ja LUL', ['emotes' => 'blah:24-26'])->classify()); + $this->assertNotEquals('yes', TokenizedMessage::fromString('find ich ja gut')->classify()); $this->assertEquals('unclassified', TokenizedMessage::fromString('')->classify()); + $this->assertEquals('unclassified', TokenizedMessage::fromString('bitte boots locked in desert und bib')->classify()); + } + + public function test_spam() { + $this->assertTrue(TokenizedMessage::fromString('!start')->isSpammy()); + $this->assertTrue(TokenizedMessage::fromString('@LocalhorstTV')->isSpammy()); + + $this->assertTrue(TokenizedMessage::fromString('just 50€')->isSpammy()); + $this->assertTrue(TokenizedMessage::fromString('hello would you like some followers?')->isSpammy()); + $this->assertTrue(TokenizedMessage::fromString('get view ers for free')->isSpammy()); + + $this->assertTrue(TokenizedMessage::fromString('also bitte, horstie')->isSpammy()); + + $this->assertTrue(TokenizedMessage::fromString('hey maengi, vielen dank für den raid')->isSpammy()); + $this->assertTrue(TokenizedMessage::fromString('Willkommen auf Starbase 47')->isSpammy()); } }