mirror of
https://github.com/FOSSBilling/FOSSBilling.git
synced 2026-11-09 13:36:07 +09:00
194 lines
5.8 KiB
PHP
194 lines
5.8 KiB
PHP
<?php
|
|
/**
|
|
* @group Core
|
|
*/
|
|
class Api_Guest_ClientTest extends BBDbApiTestCase
|
|
{
|
|
protected $_initialSeedFile = 'initial.xml';
|
|
|
|
public function testCreate()
|
|
{
|
|
$this->api_admin->extension_config_save(array(
|
|
'ext' => 'mod_client',
|
|
'required' => array(),
|
|
));
|
|
|
|
$e = rand(5, 56666).'@gmail.com';
|
|
$pass = 'testA1sssss';
|
|
|
|
$data = array(
|
|
'aid' => '2',
|
|
'email' => $e,
|
|
'first_name' => 'John',
|
|
'last_name' => 'Doe',
|
|
'address_1' => 'Palo Alto',
|
|
'country' => 'USA',
|
|
'company_vat' => 'LS-2qwddwqdsd12',
|
|
'city' => 'California',
|
|
'tel_cc' => '211',
|
|
'phone' => '11212156485451',
|
|
'password' => $pass,
|
|
'password_confirm' => $pass,
|
|
);
|
|
$id = $this->api_guest->client_create($data);
|
|
$this->assertInternalType('int', $id);
|
|
$client = $this->di['db']->load('Client', $id);
|
|
|
|
$this->assertNotEquals($data['password'], $client->pass);
|
|
$this->assertTrue($this->di['password']->verify($data['password'], $client->pass));
|
|
}
|
|
|
|
/**
|
|
* @expectedException \Box_Exception
|
|
*/
|
|
public function testRequiredFields()
|
|
{
|
|
$this->api_admin->extension_config_save(array(
|
|
'ext' => 'mod_client',
|
|
'required' => array(
|
|
'last_name'
|
|
),
|
|
));
|
|
|
|
$pass = 'testA222sssww';
|
|
$data = array(
|
|
'email' => 'test@example.com',
|
|
'first_name' => 'John',
|
|
'password' => $pass,
|
|
'password_confirm' => $pass,
|
|
);
|
|
$id = $this->api_guest->client_create($data);
|
|
}
|
|
|
|
public function testPasswordReset()
|
|
{
|
|
$data = array(
|
|
'email' => 'client@boxbilling.com',
|
|
);
|
|
$bool = $this->api_guest->client_reset_password($data);
|
|
$this->assertTrue($bool);
|
|
|
|
$data = array(
|
|
'hash' => 'hash',
|
|
);
|
|
$bool = $this->api_guest->client_confirm_reset($data);
|
|
$this->assertTrue($bool);
|
|
}
|
|
|
|
public function testVat()
|
|
{
|
|
$data = array(
|
|
'country' => 'GB',
|
|
'vat' => 'GB999 9999 73',
|
|
);
|
|
$bool = $this->api_guest->client_is_vat($data);
|
|
//$this->assertTrue($bool);
|
|
}
|
|
|
|
public function testClientLogin()
|
|
{
|
|
$data = array(
|
|
'email' => 'client@boxbilling.com',
|
|
'password' => 'demo',
|
|
'remember' => true
|
|
);
|
|
$array = $this->api_guest->client_login($data);
|
|
$this->assertInternalType('array', $array);
|
|
$this->assertTrue(is_numeric($this->session->get('client_id')), 'Client id is not integer');
|
|
|
|
$bool = $this->api_client->client_logout($data);
|
|
$this->assertNull($this->session->get('client_id'));
|
|
|
|
$this->assertTrue($bool);
|
|
$this->assertNull($this->session->get('admin'));
|
|
}
|
|
|
|
public function testRequired()
|
|
{
|
|
$array = $this->api_guest->client_required();
|
|
$this->assertInternalType('array', $array);
|
|
}
|
|
|
|
public function testCreateWithCustom()
|
|
{
|
|
$this->api_admin->extension_config_save(array(
|
|
'ext' => 'mod_client',
|
|
'required' => array(
|
|
'last_name'
|
|
),
|
|
'custom_fields' => array(
|
|
'custom_5' => array(
|
|
'active' => true,
|
|
'required' => true,
|
|
'title' => 'Your username'
|
|
)
|
|
)
|
|
));
|
|
|
|
|
|
$e = rand(5, 56666) . '@gmail.com';
|
|
$pass = 'testA1sssss';
|
|
|
|
$data = array(
|
|
'aid' => '2',
|
|
'email' => $e,
|
|
'first_name' => 'John',
|
|
'last_name' => 'Doe',
|
|
'address_1' => 'Palo Alto',
|
|
'country' => 'USA',
|
|
'company_vat' => 'LS-2qwddwqdsd12',
|
|
'city' => 'California',
|
|
'tel_cc' => '211',
|
|
'phone' => '11212156485451',
|
|
'password' => $pass,
|
|
'password_confirm' => $pass,
|
|
'custom_5' => 'JohnUsername'
|
|
|
|
);
|
|
$id = $this->api_guest->client_create($data);
|
|
$this->assertInternalType('int', $id);
|
|
$client = $this->di['db']->load('Client', $id);
|
|
|
|
$this->assertEquals($data['custom_5'], $client->custom_5);
|
|
}
|
|
|
|
/**
|
|
* @expectedException \Box_Exception
|
|
*/
|
|
public function testCreateWithCustomRequiredException()
|
|
{
|
|
$this->api_admin->extension_config_save(array(
|
|
'ext' => 'mod_client',
|
|
'required' => array(
|
|
'last_name'
|
|
),
|
|
'custom_fields' => array(
|
|
'custom_5' => array(
|
|
'active' => true,
|
|
'required' => true,
|
|
'title' => 'Your username'
|
|
)
|
|
)
|
|
));
|
|
|
|
$e = rand(5, 56666) . '@gmail.com';
|
|
$pass = 'testA1sssss';
|
|
|
|
$data = array(
|
|
'aid' => '2',
|
|
'email' => $e,
|
|
'first_name' => 'John',
|
|
'last_name' => 'Doe',
|
|
'address_1' => 'Palo Alto',
|
|
'country' => 'USA',
|
|
'company_vat' => 'LS-2qwddwqdsd12',
|
|
'city' => 'California',
|
|
'tel_cc' => '211',
|
|
'phone' => '11212156485451',
|
|
'password' => $pass,
|
|
'password_confirm' => $pass,
|
|
|
|
);
|
|
$id = $this->api_guest->client_create($data);
|
|
}
|
|
} |