summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/Framework/Shared.php28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/Framework/Shared.php b/tests/Framework/Shared.php
index 99ef829da..0394cd025 100644
--- a/tests/Framework/Shared.php
+++ b/tests/Framework/Shared.php
@@ -201,4 +201,32 @@ class Framework_Shared extends PHPUnit_Framework_TestCase
}
+ /**
+ * rcube_shared.inc: is_ascii()
+ */
+ function test_is_ascii()
+ {
+ $result = is_ascii("0123456789");
+ $this->assertTrue($result, "Valid ASCII (numbers)");
+
+ $result = is_ascii("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
+ $this->assertTrue($result, "Valid ASCII (letters)");
+
+ $result = is_ascii(" !\"#\$%&'()*+,-./:;<=>?@[\\^_`{|}~");
+ $this->assertTrue($result, "Valid ASCII (special characters)");
+
+ $result = is_ascii("\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0A\x0B\x0C\x0D\x0E\x0F"
+ ."\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F");
+ $this->assertTrue($result, "Valid ASCII (control characters)");
+
+ $result = is_ascii("\n", false);
+ $this->assertFalse($result, "Valid ASCII (control characters)");
+
+ $result = is_ascii("ż");
+ $this->assertFalse($result, "Invalid ASCII (UTF-8 character)");
+
+ $result = is_ascii("ż", false);
+ $this->assertFalse($result, "Invalid ASCII (UTF-8 character [2])");
+ }
+
}