mirror of
https://github.com/retailcrm/opencart-module.git
synced 2024-11-25 06:36:06 +03:00
update for OC 3
This commit is contained in:
parent
b921bc8c37
commit
14e6584abf
2
.gitignore
vendored
2
.gitignore
vendored
@ -6,4 +6,4 @@
|
|||||||
/vendor
|
/vendor
|
||||||
/www
|
/www
|
||||||
/bin
|
/bin
|
||||||
tests/.env
|
.env
|
||||||
|
@ -14,7 +14,7 @@ env:
|
|||||||
- OC_USERNAME=admin
|
- OC_USERNAME=admin
|
||||||
- OC_PASSWORD=admin
|
- OC_PASSWORD=admin
|
||||||
- OC_EMAIL=test@test.com
|
- OC_EMAIL=test@test.com
|
||||||
- SERVER_PORT=8000
|
- SERVER_PORT=80
|
||||||
- SERVER_URL=http://localhost
|
- SERVER_URL=http://localhost
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
|
2
Makefile
2
Makefile
@ -21,7 +21,7 @@ before_script:
|
|||||||
composer require --dev opencart/opencart $(OPENCART)
|
composer require --dev opencart/opencart $(OPENCART)
|
||||||
composer setup
|
composer setup
|
||||||
bin/robo --load-from tests/RoboFile.php project:deploy
|
bin/robo --load-from tests/RoboFile.php project:deploy
|
||||||
(php -S localhost:8000 -t www &) 2> /dev/null > /dev/null
|
(php -S localhost:80 -t www &) 2> /dev/null > /dev/null
|
||||||
sleep 2
|
sleep 2
|
||||||
|
|
||||||
coverage:
|
coverage:
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
</testsuites>
|
</testsuites>
|
||||||
<php>
|
<php>
|
||||||
<env name="OC_ROOT" value="./www/" />
|
<env name="OC_ROOT" value="./www/" />
|
||||||
<env name="HTTP_SERVER" value="http://localhost:8000/" />
|
<env name="HTTP_SERVER" value="http://localhost:80/" />
|
||||||
<env name="TEST_CONFIG" value="test-config" />
|
<env name="TEST_CONFIG" value="test-config" />
|
||||||
</php>
|
</php>
|
||||||
<filter>
|
<filter>
|
||||||
|
@ -469,7 +469,6 @@ class ControllerExtensionModuleRetailcrm extends Controller
|
|||||||
$this->response->setOutput(
|
$this->response->setOutput(
|
||||||
$this->load->view('extension/module/retailcrm', $_data)
|
$this->load->view('extension/module/retailcrm', $_data)
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1,9 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
require_once(__DIR__.'/../vendor/autoload.php');
|
require_once(__DIR__.'/../vendor/autoload.php');
|
||||||
if (file_exists(__DIR__ . '/.env')) {
|
|
||||||
Dotenv::load(__DIR__);
|
|
||||||
}
|
|
||||||
|
|
||||||
class RoboFile extends \Robo\Tasks
|
class RoboFile extends \Robo\Tasks
|
||||||
{
|
{
|
||||||
@ -96,6 +93,13 @@ class RoboFile extends \Robo\Tasks
|
|||||||
->chmod($this->root_dir . 'www', 0777, 0000, true)
|
->chmod($this->root_dir . 'www', 0777, 0000, true)
|
||||||
->run();
|
->run();
|
||||||
|
|
||||||
|
if (getenv('TEST_SUITE') === '3.0') {
|
||||||
|
$this->taskFileSystemStack()->copy(
|
||||||
|
$this->root_dir . 'vendor/beyondit/opencart-test-suite/src/upload/system/library/session/test.php',
|
||||||
|
$this->root_dir . 'www/system/library/session/test.php'
|
||||||
|
)->run();
|
||||||
|
}
|
||||||
|
|
||||||
// Create new database, drop if exists already
|
// Create new database, drop if exists already
|
||||||
try {
|
try {
|
||||||
$conn = new PDO("mysql:host=".$this->opencart_config['db_hostname'], $this->opencart_config['db_username'], $this->opencart_config['db_password']);
|
$conn = new PDO("mysql:host=".$this->opencart_config['db_hostname'], $this->opencart_config['db_username'], $this->opencart_config['db_password']);
|
||||||
@ -175,7 +179,11 @@ class RoboFile extends \Robo\Tasks
|
|||||||
|
|
||||||
private function restoreSampleData($conn)
|
private function restoreSampleData($conn)
|
||||||
{
|
{
|
||||||
|
if (getenv('TEST_SUITE') === '2.3') {
|
||||||
$sql = file_get_contents($this->root_dir . 'tests/opencart_sample_data.sql');
|
$sql = file_get_contents($this->root_dir . 'tests/opencart_sample_data.sql');
|
||||||
|
} else {
|
||||||
|
$sql = file_get_contents($this->root_dir . 'tests/opencart_sample_data_3.sql');
|
||||||
|
}
|
||||||
|
|
||||||
$conn->exec("USE " . $this->opencart_config['db_database']);
|
$conn->exec("USE " . $this->opencart_config['db_database']);
|
||||||
|
|
||||||
|
@ -8,10 +8,12 @@ class ControllerRetailcrmAdminTest extends TestCase
|
|||||||
|
|
||||||
public function setUp()
|
public function setUp()
|
||||||
{
|
{
|
||||||
|
parent::setUp();
|
||||||
|
|
||||||
$query = $this->db->query("SELECT permission from ".DB_PREFIX."user_group WHERE name = 'Administrator'");
|
$query = $this->db->query("SELECT permission from ".DB_PREFIX."user_group WHERE name = 'Administrator'");
|
||||||
$permissions = json_decode($query->row['permission'],true);
|
$permissions = json_decode($query->row['permission'],true);
|
||||||
|
|
||||||
if (!in_array('extension/module/retailcrm',$permissions['access'])) {
|
if (!in_array('extension/module/retailcrm', $permissions['access'])) {
|
||||||
$permissions['access'][] = 'extension/module/retailcrm';
|
$permissions['access'][] = 'extension/module/retailcrm';
|
||||||
$this->db->query("UPDATE ".DB_PREFIX."user_group SET permission='".$this->db->escape(json_encode($permissions))."' WHERE name = 'Administrator'");
|
$this->db->query("UPDATE ".DB_PREFIX."user_group SET permission='".$this->db->escape(json_encode($permissions))."' WHERE name = 'Administrator'");
|
||||||
}
|
}
|
||||||
@ -56,4 +58,8 @@ class ControllerRetailcrmAdminTest extends TestCase
|
|||||||
|
|
||||||
$this->assertRegExp('/Connection settings/', $response->getOutput());
|
$this->assertRegExp('/Connection settings/', $response->getOutput());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function tearDown()
|
||||||
|
{
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -10,7 +10,12 @@ class ModelRetailcrmEventAdminTest extends TestCase
|
|||||||
{
|
{
|
||||||
parent::setUp();
|
parent::setUp();
|
||||||
|
|
||||||
|
if (getenv('TEST_SUITE') === '3.0') {
|
||||||
|
$eventModel = $this->loadModel('setting/event');
|
||||||
|
} else {
|
||||||
$eventModel = $this->loadModel('extension/event');
|
$eventModel = $this->loadModel('extension/event');
|
||||||
|
}
|
||||||
|
|
||||||
$eventModel->addEvent(self::CODE, 'test', 'test');
|
$eventModel->addEvent(self::CODE, 'test', 'test');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ class ControllerRetailcrmApiCatalogTest extends TestCase
|
|||||||
private $retailcrm;
|
private $retailcrm;
|
||||||
|
|
||||||
const ORDER_ID = 1;
|
const ORDER_ID = 1;
|
||||||
|
const USERNAME = 'Default';
|
||||||
|
|
||||||
public function setUp()
|
public function setUp()
|
||||||
{
|
{
|
||||||
@ -25,8 +26,9 @@ class ControllerRetailcrmApiCatalogTest extends TestCase
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (isset($this->request->get['key'])) {
|
if (isset($this->request->get['key']) && isset($this->request->get['username'])) {
|
||||||
unset($this->request->get['key']);
|
unset($this->request->get['key']);
|
||||||
|
unset($this->request->get['username']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -38,6 +40,7 @@ class ControllerRetailcrmApiCatalogTest extends TestCase
|
|||||||
$this->assertEquals('Not found api key', $data->error);
|
$this->assertEquals('Not found api key', $data->error);
|
||||||
|
|
||||||
$this->request->get['key'] = $this->apiKey;
|
$this->request->get['key'] = $this->apiKey;
|
||||||
|
$this->request->get['username'] = static::USERNAME;
|
||||||
$response = $this->dispatchAction('api/retailcrm/getDeliveryTypes');
|
$response = $this->dispatchAction('api/retailcrm/getDeliveryTypes');
|
||||||
$data = json_decode($response->getOutput());
|
$data = json_decode($response->getOutput());
|
||||||
|
|
||||||
@ -52,6 +55,7 @@ class ControllerRetailcrmApiCatalogTest extends TestCase
|
|||||||
$this->assertEquals('Not found api key', $data->error);
|
$this->assertEquals('Not found api key', $data->error);
|
||||||
|
|
||||||
$this->request->get['key'] = $this->apiKey;
|
$this->request->get['key'] = $this->apiKey;
|
||||||
|
$this->request->get['username'] = static::USERNAME;
|
||||||
$response = $this->dispatchAction('api/retailcrm/addOrderHistory');
|
$response = $this->dispatchAction('api/retailcrm/addOrderHistory');
|
||||||
$data = json_decode($response->getOutput());
|
$data = json_decode($response->getOutput());
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
TRUNCATE TABLE `oc_customer`;
|
TRUNCATE TABLE `oc_customer`;
|
||||||
INSERT INTO `oc_customer` (`customer_id`, `customer_group_id`, `store_id`, `language_id`, `firstname`, `lastname`, `email`, `telephone`, `fax`, `password`, `salt`, `cart`, `wishlist`, `newsletter`, `address_id`, `custom_field`, `ip`, `status`, `safe`, `token`, `code`, `date_added`) VALUES ('1', '1', '0', '1', 'Test', 'Test', 'test@mail.ru', '+7 (000) 000-00-00', '', 'ed3798da75d6cdd695e99e87a60d587a10aa95ff', '51TalnrgH', '', '', '0', '1', '', '172.21.0.1', '1', '0', '', '', '2018-06-07 13:50:08');
|
INSERT INTO `oc_customer` (`customer_id`, `customer_group_id`, `store_id`, `language_id`, `firstname`, `lastname`, `email`, `telephone`, `fax`, `password`, `salt`, `cart`, `wishlist`, `newsletter`, `address_id`, `custom_field`, `ip`, `status`, `approved`, `safe`, `token`, `code`, `date_added`) VALUES ('1', '1', '0', '1', 'Test', 'Test', 'test@mail.ru', '+7 (000) 000-00-00', '', 'ed3798da75d6cdd695e99e87a60d587a10aa95ff', '51TalnrgH', '', '', '0', '1', '', '172.21.0.1', '1', '1', '0', '', '', '2018-06-07 13:50:08');
|
||||||
|
|
||||||
TRUNCATE TABLE `oc_customer_activity`;
|
TRUNCATE TABLE `oc_customer_activity`;
|
||||||
TRUNCATE TABLE `oc_customer_group`;
|
TRUNCATE TABLE `oc_customer_group`;
|
||||||
|
55
tests/opencart_sample_data_3.sql
Normal file
55
tests/opencart_sample_data_3.sql
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
TRUNCATE TABLE `oc_customer`;
|
||||||
|
INSERT INTO `oc_customer` (`customer_id`, `customer_group_id`, `store_id`, `language_id`, `firstname`, `lastname`, `email`, `telephone`, `fax`, `password`, `salt`, `cart`, `wishlist`, `newsletter`, `address_id`, `custom_field`, `ip`, `status`, `safe`, `token`, `code`, `date_added`) VALUES ('1', '1', '0', '1', 'Test', 'Test', 'test@mail.ru', '+7 (000) 000-00-00', '', 'ed3798da75d6cdd695e99e87a60d587a10aa95ff', '51TalnrgH', '', '', '0', '1', '', '172.21.0.1', '1', '0', '', '', '2018-06-07 13:50:08');
|
||||||
|
|
||||||
|
TRUNCATE TABLE `oc_customer_activity`;
|
||||||
|
TRUNCATE TABLE `oc_customer_group`;
|
||||||
|
INSERT INTO `oc_customer_group` (`customer_group_id`, `approval`, `sort_order`) VALUES ('1', '0', '1');
|
||||||
|
INSERT INTO `oc_customer_group` (`customer_group_id`, `approval`, `sort_order`) VALUES ('2', '0', '1');
|
||||||
|
INSERT INTO `oc_customer_group` (`customer_group_id`, `approval`, `sort_order`) VALUES ('3', '0', '0');
|
||||||
|
|
||||||
|
TRUNCATE TABLE `oc_customer_group_description`;
|
||||||
|
INSERT INTO `oc_customer_group_description` (`customer_group_id`, `language_id`, `name`, `description`) VALUES ('1', '1', 'Default', 'test');
|
||||||
|
INSERT INTO `oc_customer_group_description` (`customer_group_id`, `language_id`, `name`, `description`) VALUES ('2', '1', 'Test2', 'test2');
|
||||||
|
INSERT INTO `oc_customer_group_description` (`customer_group_id`, `language_id`, `name`, `description`) VALUES ('3', '1', 'test3', 'test3');
|
||||||
|
|
||||||
|
TRUNCATE TABLE `oc_customer_history`;
|
||||||
|
TRUNCATE TABLE `oc_customer_ip`;
|
||||||
|
INSERT INTO `oc_customer_ip` (`customer_ip_id`, `customer_id`, `ip`, `date_added`) VALUES ('4', '1', '172.21.0.1', '2018-06-07 13:50:29');
|
||||||
|
|
||||||
|
TRUNCATE TABLE `oc_customer_login`;
|
||||||
|
TRUNCATE TABLE `oc_customer_online`;
|
||||||
|
TRUNCATE TABLE `oc_customer_reward`;
|
||||||
|
TRUNCATE TABLE `oc_customer_search`;
|
||||||
|
TRUNCATE TABLE `oc_customer_transaction`;
|
||||||
|
TRUNCATE TABLE `oc_customer_wishlist`;
|
||||||
|
TRUNCATE TABLE `oc_order`;
|
||||||
|
|
||||||
|
INSERT INTO `oc_order` (`order_id`, `invoice_no`, `invoice_prefix`, `store_id`, `store_name`, `store_url`, `customer_id`, `customer_group_id`, `firstname`, `lastname`, `email`, `telephone`, `fax`, `custom_field`, `payment_firstname`, `payment_lastname`, `payment_company`, `payment_address_1`, `payment_address_2`, `payment_city`, `payment_postcode`, `payment_country`, `payment_country_id`, `payment_zone`, `payment_zone_id`, `payment_address_format`, `payment_custom_field`, `payment_method`, `payment_code`, `shipping_firstname`, `shipping_lastname`, `shipping_company`, `shipping_address_1`, `shipping_address_2`, `shipping_city`, `shipping_postcode`, `shipping_country`, `shipping_country_id`, `shipping_zone`, `shipping_zone_id`, `shipping_address_format`, `shipping_custom_field`, `shipping_method`, `shipping_code`, `comment`, `total`, `order_status_id`, `affiliate_id`, `commission`, `marketing_id`, `tracking`, `language_id`, `currency_id`, `currency_code`, `currency_value`, `ip`, `forwarded_ip`, `user_agent`, `accept_language`, `date_added`, `date_modified`) VALUES ('1', '0', 'INV-2016-00', '0', 'Opencart', 'http://localhost:8000/', '1', '1', 'Test', 'Test', 'test@mail.ru', '+7 (000) 000-00-00', '', '', 'Test', 'Test', '', 'Address', 'Address 2', 'Test', '111111', 'Russian Federation', '176', 'Rostov-na-Donu', '99', '', '[]', 'Cash on delivery', 'cod', 'Test', 'Test', '', 'Address', 'Address 2', 'Test', '111111', 'Russian Federation', '176', 'Rostov-na-Donu', '99', '', '[]', 'Flat Rate', 'flat.flat', 'test comment', '106.0000', '1', '0', '0.0000', '0', '', '1', '1', 'USD', '1.00000000', '172.21.0.1', '', 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36', 'ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7', '2018-06-07 13:51:10', '2018-06-07 13:51:23');
|
||||||
|
INSERT INTO `oc_order` (`order_id`, `invoice_no`, `invoice_prefix`, `store_id`, `store_name`, `store_url`, `customer_id`, `customer_group_id`, `firstname`, `lastname`, `email`, `telephone`, `fax`, `custom_field`, `payment_firstname`, `payment_lastname`, `payment_company`, `payment_address_1`, `payment_address_2`, `payment_city`, `payment_postcode`, `payment_country`, `payment_country_id`, `payment_zone`, `payment_zone_id`, `payment_address_format`, `payment_custom_field`, `payment_method`, `payment_code`, `shipping_firstname`, `shipping_lastname`, `shipping_company`, `shipping_address_1`, `shipping_address_2`, `shipping_city`, `shipping_postcode`, `shipping_country`, `shipping_country_id`, `shipping_zone`, `shipping_zone_id`, `shipping_address_format`, `shipping_custom_field`, `shipping_method`, `shipping_code`, `comment`, `total`, `order_status_id`, `affiliate_id`, `commission`, `marketing_id`, `tracking`, `language_id`, `currency_id`, `currency_code`, `currency_value`, `ip`, `forwarded_ip`, `user_agent`, `accept_language`, `date_added`, `date_modified`) VALUES ('2', '0', 'INV-2016-00', '0', 'Opencart', 'http://localhost:8000/', '0', '1', 'Test', 'Test', 'test@mail.ru', '+7 (000) 000-00-00', '', '[]', 'Test', 'Test', '', 'Address', 'Address 2', 'Test', '111111', 'Russian Federation', '176', 'Rostov-na-Donu', '99', '', '[]', 'Cash on delivery', 'cod', 'Test', 'Test', '', 'Address', 'Address 2', 'Test', '111111', 'Russian Federation', '176', 'Rostov-na-Donu', '99', '', '[]', 'Flat Rate', 'flat.flat', 'test comment', '85.0000', '1', '0', '0.0000', '0', '', '1', '1', 'USD', '1.00000000', '172.21.0.1', '', 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36', 'ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7', '2018-06-07 13:53:50', '2018-06-07 13:54:00');
|
||||||
|
|
||||||
|
TRUNCATE TABLE `oc_order_history`;
|
||||||
|
INSERT INTO `oc_order_history` (`order_history_id`, `order_id`, `order_status_id`, `notify`, `comment`, `date_added`) VALUES ('19', '2', '1', '0', '', '2018-06-07 13:54:00');
|
||||||
|
INSERT INTO `oc_order_history` (`order_history_id`, `order_id`, `order_status_id`, `notify`, `comment`, `date_added`) VALUES ('18', '1', '1', '0', '', '2018-06-07 13:51:23');
|
||||||
|
|
||||||
|
TRUNCATE TABLE `oc_order_option`;
|
||||||
|
|
||||||
|
INSERT INTO `oc_order_option` (`order_option_id`, `order_id`, `order_product_id`, `product_option_id`, `product_option_value_id`, `name`, `value`, `type`) VALUES ('15', '2', '55', '226', '15', 'Select', 'Red', 'select');
|
||||||
|
|
||||||
|
TRUNCATE TABLE `oc_order_product`;
|
||||||
|
INSERT INTO `oc_order_product` (`order_product_id`, `order_id`, `product_id`, `name`, `model`, `quantity`, `price`, `total`, `tax`, `reward`) VALUES ('54', '1', '40', 'iPhone', 'product 11', '1', '101.0000', '101.0000', '18.0000', '20');
|
||||||
|
INSERT INTO `oc_order_product` (`order_product_id`, `order_id`, `product_id`, `name`, `model`, `quantity`, `price`, `total`, `tax`, `reward`) VALUES ('55', '2', '30', 'Canon EOS 5D', 'Product 3', '1', '80.0000', '80.0000', '18.0000', '200');
|
||||||
|
|
||||||
|
TRUNCATE TABLE `oc_order_recurring`;
|
||||||
|
TRUNCATE TABLE `oc_order_recurring_transaction`;
|
||||||
|
TRUNCATE TABLE `oc_order_total`;
|
||||||
|
|
||||||
|
INSERT INTO `oc_order_total` (`order_total_id`, `order_id`, `code`, `title`, `value`, `sort_order`) VALUES ('162', '1', 'shipping', 'Flat Rate', '5.0000', '3');
|
||||||
|
INSERT INTO `oc_order_total` (`order_total_id`, `order_id`, `code`, `title`, `value`, `sort_order`) VALUES ('161', '1', 'sub_total', 'Sub-Total', '101.0000', '1');
|
||||||
|
INSERT INTO `oc_order_total` (`order_total_id`, `order_id`, `code`, `title`, `value`, `sort_order`) VALUES ('164', '2', 'sub_total', 'Sub-Total', '80.0000', '1');
|
||||||
|
INSERT INTO `oc_order_total` (`order_total_id`, `order_id`, `code`, `title`, `value`, `sort_order`) VALUES ('165', '2', 'shipping', 'Flat Rate', '5.0000', '3');
|
||||||
|
INSERT INTO `oc_order_total` (`order_total_id`, `order_id`, `code`, `title`, `value`, `sort_order`) VALUES ('163', '1', 'total', 'Total', '106.0000', '9');
|
||||||
|
INSERT INTO `oc_order_total` (`order_total_id`, `order_id`, `code`, `title`, `value`, `sort_order`) VALUES ('166', '2', 'total', 'Total', '85.0000', '9');
|
||||||
|
INSERT INTO `oc_product_special` (`product_id`, `customer_group_id`, `priority`, `price`,`date_start`, `date_end`) values ('42', '2', '1', '110.000', CURDATE(), ADDDATE(CURDATE(),INTERVAL 10 DAY));
|
||||||
|
INSERT INTO `oc_product_special` (`product_id`, `customer_group_id`, `priority`, `price`,`date_start`, `date_end`) values ('40', '1', '1', '50.000', CURDATE(), ADDDATE(CURDATE(),INTERVAL 10 DAY));
|
||||||
|
|
||||||
|
TRUNCATE TABLE `oc_order_voucher`;
|
Loading…
Reference in New Issue
Block a user