/**
  * @dataProvider listDeliveryDatesProvider
  */
 public function testListDeliveryDates($mocks, $args)
 {
     $this->setMockResponse($this->client, $mocks);
     $response = $this->client->listDeliveryDates($args);
     $this->assertArrayHasKey('DeliveryEstimateRequestResponse', $response);
     $this->assertArrayHasKey('DeliveryEstimateDates', $response['DeliveryEstimateRequestResponse']);
     $this->assertArrayHasKey('DeliveryEstimateDate', $response['DeliveryEstimateRequestResponse']['DeliveryEstimateDates']);
     if (isset($args['number_of_dates'])) {
         if ($args['number_of_dates'] > 1) {
             $dates = $response['DeliveryEstimateRequestResponse']['DeliveryEstimateDates']['DeliveryEstimateDate'];
             $this->assertCount($args['number_of_dates'], $dates);
             foreach ($dates as $date) {
                 $this->assertArrayHasKey('NumberOfWorkingDays', $date);
                 $this->assertArrayHasKey('TimedDeliveryEnabled', $date);
             }
         } else {
             $dates = $response['DeliveryEstimateRequestResponse']['DeliveryEstimateDates']['DeliveryEstimateDate'];
             $this->assertArrayHasKey('NumberOfWorkingDays', $dates);
             $this->assertArrayHasKey('TimedDeliveryEnabled', $dates);
         }
     } else {
         $dates = $response['DeliveryEstimateRequestResponse']['DeliveryEstimateDates']['DeliveryEstimateDate'];
         foreach ($dates as $date) {
             $this->assertArrayHasKey('NumberOfWorkingDays', $date);
             $this->assertArrayHasKey('TimedDeliveryEnabled', $date);
         }
     }
 }