def cancelIfApplicable()

in src/main/scala/CancellationHelper.scala [10:18]


  def cancelIfApplicable(accountId: String, autoPay: Boolean, subscriptions: List[Subscription]): String \/ ProcessedAccount = {
    val singleActiveSub = subscriptions.count(_.status == "Active") == 1
    if (!autoPay && singleActiveSub) {
      ZuoraService.cancelSubscription(accountId, subscriptions.head.subscriptionNumber).map(_ => Cancelled)
    } else {
      val skipReason = if (autoPay) "user has added a payment method" else s"could not identify single active subscription"
      \/-(Skipped(skipReason))
    }
  }