aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/text.php10
-rw-r--r--tests/text_test.php31
2 files changed, 37 insertions, 4 deletions
diff --git a/include/text.php b/include/text.php
index c2573da0c..edaa8dcd3 100644
--- a/include/text.php
+++ b/include/text.php
@@ -872,15 +872,17 @@ function searchbox($s,$id='search-box',$url='/search',$save = false) {
));
}
+function valid_email_regex($x){
+ if(preg_match('/^[_a-zA-Z0-9\-\+]+(\.[_a-zA-Z0-9\-\+]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)+$/',$x))
+ return true;
+ return false;
+}
function valid_email($x){
if(get_config('system','disable_email_validation'))
return true;
- if(preg_match('/^[_a-zA-Z0-9\-\+]+(\.[_a-zA-Z0-9\-\+]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)+$/',$x))
- return true;
-
- return false;
+ return valid_email_regex($x);
}
/**
diff --git a/tests/text_test.php b/tests/text_test.php
new file mode 100644
index 000000000..d1e210b68
--- /dev/null
+++ b/tests/text_test.php
@@ -0,0 +1,31 @@
+<?php
+/**
+ * this file contains tests for text.php
+ *
+ * @package test.util
+ */
+
+/** required, it is the file under test */
+require_once('include/text.php');
+
+/**
+ * TestCase for the texter
+ *
+ * @author ken restivo
+ * @package test.util
+ */
+class TextTest extends PHPUnit_Framework_TestCase {
+ public function testGoodEmail() {
+ $this->assertTrue(valid_email_regex('ken@spaz.org'));
+ }
+ public function testGoodEmail2() {
+ $this->assertTrue(valid_email_regex('ken@restivo.org'));
+ }
+ public function testGoodEmail3() {
+ $this->assertTrue(valid_email_regex('nobody@hubzilla.com'));
+ }
+ public function testBadEmail() {
+ $this->assertFalse(valid_email_regex('nobody!uses!these!any.more'));
+ }
+
+} \ No newline at end of file