AgreementTest.php 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\CheckoutAgreements\Test\Unit\Model;
  7. class AgreementTest extends \PHPUnit\Framework\TestCase
  8. {
  9. /**
  10. * @var \Magento\CheckoutAgreements\Model\Agreement
  11. */
  12. protected $model;
  13. protected function setUp()
  14. {
  15. $objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
  16. $this->model = $objectManager->getObject(\Magento\CheckoutAgreements\Model\Agreement::class);
  17. }
  18. /**
  19. * @covers \Magento\CheckoutAgreements\Model\Agreement::validateData
  20. *
  21. * @dataProvider validateDataDataProvider
  22. * @param \Magento\Framework\DataObject $inputData
  23. * @param array|bool $expectedResult
  24. */
  25. public function testValidateData($inputData, $expectedResult)
  26. {
  27. $this->assertEquals($expectedResult, $this->model->validateData($inputData));
  28. }
  29. /**
  30. * @return array
  31. */
  32. public function validateDataDataProvider()
  33. {
  34. return [
  35. [
  36. 'inputData' => (new \Magento\Framework\DataObject())->setContentHeight('1px'),
  37. 'expectedResult' => true,
  38. ],
  39. [
  40. 'inputData' => (new \Magento\Framework\DataObject())->setContentHeight('1.1px'),
  41. 'expectedResult' => true
  42. ],
  43. [
  44. 'inputData' => (new \Magento\Framework\DataObject())->setContentHeight('0.1in'),
  45. 'expectedResult' => true
  46. ],
  47. [
  48. 'inputData' => (new \Magento\Framework\DataObject())->setContentHeight('5%'),
  49. 'expectedResult' => true
  50. ],
  51. [
  52. 'inputData' => (new \Magento\Framework\DataObject())->setContentHeight('5'),
  53. 'expectedResult' => true
  54. ],
  55. [
  56. 'inputData' => (new \Magento\Framework\DataObject())->setContentHeight('px'),
  57. 'expectedResult' => [
  58. "Please input a valid CSS-height. For example 100px or 77pt or 20em or .5ex or 50%.",
  59. ]
  60. ],
  61. [
  62. 'inputData' => (new \Magento\Framework\DataObject())->setContentHeight('abracadabra'),
  63. 'expectedResult' => [
  64. "Please input a valid CSS-height. For example 100px or 77pt or 20em or .5ex or 50%.",
  65. ]
  66. ],
  67. ];
  68. }
  69. }