Magento Extensions Rating 2024
EXTENSIONS BY CATEGORY
B2B (Business-To-Business)
Blog
Customer
ERP (Enterprise Resource Planning)
Mega Menu
One Step Checkout
Order
POS (Point Of Sale)
Search
Shopping Cart
Sitemap
SEO
Social
Stock & Inventory Management
EXTENSIONS BY DEVELOPER
aheadWorks
Amasty
Boost My Shop
BSS Commerce
Magestore
MageWorx
Mirasvit
Templates Master
Wyomind
XTENTO
Magento 2 Documentation
Magento 2 Documentation
2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
vendor
magento
framework
Setup
Test
Unit
Declaration
Schema
ValidationRules
RealTypesTest.php
Go to the documentation of this file.
1
<?php
7
namespace
Magento\Framework\Setup\Test\Unit\Declaration\Schema\ValidationRules
;
8
9
use
Magento\Framework\TestFramework\Unit\Helper\ObjectManager
as ObjectManagerHelper;
10
use
Magento\Framework\Setup\Declaration\Schema\Declaration\ValidationRules\RealTypes
;
11
use
Magento\Framework\Setup\Declaration\Schema\Dto\Columns\Real
;
12
use
Magento\Framework\Setup\Declaration\Schema\Dto\Schema
;
13
use
Magento\Framework\Setup\Declaration\Schema\Dto\Table
;
14
15
class
RealTypesTest
extends
\PHPUnit\Framework\TestCase
16
{
18
private
$model;
19
21
private
$objectManagerHelper;
22
23
protected
function
setUp
()
24
{
25
26
$this->objectManagerHelper =
new
ObjectManagerHelper($this);
27
$this->model = $this->objectManagerHelper->getObject(
28
RealTypes::class,
29
[]
30
);
31
}
32
33
public
function
testValidate()
34
{
35
$table
=
new
Table
(
36
'name'
,
37
'name'
,
38
'table'
,
39
'default'
,
40
'innodb'
,
41
'utf-8'
,
42
'utf-8'
,
43
''
44
);
45
$okColumn =
new
Real
(
'decimal'
,
'decimal'
,
$table
, 10, 5);
46
$invalidColumn =
new
Real
(
'float'
,
'float'
,
$table
, 5, 10);
47
$table
->addColumns([$okColumn, $invalidColumn]);
49
$schemaMock = $this->getMockBuilder(Schema::class)
50
->disableOriginalConstructor()
51
->getMock();
52
$schemaMock->expects(self::once())
53
->method(
'getTables'
)
54
->willReturn([
$table
]);
55
56
self::assertEquals(
57
[
58
[
59
'column'
=>
'name.float'
,
60
'message'
=>
61
'Real type "precision" must be greater or equal to "scale". '
.
62
'float(5,10) is invalid in name.float.'
63
]
64
],
65
$this->model->validate($schemaMock)
66
);
67
}
68
}
Magento\Framework\Setup\Declaration\Schema\Declaration\ValidationRules\RealTypes
Definition:
RealTypes.php:17
Magento\Framework\Setup\Declaration\Schema\Dto\Columns\Real
Definition:
Real.php:18
Magento\Framework\Setup\Test\Unit\Declaration\Schema\ValidationRules\RealTypesTest
Definition:
RealTypesTest.php:15
Magento\Framework\Setup\Declaration\Schema\Dto\Table
Definition:
Table.php:17
Magento\Framework\Setup\Test\Unit\Declaration\Schema\ValidationRules\RealTypesTest\setUp
setUp()
Definition:
RealTypesTest.php:23
Magento\Framework\Setup\Test\Unit\Declaration\Schema\ValidationRules
Definition:
CheckReferenceColumnHasIndexTest.php:7
Magento\Framework\TestFramework\Unit\Helper\ObjectManager
Definition:
ObjectManager.php:13
Magento\Framework\Setup\Declaration\Schema\Dto\Schema
Definition:
Schema.php:15
$table
$table
Definition:
trigger.php:14