/**
  * @param PaymentTerm $paymentTerm
  * @return string
  */
 protected function generateAccountFilterUrl(PaymentTerm $paymentTerm)
 {
     if ($paymentTerm->getAccounts()->count() === 0) {
         return null;
     }
     return $this->generateHtmFilterUrl($paymentTerm->getId(), static::ACCOUNT_GRID_NAME, static::ACCOUNT_GRID_ROUTE, 'orob2b.account.entity_label');
 }
 public function testProcessValidData()
 {
     /** @var Account $appendedAccount */
     $appendedAccount = $this->getEntity('OroB2B\\Bundle\\AccountBundle\\Entity\\Account', 1);
     /** @var Account $removedAccount */
     $removedAccount = $this->getEntity('OroB2B\\Bundle\\AccountBundle\\Entity\\Account', 2);
     $this->entity->addAccount($removedAccount);
     /** @var AccountGroup $appendedAccountGroup */
     $appendedAccountGroup = $this->getEntity('OroB2B\\Bundle\\AccountBundle\\Entity\\AccountGroup', 1);
     /** @var AccountGroup $removedAccountGroup */
     $removedAccountGroup = $this->getEntity('OroB2B\\Bundle\\AccountBundle\\Entity\\AccountGroup', 2);
     $this->entity->addAccountGroup($removedAccountGroup);
     $this->form->expects($this->atLeastOnce())->method('get')->willReturnMap([['appendAccounts', $this->getEntityForm($appendedAccount)], ['removeAccounts', $this->getEntityForm($removedAccount)], ['appendAccountGroups', $this->getEntityForm($appendedAccountGroup)], ['removeAccountGroups', $this->getEntityForm($removedAccountGroup)]]);
     $this->prepareServices();
     $this->assertTrue($this->handler->process($this->entity));
     $this->assertFalse($this->entity->getAccounts()->contains($removedAccount));
     $this->assertFalse($this->entity->getAccountGroups()->contains($removedAccountGroup));
     $this->assertTrue($this->entity->getAccounts()->contains($appendedAccount));
     $this->assertTrue($this->entity->getAccountGroups()->contains($appendedAccountGroup));
 }