* @copyright 2021 DIGITAL RETAIL TECHNOLOGIES SL * @license https://opensource.org/licenses/MIT The MIT License * * Don't forget to prefix your containers with your own identifier * to avoid any conflicts with others containers. */ class RetailcrmToolsTest extends RetailcrmTestCase { /** * @dataProvider clearAddresses */ public function testClearAddress($address, $result) { $this->assertEquals($result, RetailcrmTools::clearAddress($address)); } public function clearAddresses() { return [ [ 'Calle 66 # 11 -27, Casa || Casa', 'calle661127casacasa', ], [ 'Calle 111 # 7c 10 || 202 torre 6', 'calle1117c10202torre6', ], [ 'Bogotá, D.C. Calle 4B 20-85 || 312', 'bogotadccalle4b2085312', ], ]; } /** * @dataProvider equalCustomerAddresses */ public function testIsEqualCustomerAddress($address1, $address2, $result) { $this->assertEquals($result, RetailcrmTools::isEqualCustomerAddress($address1, $address2)); } public function equalCustomerAddresses() { return [ 'equal_addresses' => [ [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], true, ], 'changed_phone' => [ [ 'phones' => [ ['number' => '222'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], false, ], 'changed_index' => [ [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '222', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], false, ], 'reduced_address' => [ [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', ], ], false, ], 'expanded_address' => [ [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'text' => 'Address line 1 (client Address 2)', ], ], [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], false, ], 'reduced_phone' => [ [ 'phones' => [ ['number' => '111'], ['number' => '222'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], false, ], 'expanded_phone' => [ [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], [ 'phones' => [ ['number' => '222'], ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], false, ], 'replaced_field' => [ [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'text' => 'Address line 1 (client Address 2)', ], ], [ 'phones' => [ ['number' => '111'], ], 'address' => [ 'index' => '398055', 'city' => 'Order City here', 'region' => 'Region', ], ], false, ], ]; } }