]> git.localhorst.tv Git - alttp.git/blobdiff - tests/Unit/TwitchBot/TokenizedMessageTest.php
more classification
[alttp.git] / tests / Unit / TwitchBot / TokenizedMessageTest.php
index 243f0985d4f84a1d2d840c439447e65e48c24aea..6fe2e0dd9916583b1d8590819678ada2ca3f2ae8 100644 (file)
@@ -8,15 +8,25 @@ use PHPUnit\Framework\TestCase;
 class TokenizedMessageTest extends TestCase {
 
        public function test_classification() {
+               $this->assertEquals('cmd', TokenizedMessage::fromString('!start')->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('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('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());
@@ -26,13 +36,40 @@ class TokenizedMessageTest extends TestCase {
 
                $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('question', TokenizedMessage::fromString('Joaaa geht so ...und selbst?')->classify());
+
+               $this->assertEquals('thx', TokenizedMessage::fromString('danke für den tipp')->classify());
+
+               $this->assertEquals('wtf', TokenizedMessage::fromString('wtf? lol')->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());
        }
 
 }