summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorBjoern Schiessle <schiessle@owncloud.com>2014-10-15 14:05:18 +0200
committerBjoern Schiessle <schiessle@owncloud.com>2014-10-15 14:54:35 +0200
commit239bff5766c42e94e430dfdc4233ac4115c516ec (patch)
tree5597376577eb02b177b58339e6b617fcef1aaddb /tests
parent6fa03870e9d0de5c0ff9fff120c4b06e6f94c4a0 (diff)
downloadnextcloud-server-239bff5766c42e94e430dfdc4233ac4115c516ec.tar.gz
nextcloud-server-239bff5766c42e94e430dfdc4233ac4115c516ec.zip
strip whitespace from the beginning and end of the display name to avoid empty display names
Diffstat (limited to 'tests')
-rw-r--r--tests/lib/user/user.php46
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/lib/user/user.php b/tests/lib/user/user.php
index 3f90432c6b0..7a1db861c98 100644
--- a/tests/lib/user/user.php
+++ b/tests/lib/user/user.php
@@ -32,6 +32,28 @@ class User extends \PHPUnit_Framework_TestCase {
$this->assertEquals('Foo', $user->getDisplayName());
}
+ /**
+ * if the display name contain whitespaces only, we expect the uid as result
+ */
+ public function testDisplayNameEmpty() {
+ /**
+ * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
+ */
+ $backend = $this->getMock('\OC_User_Backend');
+ $backend->expects($this->once())
+ ->method('getDisplayName')
+ ->with($this->equalTo('foo'))
+ ->will($this->returnValue(' '));
+
+ $backend->expects($this->any())
+ ->method('implementsActions')
+ ->with($this->equalTo(\OC_USER_BACKEND_GET_DISPLAYNAME))
+ ->will($this->returnValue(true));
+
+ $user = new \OC\User\User('foo', $backend);
+ $this->assertEquals('foo', $user->getDisplayName());
+ }
+
public function testDisplayNameNotSupported() {
/**
* @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
@@ -305,6 +327,30 @@ class User extends \PHPUnit_Framework_TestCase {
$this->assertEquals('Foo',$user->getDisplayName());
}
+ /**
+ * don't allow display names containing whitespaces only
+ */
+ public function testSetDisplayNameEmpty() {
+ /**
+ * @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend
+ */
+ $backend = $this->getMock('\OC_User_Database');
+
+ $backend->expects($this->any())
+ ->method('implementsActions')
+ ->will($this->returnCallback(function ($actions) {
+ if ($actions === \OC_USER_BACKEND_SET_DISPLAYNAME) {
+ return true;
+ } else {
+ return false;
+ }
+ }));
+
+ $user = new \OC\User\User('foo', $backend);
+ $this->assertFalse($user->setDisplayName(' '));
+ $this->assertEquals('foo',$user->getDisplayName());
+ }
+
public function testSetDisplayNameNotSupported() {
/**
* @var \OC_User_Backend | \PHPUnit_Framework_MockObject_MockObject $backend