Beispiel #1
0
 public function testcheckCustomFields_notRequired()
 {
     $custom_field = array('custom_field_name' => array('active' => true, 'required' => false, 'title' => 'custom_field_title'));
     $config['custom_fields'] = $custom_field;
     $di = new \Box_Di();
     $di['mod_config'] = $di->protect(function ($modName) use($config) {
         return $config;
     });
     $di['array_get'] = $di->protect(function (array $array, $key, $default = null) use($di) {
         return isset($array[$key]) ? $array[$key] : $default;
     });
     $data = array();
     $service = new \Box\Mod\Client\Service();
     $service->setDi($di);
     $result = $service->checkCustomFields($data);
     $this->assertNull($result);
 }
Beispiel #2
0
 public function testRemove()
 {
     //We have a client
     $data = array('email' => '*****@*****.**', 'first_name' => 'Client', 'password' => 'password');
     $id = $this->api_admin->client_create($data);
     $this->assertTrue($id > 1);
     //Client has license orders
     $data['client_id'] = $id;
     $data['product_id'] = 6;
     $data['period'] = '1M';
     $data['invoice_option'] = 'issue-invoice';
     $data['activate'] = 1;
     $data['config'] = array();
     $orderId = $this->api_admin->order_create($data);
     $this->assertInternalType('int', $orderId);
     //Client has invoice with items for order
     $invoiceModel = $this->di['db']->findOne('Invoice', 'client_id = ?', array($id));
     $this->assertInstanceOf('Model_Invoice', $invoiceModel);
     $invoiceItemModel = $this->di['db']->findOne('InvoiceItem', 'invoice_id = ?', array($invoiceModel->id));
     $this->assertInstanceOf('Model_InvoiceItem', $invoiceItemModel);
     //Client has amount in balance
     $bool = $this->api_admin->client_balance_add_funds(array('id' => 1, 'amount' => 100, 'description' => 'Added from PHPUnit'));
     $this->assertTrue($bool);
     //Client has activity history
     $log = $this->di['db']->dispense('ActivityClientHistory');
     $log->client_id = $id;
     $log->ip = '10.0.0.1';
     $log->created_at = date('Y-m-d H:i:s');
     $log->updated_at = date('Y-m-d H:i:s');
     $this->di['db']->store($log);
     //Client has email activity
     $entry = $this->di['db']->dispense('ActivityClientEmail');
     $entry->client_id = $id;
     $entry->created_at = date('Y-m-d H:i:s');
     $entry->updated_at = date('Y-m-d H:i:s');
     $this->di['db']->store($entry);
     //Client has system activity
     $systemEntry = $this->di['db']->dispense('ActivitySystem');
     $systemEntry->client_id = $id;
     $systemEntry->message = 'PHP UNIT TEST';
     $systemEntry->created_at = date('Y-m-d H:i:s');
     $systemEntry->updated_at = date('Y-m-d H:i:s');
     $this->di['db']->store($systemEntry);
     //Client has forum topic message
     $msg = $this->di['db']->dispense('ForumTopicMessage');
     $msg->client_id = $id;
     $msg->message = 'PHP UNIT MESSAGE';
     $msg->ip = '10.0.0.1';
     $msg->created_at = date('Y-m-d H:i:s');
     $msg->updated_at = date('Y-m-d H:i:s');
     $this->di['db']->store($msg);
     //Client has passwordReset record
     $r = $this->di['db']->dispense('ClientPasswordReset');
     $r->client_id = $id;
     $r->ip = '10.0.0.1';
     $r->hash = sha1(rand(50, rand(10, 99)));
     $r->created_at = date('Y-m-d H:i:s');
     $r->updated_at = date('Y-m-d H:i:s');
     $this->di['db']->store($r);
     $clientModel = $this->di['db']->load('Client', $id);
     $this->assertInstanceOf('Model_Client', $clientModel);
     $service = new \Box\Mod\Client\Service();
     $service->setDi($this->di);
     $service->remove($clientModel);
     //Removed items from Db
     $model = $this->di['db']->load('ClientOrder', $orderId);
     $this->assertNull($model);
     $model = $this->di['db']->load('Invoice', $invoiceModel->id);
     $this->assertNull($model);
     $model = $this->di['db']->load('InvoiceItem', $invoiceItemModel->id);
     $this->assertNull($model);
     $model = $this->di['db']->load('ActivityClientHistory', $log->id);
     $this->assertNull($model);
     $model = $this->di['db']->load('ActivityClientEmail', $entry->id);
     $this->assertNull($model);
     $model = $this->di['db']->load('ActivitySystem', $systemEntry->id);
     $this->assertNull($model);
     $model = $this->di['db']->find('ForumTopicMessage', 'client_id = ?', array($msg->client_id));
     $this->assertEmpty($model);
     $model = $this->di['db']->load('ClientPasswordReset', $r->id);
     $this->assertNull($model);
     $model = $this->di['db']->find('ClientBalance', 'client_id = ?', array($clientModel->id));
     $this->assertEmpty($model);
     $model = $this->di['db']->findOne('Client', $clientModel->id);
     $this->assertNull($model);
 }