Esempio n. 1
0
 public function testSetSubclass()
 {
     $newSubclass = new Subclass();
     $newSubclass->setId(1414);
     $this->queueItem->setSubclass($newSubclass);
     $this->assertEquals(1414, $this->queueItem->getSubclass()->getId());
 }
 public function testDelete()
 {
     $securityRepository = new SecurityRepository();
     $security = $securityRepository->findOneBySymbol('VTI');
     $accountRepository = new AccountRepository();
     $account = $accountRepository->findOneByAccountNumber('916985328');
     $subclassRepo = new SubclassRepository();
     $subclass = $subclassRepo->findFirst();
     $riaRepo = new RiaRepository();
     $ria = $riaRepo->findOneBy(array('email' => '*****@*****.**'));
     $jobRepo = new JobRepository();
     $job = $jobRepo->findOneBy(array('user_id' => $ria->getId()));
     $rebalancerActionRepo = new RebalancerActionRepository();
     $rebalancerActions = $rebalancerActionRepo->bindForJob($job);
     $rebalancerAction = $rebalancerActions->first();
     $rebalancerQueue = new QueueItem();
     $rebalancerQueue->setSecurity($security);
     $rebalancerQueue->setAccount($account);
     $rebalancerQueue->setAmount(100.1);
     $rebalancerQueue->setRebalancerActionId($rebalancerAction->getId());
     $rebalancerQueue->setQuantity(10);
     $rebalancerQueue->setStatus(QueueItem::STATUS_BUY);
     $rebalancerQueue->setSubclass($subclass);
     $this->repository->save($rebalancerQueue);
     $last = $this->repository->findById($this->repository->getLastInsertId());
     $this->repository->delete($last);
     $deletedLast = $this->repository->findById($last->getId());
     $this->assertNull($deletedLast);
 }
Esempio n. 3
0
 public function fakeStart($jobId)
 {
     /** @var JobRepository $jobRepo */
     $jobRepo = $this->getRepository('Job');
     /** @var Job $job */
     $job = $jobRepo->find($jobId);
     if (!$job) {
         return;
     }
     /** @var ClientRepository $clientRepo */
     $clientRepo = $this->getRepository('Client');
     /** @var RebalancerActionRepository $rebalancerActionRepo */
     $rebalancerActionRepo = $this->getRepository('RebalancerAction');
     $rebalancerActions = $rebalancerActionRepo->bindForJob($job);
     /** @var AccountRepository $accountRepo */
     $accountRepo = $this->getRepository('Account');
     /** @var LotRepository $lotRepository */
     $lotRepository = $this->getRepository('Lot');
     /** @var SecurityRepository $securityRepo */
     $securityRepo = $this->getRepository('Security');
     /** @var PortfolioRepository $portfolioRepo */
     $portfolioRepo = $this->getRepository('Portfolio');
     /** @var RebalancerQueueRepository $rebalancerQueueRepo */
     $rebalancerQueueRepo = $this->getRepository('RebalancerQueue');
     $account744888385 = $accountRepo->findOneByAccountNumber('744888385');
     $account744888386 = $accountRepo->findOneByAccountNumber('744888386');
     $securityRWX = $securityRepo->findOneBySymbol('RWX');
     $securityVTI = $securityRepo->findOneBySymbol('VTI');
     $subclassRepo = new SubclassRepository();
     /** @var RebalancerAction $rebalancerAction */
     foreach ($rebalancerActions as $rebalancerAction) {
         $rebalancerAction->setStatus($job->getRebalanceType());
         $client = $clientRepo->getClientByRebalancerAction($rebalancerAction);
         $portfolio = $portfolioRepo->findPortfolioByClient($client);
         $account744888385->setClient($client);
         $account744888386->setClient($client);
         $subclass = $subclassRepo->findByNameForPortfolio('Large Value', $portfolio);
         $queueItem = new QueueItem();
         $queueItem->setStatus(QueueItem::STATUS_SELL);
         $queueItem->setLot($lotRepository->findLastLotByAccountAndSecurity($account744888385, $securityRWX));
         $queueItem->setAccount($account744888385);
         $queueItem->setAmount(1000);
         $queueItem->setQuantity(50);
         $queueItem->setSecurity($securityRWX);
         $queueItem->setSubclass($subclass);
         $queueItem->setRebalancerActionId($rebalancerAction->getId());
         $rebalancerQueueRepo->save($queueItem);
         $queueItem = new QueueItem();
         $queueItem->setStatus(QueueItem::STATUS_BUY);
         $queueItem->setAccount($account744888386);
         $queueItem->setAmount(700);
         $queueItem->setQuantity(7);
         $queueItem->setSecurity($securityVTI);
         $queueItem->setSubclass($subclass);
         $queueItem->setRebalancerActionId($rebalancerAction->getId());
         $rebalancerQueueRepo->save($queueItem);
         $rebalancerActionRepo->saveStatus($rebalancerAction);
     }
     $jobRepo->finish($job);
 }