Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
SubscriptionStatusLabelTest.php
Go to the documentation of this file.
1 <?php
7 
14 
15 class SubscriptionStatusLabelTest extends \PHPUnit\Framework\TestCase
16 {
20  private $subscriptionStatusLabel;
21 
25  private $abstractElementMock;
26 
30  private $subscriptionStatusProviderMock;
31 
35  private $contextMock;
36 
40  private $formMock;
41 
42  protected function setUp()
43  {
44  $this->subscriptionStatusProviderMock = $this->getMockBuilder(SubscriptionStatusProvider::class)
45  ->disableOriginalConstructor()
46  ->getMock();
47  $this->contextMock = $this->getMockBuilder(Context::class)
48  ->disableOriginalConstructor()
49  ->getMock();
50  $this->abstractElementMock = $this->getMockBuilder(AbstractElement::class)
51  ->setMethods(['getComment'])
52  ->disableOriginalConstructor()
53  ->getMock();
54  $this->formMock = $this->getMockBuilder(Form::class)
55  ->disableOriginalConstructor()
56  ->getMock();
57 
58  $objectManager = new ObjectManager($this);
59  $this->subscriptionStatusLabel = $objectManager->getObject(
60  SubscriptionStatusLabel::class,
61  [
62  'context' => $this->contextMock,
63  'subscriptionStatusProvider' => $this->subscriptionStatusProviderMock
64  ]
65  );
66  }
67 
68  public function testRender()
69  {
70  $this->abstractElementMock->setForm($this->formMock);
71  $this->subscriptionStatusProviderMock->expects($this->once())
72  ->method('getStatus')
73  ->willReturn('Enabled');
74  $this->abstractElementMock->expects($this->any())
75  ->method('getComment')
76  ->willReturn('Subscription status: Enabled');
77  $this->assertRegExp(
78  "/Subscription status: Enabled/",
79  $this->subscriptionStatusLabel->render($this->abstractElementMock)
80  );
81  }
82 }
$objectManager
Definition: bootstrap.php:17