Esempio n. 1
0
 /**
  * @dataProvider data_subtractFrom
  */
 public function test_subtractFrom_usingLocalDateMinus(Period $period, LocalDate $baseDate, LocalDate $expected)
 {
     $this->assertEquals($baseDate->minusAmount($period), $expected);
 }
Esempio n. 2
0
 /**
  * Returns a copy of this date-time with the specified amount subtracted.
  * <p>
  * This returns a {@code LocalDateTime}, based on this one, with the specified amount subtracted.
  * The amount is typically {@link Period} or {@link Duration} but may be
  * any other type implementing the {@link TemporalAmount} interface.
  * <p>
  * The calculation is delegated to the amount object by calling
  * {@link TemporalAmount#subtractFrom(Temporal)}. The amount implementation is free
  * to implement the subtraction in any way it wishes, however it typically
  * calls back to {@link #minus(long, TemporalUnit)}. Consult the documentation
  * of the amount implementation to determine if it can be successfully subtracted.
  * <p>
  * This instance is immutable and unaffected by this method call.
  *
  * @param TemporalAmount $amountToSubtract the amount to subtract, not null
  * @return LocalDateTime a {@code LocalDateTime} based on this date-time with the subtraction made, not null
  * @throws DateTimeException if the subtraction cannot be made
  * @throws ArithmeticException if numeric overflow occurs
  */
 public function minusAmount(TemporalAmount $amountToSubtract)
 {
     if ($amountToSubtract instanceof Period) {
         $periodToSubtract = $amountToSubtract;
         return $this->_with($this->date->minusAmount($periodToSubtract), $this->time);
     }
     return $amountToSubtract->subtractFrom($this);
 }