Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
NotificationAboutFailedSubscriptionTest.php
Go to the documentation of this file.
1 <?php
7 
12 
13 class NotificationAboutFailedSubscriptionTest extends \PHPUnit\Framework\TestCase
14 {
18  private $subscriptionStatusMock;
19 
23  private $urlBuilderMock;
24 
28  private $notification;
29 
33  private $objectManagerHelper;
34 
38  protected function setUp()
39  {
40  $this->subscriptionStatusMock = $this->getMockBuilder(SubscriptionStatusProvider::class)
41  ->disableOriginalConstructor()
42  ->getMock();
43  $this->urlBuilderMock = $this->getMockBuilder(UrlInterface::class)
44  ->getMockForAbstractClass();
45  $this->objectManagerHelper = new ObjectManagerHelper($this);
46  $this->notification = $this->objectManagerHelper->getObject(
47  NotificationAboutFailedSubscription::class,
48  [
49  'subscriptionStatusProvider' => $this->subscriptionStatusMock,
50  'urlBuilder' => $this->urlBuilderMock
51  ]
52  );
53  }
54 
56  {
57  $this->subscriptionStatusMock->expects($this->once())
58  ->method('getStatus')
59  ->willReturn(
61  );
62  $this->assertTrue($this->notification->isDisplayed());
63  }
64 
71  {
72  $this->subscriptionStatusMock->expects($this->once())
73  ->method('getStatus')
74  ->willReturn($status);
75  $this->assertFalse($this->notification->isDisplayed());
76  }
77 
79  {
80  $retryUrl = 'http://magento.dev/retryUrl';
81  $this->urlBuilderMock->expects($this->once())
82  ->method('getUrl')
83  ->with('analytics/subscription/retry')
84  ->willReturn($retryUrl);
85  $messageDetails = 'Failed to synchronize data to the Magento Business Intelligence service. ';
86  $messageDetails .= sprintf('<a href="%s">Retry Synchronization</a>', $retryUrl);
87  $this->assertEquals($messageDetails, $this->notification->getText());
88  }
89 
96  {
97  return [
101  ];
102  }
103 }
$status
Definition: order_status.php:8