Skip to content

Commit

Permalink
fix #3148 【5.1】エラーメッセージに100までの数値で入力するように指示があったが、実際には101まで入力できる【コンテンツ管…
Browse files Browse the repository at this point in the history
…理>カスタムコンテンツ設定編集】 (#3159)

Co-authored-by: Đỗ Văn Hùng <[email protected]>
  • Loading branch information
HungDV2022 and dovanhung authored Feb 26, 2024
1 parent 537fdc0 commit 29335cb
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ class CustomContentsTable extends AppTable
* @param array $config テーブル設定
* @checked
* @noTodo
* @unitTest
*/
public function initialize(array $config): void
{
Expand All @@ -48,13 +49,14 @@ public function initialize(array $config): void
* @return Validator
* @checked
* @noTodo
* @unitTest
*/
public function validationWithTable(Validator $validator): Validator
{
$validator->setProvider('bc', 'BaserCore\Model\Validation\BcValidation');
$validator->requirePresence('list_count', 'update')
->notEmptyString('list_count', __d('baser_core', '一覧表示件数は必須項目です。'))
->range('list_count', [0, 101], __d('baser_core', '一覧表示件数は100までの数値で入力してください。'))
->range('list_count', [0, 100], __d('baser_core', '一覧表示件数は100までの数値で入力してください。'))
->add('list_count', 'halfText', [
'provider' => 'bc',
'rule' => 'halfText',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,11 @@
namespace BcCustomContent\Test\TestCase\Model\Table;

use BaserCore\TestSuite\BcTestCase;
use BcCustomContent\Model\Table\CustomContentsTable;

/**
* CustomContentsTableTest
* @property CustomContentsTable $CustomContentsTable
*/
class CustomContentsTableTest extends BcTestCase
{
Expand All @@ -25,13 +27,15 @@ class CustomContentsTableTest extends BcTestCase
public function setUp(): void
{
parent::setUp();
$this->CustomContentsTable = $this->getTableLocator()->get('BcCustomContent.CustomContents');
}

/**
* Tear down
*/
public function tearDown(): void
{
unset($this->CustomContentsTable);
parent::tearDown();
}

Expand All @@ -40,14 +44,43 @@ public function tearDown(): void
*/
public function test_initialize()
{
$this->markTestIncomplete('このテストは、まだ実装されていません。');
$this->assertTrue($this->CustomContentsTable->hasBehavior('BcContents'));
$this->assertTrue($this->CustomContentsTable->hasBehavior('Timestamp'));
$this->assertTrue($this->CustomContentsTable->hasBehavior('BcContents'));
$this->assertTrue($this->CustomContentsTable->hasAssociation('CustomTables'));
}

/**
* test validationWithTable
*/
public function test_validationWithTable()
{
$this->markTestIncomplete('このテストは、まだ実装されていません。');
//全角文字を入力した場合
$validator = $this->CustomContentsTable->getValidator('withTable');
$errors = $validator->validate([
'list_count' => '漢字'
]);
$this->assertEquals([
'range' => '一覧表示件数は100までの数値で入力してください。',
'halfText' => '一覧表示件数は半角で入力してください。'
], $errors['list_count']);

//101を入力した場合
$validator = $this->CustomContentsTable->getValidator('withTable');
$errors = $validator->validate([
'list_count' => '101'
]);
$this->assertEquals([
'range' => '一覧表示件数は100までの数値で入力してください。',
], $errors['list_count']);

//何も入力しない場合
$validator = $this->CustomContentsTable->getValidator('withTable');
$errors = $validator->validate([
'list_count' => ''
]);
$this->assertEquals([
'_empty' => '一覧表示件数は必須項目です。',
], $errors['list_count']);
}
}

0 comments on commit 29335cb

Please sign in to comment.