/**
  * Execute the job.
  *
  * @param SubscriptionActions $mailChimp
  */
 public function handle(SubscriptionActions $mailChimp)
 {
     if ($this->model->getMailingListOptedOut()) {
         return;
     }
     $mailChimp->subscribe($this->model);
 }
 /**
  * @test
  * @group  */
 public function it_unsubscribes_to_mailChimp()
 {
     $this->setAuth($apiKey = getenv('MAILCHIMP_API'));
     $this->guzzle->shouldReceive('request')->with('DELETE', $this->endpoint . "/3.0/lists/{$this->model->getMailingListId()}/members/" . md5(strtolower($email = $this->model->getMailingListEmail())), ['headers' => ['Authorization' => 'OAuth ' . $apiKey]]);
     $sa = new SubscriptionActions($this->guzzle, $this->config);
     $this->assertEquals(true, $sa->unsubscribe($this->model, $this->model->getMailingListEmail()));
 }
 /**
  * Execute the job.
  *
  * @return void
  */
 public function handle(SubscriptionActions $mailChimp)
 {
     if (!$this->model->mailingList) {
         return;
     }
     $this->model->mailingList->delete();
     $mailChimp->unSubscribe($this->model, $this->emailToDelete);
 }
 /** @test
  * @group  */
 public function it_un_subscribes_from_mailChimp()
 {
     $sa = new SubscriptionActions(new Client());
     $this->assertEquals(true, $sa->unsubscribe($this->model, $this->model->getMailingListEmail()));
 }