public function testGetVersionAvailable()
 {
     $obj = new UpdateSucceeded($this->versionUpdatedTo);
     $this->assertSame($this->versionUpdatedTo, $obj->getVersionUpdatedTo());
     $this->assertStringStartsWith('v', $obj->getVersionUpdatedTo('v'));
     $this->assertStringEndsWith('version', $obj->getVersionUpdatedTo('', 'version'));
 }
 /**
  * Handle the event.
  *
  * @param UpdateSucceeded $event
  */
 public function handle(UpdateSucceeded $event)
 {
     if (config('self-update.log_events')) {
         $this->logger->addInfo('[' . $event->getEventName() . '] event: Notification triggered.');
     }
     $sendToAddress = config('self-update.mail_to.address');
     $sendToName = config('self-update.mail_to.name');
     $subject = config('self-update.mail_to.subject_update_succeeded');
     if (empty($sendToAddress)) {
         $this->logger->addCritical('[' . $event->getEventName() . '] event: ' . 'Missing recipient email address. Please set SELF_UPDATER_MAILTO_ADDRESS in your .env file.');
     }
     if (empty($sendToName)) {
         $this->logger->addWarning('[' . $event->getEventName() . '] event: ' . 'Missing recipient email name. Please set SELF_UPDATER_MAILTO_NAME in your .env file.');
     }
     $this->mailer->send('vendor.self-update.mails.update-available', ['newVersion' => $event->getVersionAvailable()], function ($m) use($subject, $sendToAddress, $sendToName) {
         $m->subject($subject);
         $m->from(config('mail.from.address'), config('mail.from.name'));
         $m->to($sendToAddress, $sendToName);
     });
 }