public function setUp()
 {
     $config = (include 'config.php');
     $this->user = new User();
     $this->user->id = 1;
     $this->user->email = $config['email'];
     $this->user->name = 'CMB Test';
     $this->imap = new \Fetch\Server($config['server_path'], $config['port']);
     $this->imap->setAuthentication($config['login'], $config['password']);
     $this->imap->setMailBox($config['mailbox']);
     $this->conn = \Doctrine\DBAL\DriverManager::getConnection(array('driver' => 'pdo_sqlite', 'user' => 'root', 'password' => 'root', 'memory' => true));
     $data_provider = new DataProviderDoctrine($this->conn);
     $purchase_service = new \shina\controlmybudget\PurchaseService($data_provider);
     $this->mail_importer = $this->makeImporter($this->imap, $purchase_service);
 }
Пример #2
0
 /**
  * This function is used to move a mail to the given mailbox.
  *
  * @param $mailbox
  *
  * @return bool
  */
 public function moveToMailBox($mailbox)
 {
     $currentBox = $this->imapConnection->getMailBox();
     $this->imapConnection->setMailBox($this->mailbox);
     $returnValue = imap_mail_copy($this->imapStream, $this->uid, $mailbox, CP_UID | CP_MOVE);
     imap_expunge($this->imapStream);
     $this->mailbox = $mailbox;
     $this->imapConnection->setMailBox($currentBox);
     return $returnValue;
 }
 public function import()
 {
     $imap = new Server($this->server, $this->port);
     $imap->setAuthentication($this->username, $this->password);
     $imap->setMailBox($this->mailbox);
     $dataProvider = new DataProvider();
     $purchaseService = new PurchaseService($dataProvider);
     $user_service = new UserService($dataProvider, new Client());
     $user = $user_service->getById($this->backend_users_id);
     $importer = new ImporterService();
     $importer->addImporter(new MailItauCardImport($imap, $purchaseService));
     $importer->addImporter(new MailItauDebitImport($imap, $purchaseService));
     $importer->addImporter(new MailItauWithdrawImport($imap, $purchaseService));
     $importer->addImporter(new MailItauUniclassDebitImport($imap, $purchaseService));
     if ($this->is_first_time) {
         $importer->import(null, $user);
         $this->is_first_time = false;
         $this->save();
     } else {
         $importer->import(10, $user);
     }
 }
Пример #4
0
 /**
  * @dataProvider dpGetServerString
  *
  * @param string $server_address
  * @param int $server_port
  * @param string $service
  * @param string $mailbox
  * @param string $expected
  */
 public function testGetServerString($server_address, $server_port, $service, $mailbox, $expected)
 {
     $server = new Server($server_address, $server_port, $service);
     $server->setMailBox($mailbox);
     $this->assertEquals($expected, $server->getServerString());
 }