function testIllegalChars() { $r = new Rule_UserName(); // Special chars $this->assertTrue($r->containsIllegalChars("user\n")); $this->assertTrue($r->containsIllegalChars("\nuser")); $this->assertTrue($r->containsIllegalChars("user\nuser")); $this->assertTrue($r->containsIllegalChars("user")); $this->assertTrue($r->containsIllegalChars("user")); $this->assertTrue($r->containsIllegalChars("useruser")); // Punctuation $this->assertTrue($r->containsIllegalChars("user a")); $this->assertTrue($r->containsIllegalChars("user;a")); // Since rev #12892, this char is allowed $this->assertFalse($r->containsIllegalChars("user.a")); $this->assertTrue($r->containsIllegalChars("user,a")); $this->assertTrue($r->containsIllegalChars("user:a")); $this->assertTrue($r->containsIllegalChars("user'a")); $this->assertTrue($r->containsIllegalChars("user`a")); $this->assertTrue($r->containsIllegalChars('user"a')); $this->assertTrue($r->containsIllegalChars("user<a")); $this->assertTrue($r->containsIllegalChars("user>a")); $this->assertTrue($r->containsIllegalChars("user[a")); $this->assertTrue($r->containsIllegalChars("user]a")); $this->assertTrue($r->containsIllegalChars("user{a")); $this->assertTrue($r->containsIllegalChars("user}a")); $this->assertTrue($r->containsIllegalChars("user(a")); $this->assertTrue($r->containsIllegalChars("user)a")); $this->assertTrue($r->containsIllegalChars("user|a")); // Maths $this->assertTrue($r->containsIllegalChars("user+a")); $this->assertTrue($r->containsIllegalChars("user=a")); $this->assertTrue($r->containsIllegalChars("user/a")); // Misc $this->assertTrue($r->containsIllegalChars("user~a")); $this->assertTrue($r->containsIllegalChars("user@a")); $this->assertTrue($r->containsIllegalChars("user!a")); $this->assertTrue($r->containsIllegalChars('user#a')); $this->assertTrue($r->containsIllegalChars('user$a')); $this->assertTrue($r->containsIllegalChars("user%a")); $this->assertTrue($r->containsIllegalChars("user^a")); $this->assertTrue($r->containsIllegalChars("user&a")); $this->assertTrue($r->containsIllegalChars("user*a")); // Accent & language $this->assertTrue($r->containsIllegalChars("useré")); $this->assertTrue($r->containsIllegalChars("userç")); }