Skip to content

Commit 152ec67

Browse files
theohollluka-nextcloud
authored andcommitted
Fix: Allow boards with name '0'
Signed-off-by: Theo Hollweg <thollweg@mailbox.org>
1 parent a7c4326 commit 152ec67

2 files changed

Lines changed: 52 additions & 0 deletions

File tree

lib/Validators/BaseValidator.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,11 @@ private function not_null($value): bool {
104104
* @return bool
105105
*/
106106
private function not_empty($value): bool {
107+
// Treat string zero as a valid non-empty value while still rejecting other empty values
108+
if ($value === '0') {
109+
return true;
110+
}
111+
107112
return !empty($value);
108113
}
109114

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
/**
6+
*
7+
* @license GNU AGPL version 3 or any later version
8+
*
9+
* This program is free software: you can redistribute it and/or modify
10+
* it under the terms of the GNU Affero General Public License as
11+
* published by the Free Software Foundation, either version 3 of the
12+
* License, or (at your option) any later version.
13+
*
14+
* This program is distributed in the hope that it will be useful,
15+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17+
* GNU Affero General Public License for more details.
18+
*
19+
* You should have received a copy of the GNU Affero General Public License
20+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
21+
*/
22+
23+
24+
namespace OCA\Deck\Validators;
25+
26+
use OCA\Deck\Tests\unit\Validators\ValidatorTestBase;
27+
28+
class BoardServiceValidatorTest extends ValidatorTestBase {
29+
public function setUp(): void {
30+
parent::setUpValidatorTest(BoardServiceValidator::class);
31+
}
32+
33+
public function testTitleZeroIsAccepted(): void {
34+
$this->assertPass([
35+
'title' => '0',
36+
]);
37+
}
38+
39+
public function testTitleEmptyIsRejected(): void {
40+
$this->assertFail([
41+
'title' => '',
42+
]);
43+
$this->assertFail([
44+
'title' => null,
45+
]);
46+
}
47+
}

0 commit comments

Comments
 (0)