]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - tests/NicknameTest.php
AtomPub tetss: confirming edit URL linked properly in individual entry return
[quix0rs-gnu-social.git] / tests / NicknameTest.php
index f1d9808228571feb30ce21b9b70be252e9c6a448..f49aeba602421957dae8e6e20e7656a520a46bf9 100644 (file)
@@ -26,18 +26,18 @@ class NicknameTest extends PHPUnit_Framework_TestCase
         $exception = null;
         $normalized = false;
         try {
-            $normalized = Nickname::normalize($normalized);
+            $normalized = Nickname::normalize($input);
         } catch (NicknameException $e) {
             $exception = $e;
         }
 
         if ($expected === false) {
             if ($expectedException) {
-                $this->assert($exception && $exception instanceof $expectedException,
+                $this->assertTrue($exception && $exception instanceof $expectedException,
                         "invalid input '$input' expected to fail with $expectedException, " .
                         "got " . get_class($exception) . ': ' . $exception->getMessage());
             } else {
-                $this->assert($normalized == false,
+                $this->assertTrue($normalized == false,
                         "invalid input '$input' expected to fail");
             }
         } else {
@@ -47,7 +47,26 @@ class NicknameTest extends PHPUnit_Framework_TestCase
             } else {
                 $msg .= "'$normalized'";
             }
-            $this->assertEquals($expected, $norm, $msg);
+            $this->assertEquals($expected, $normalized, $msg);
+        }
+    }
+
+    /**
+     * Test on the regex matching used in common_find_mentions
+     * (testing on the full notice rendering is difficult as it needs
+     * to be able to pull from global state)
+     *
+     * @dataProvider provider
+     */
+    public function testAtReply($input, $expected, $expectedException=null)
+    {
+        if ($expected == false) {
+            // nothing to do
+        } else {
+            $text = "@{$input} awesome! :)";
+            $matches = common_find_mentions_raw($text);
+            $this->assertEquals(1, count($matches));
+            $this->assertEquals($expected, Nickname::normalize($matches[0][0]));
         }
     }