DocumentationModelTest.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <?php
  2. /**
  3. * Refer to LICENSE.txt distributed with the Temando Shipping module for notice of license
  4. */
  5. namespace Temando\Shipping\Model;
  6. use Magento\TestFramework\Helper\Bootstrap;
  7. /**
  8. * Temando Documentation Collection Test
  9. *
  10. * @package Temando\Shipping\Test\Integration
  11. * @author Christoph Aßmann <christoph.assmann@netresearch.de>
  12. * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
  13. * @link http://www.temando.com/
  14. */
  15. class DocumentationModelTest extends \PHPUnit\Framework\TestCase
  16. {
  17. /**
  18. * @test
  19. */
  20. public function dataIsSetThroughConstructorArgument()
  21. {
  22. $documentationId = '1234';
  23. $description = 'Package Label';
  24. $type = 'packageLabels';
  25. $size = 'A6';
  26. $mimeType = 'image/png';
  27. $url = 'https://example.com/documents/label-1234';
  28. /** @var Documentation $documentation */
  29. $documentation = Bootstrap::getObjectManager()->create(Documentation::class, ['data' => [
  30. DocumentationInterface::DOCUMENTATION_ID => $documentationId,
  31. DocumentationInterface::NAME => $description,
  32. DocumentationInterface::TYPE => $type,
  33. DocumentationInterface::SIZE => $size,
  34. DocumentationInterface::MIME_TYPE => $mimeType,
  35. DocumentationInterface::URL => $url,
  36. ]]);
  37. $this->assertEquals($documentationId, $documentation->getDocumentationId());
  38. $this->assertEquals($description, $documentation->getName());
  39. $this->assertEquals($type, $documentation->getType());
  40. $this->assertEquals($size, $documentation->getSize());
  41. $this->assertEquals($mimeType, $documentation->getMimeType());
  42. $this->assertEquals($url, $documentation->getUrl());
  43. }
  44. /**
  45. * @test
  46. */
  47. public function dataIsSetThroughSetters()
  48. {
  49. $documentationId = '1234';
  50. $description = 'Package Label';
  51. $type = 'packageLabels';
  52. $size = 'A6';
  53. $mimeType = 'image/png';
  54. $url = 'https://example.com/documents/label-1234';
  55. /** @var Documentation $documentation */
  56. $documentation = Bootstrap::getObjectManager()->create(Documentation::class);
  57. $this->assertEmpty($documentation->getDocumentationId());
  58. $documentation->setData(Documentation::DOCUMENTATION_ID, $documentationId);
  59. $this->assertEquals($documentationId, $documentation->getDocumentationId());
  60. $documentation->setData(Documentation::NAME, $description);
  61. $this->assertEquals($description, $documentation->getName());
  62. $documentation->setData(Documentation::TYPE, $type);
  63. $this->assertEquals($type, $documentation->getType());
  64. $documentation->setData(Documentation::SIZE, $size);
  65. $this->assertEquals($size, $documentation->getSize());
  66. $documentation->setData(Documentation::MIME_TYPE, $mimeType);
  67. $this->assertEquals($mimeType, $documentation->getMimeType());
  68. $documentation->setData(Documentation::URL, $url);
  69. $this->assertEquals($url, $documentation->getUrl());
  70. }
  71. }