object=new Acc_Account_Ledger($g_connection, 400); } /** * Tears down the fixture, for example, closes a network connection. * This method is called after a test is executed. */ protected function tearDown() { } /** * @covers Acc_Account_Ledger::get_row */ public function testGet_row() { $array=$this->object->get_row(92, 103); $this->assertEquals(count($array), 3); } /** * @covers Acc_Account_Ledger::get_row_date */ public function testGet_row_date() { global $g_user, $g_connection; $accounting=new Acc_Account_Ledger($g_connection, '4511'); $a_array=$accounting->get_row_date('01.01.2018', '31.12.2018', 0); $expected=array( 0=> array( 0=> array( 'j_id'=>'820', 'jr_id'=>'317', 'j_date_fmt'=>'01.01.2018', 'j_date'=>'2018-01-01', 'j_qcode'=>NULL, 'deb_montant'=>'0', 'cred_montant'=>'8.4000', 'description'=>'Ecriture d\'ouverture 2018 TVA à payer 21%', 'jrn_name'=>'Opération Diverses', 'j_debit'=>'f', 'jr_internal'=>'O000172', 'jr_pj_number'=>'ODS44', 'letter'=>NULL, 'pcm_lib'=>'TVA à payer 21%', 'jr_optype'=>'OPE', 'jr_tech_per'=>'92', 'p_exercice'=>'2018', 'jrn_def_name'=>'Opération Diverses', 'jrn_def_code'=>'O01', 'delta_letter'=>NULL, 'currency_rate' => '1.000000', 'currency_rate_ref' => '1.000000', 'currency_id' => '0', 'cr_code_iso' => 'EUR', 'j_montant' => '8.4000', 'oc_amount' => null, 'oc_vat_amount' => null ), 1=> array( 'j_id'=>'6', 'jr_id'=>'2', 'j_date_fmt'=>'24.02.2018', 'j_date'=>'2018-02-24', 'j_qcode'=>NULL, 'deb_montant'=>'0', 'cred_montant'=>'8.4000', 'description'=>'Déplacement', 'jrn_name'=>'Vente', 'j_debit'=>'f', 'jr_internal'=>'V000002', 'jr_pj_number'=>'VEN2', 'letter'=>NULL, 'pcm_lib'=>'TVA à payer 21%', 'jr_optype'=>'NOR', 'jr_tech_per'=>'93', 'p_exercice'=>'2018', 'jrn_def_name'=>'Vente', 'jrn_def_code'=>'V01', 'delta_letter'=>NULL, 'currency_rate' => '1.000000' ,'currency_rate_ref' => '1.000000' ,'currency_id' => '0' ,'cr_code_iso' => 'EUR' ,'j_montant' => '8.4000' ,'oc_amount' => null ,'oc_vat_amount' => null ), 2=> array( 'j_id'=>'9', 'jr_id'=>'3', 'j_date_fmt'=>'24.02.2018', 'j_date'=>'2018-02-24', 'j_qcode'=>NULL, 'deb_montant'=>'0', 'cred_montant'=>'5.2900', 'description'=>'Vente de marchandises', 'jrn_name'=>'Vente', 'j_debit'=>'f', 'jr_internal'=>'V000003', 'jr_pj_number'=>'VEN3', 'letter'=>NULL, 'pcm_lib'=>'TVA à payer 21%', 'jr_optype'=>'NOR', 'jr_tech_per'=>'93', 'p_exercice'=>'2018', 'jrn_def_name'=>'Vente', 'jrn_def_code'=>'V01', 'delta_letter'=>NULL, 'currency_rate' => '1.000000' ,'currency_rate_ref' => '1.000000' ,'currency_id' => '0' ,'cr_code_iso' => 'EUR' ,'j_montant' => '5.2900' ,'oc_amount' => null ,'oc_vat_amount' => null ), 3=> array( 'j_id'=>'13', 'jr_id'=>'4', 'j_date_fmt'=>'24.02.2018', 'j_date'=>'2018-02-24', 'j_qcode'=>NULL, 'deb_montant'=>'0', 'cred_montant'=>'35.7400', 'description'=>'Vente de marchandises', 'jrn_name'=>'Vente', 'j_debit'=>'f', 'jr_internal'=>'V000004', 'jr_pj_number'=>'VEN4', 'letter'=>NULL, 'pcm_lib'=>'TVA à payer 21%', 'jr_optype'=>'NOR', 'jr_tech_per'=>'93', 'p_exercice'=>'2018', 'jrn_def_name'=>'Vente', 'jrn_def_code'=>'V01', 'delta_letter'=>NULL, 'currency_rate' => '1.000000', 'currency_rate_ref' => '1.000000', 'currency_id' => '0', 'cr_code_iso' => 'EUR', 'j_montant' => '35.7400', 'oc_amount' => null, 'oc_vat_amount' => null ), 4=> array( 'j_id'=>'17', 'jr_id'=>'5', 'j_date_fmt'=>'24.04.2018', 'j_date'=>'2018-04-24', 'j_qcode'=>NULL, 'deb_montant'=>'0', 'cred_montant'=>'35.7400', 'description'=>'Marchandise et Déplacement', 'jrn_name'=>'Vente', 'j_debit'=>'f', 'jr_internal'=>'V000005', 'jr_pj_number'=>'VEN5', 'letter'=>NULL, 'pcm_lib'=>'TVA à payer 21%', 'jr_optype'=>'NOR', 'jr_tech_per'=>'95', 'p_exercice'=>'2018', 'jrn_def_name'=>'Vente', 'jrn_def_code'=>'V01', 'delta_letter'=>NULL, 'currency_rate' => '1.000000', 'currency_rate_ref' => '1.000000', 'currency_id' => '0', 'cr_code_iso' => 'EUR', 'j_montant' => '35.7400', 'oc_amount' => null, 'oc_vat_amount' => null ), 5=> array( 'j_id'=>'818', 'jr_id'=>'316', 'j_date_fmt'=>'12.09.2018', 'j_date'=>'2018-09-12', 'j_qcode'=>NULL, 'deb_montant'=>'0', 'cred_montant'=>'21.0000', 'description'=>'Vente en OD TVA à payer 21%', 'jrn_name'=>'Opération Diverses', 'j_debit'=>'f', 'jr_internal'=>'O000171', 'jr_pj_number'=>'ODS43', 'letter'=>NULL, 'pcm_lib'=>'TVA à payer 21%', 'jr_optype'=>'NOR', 'jr_tech_per'=>'100', 'p_exercice'=>'2018', 'jrn_def_name'=>'Opération Diverses', 'jrn_def_code'=>'O01', 'delta_letter'=>NULL, 'currency_rate' => '1.000000', 'currency_rate_ref' => '1.000000', 'currency_id' => '0', 'cr_code_iso' => 'EUR', 'j_montant' => '21.0000', 'oc_amount' => null, 'oc_vat_amount' => null ), ), 1=>'0', 2=>'114.5700', ); $this->assertEquals($expected, $a_array); } function dataGet_Name() { return array( array('10', 'Capital '), array('01', 'Poste inconnu') ); } /** * @covers Acc_Account_Ledger::get_name * @dataProvider dataGet_Name */ public function testGet_name($id, $result) { $this->object->id=$id; $this->assertEquals($this->object->get_name(), $result); } /** * @covers Acc_Account_Ledger::do_exist * @dataProvider dataDo_exist */ public function testDo_exist($p_value, $result) { $this->object->id=$p_value; $this->assertEquals($this->object->do_exist(), $result); } function dataDo_exist() { return array( array('400', 1), array('400A', 0), array('550', 1), array('60BXX', 0) ); } /** * @covers Acc_Account_Ledger::load */ public function testLoad() { $this->object->load(); $this->assertTrue($this->object->id==400, "test load"); } /** * @covers Acc_Account_Ledger::get_solde */ public function testGet_solde() { global $g_connection; $accounting=new Acc_Account_Ledger($g_connection, '4511'); $this->assertEquals(1397.87,$accounting->get_solde(),"get_solde"); } /** * @covers Acc_Account_Ledger::get_solde_detail */ public function testGet_solde_detail() { global $g_connection; $accounting=new Acc_Account_Ledger($g_connection, '4511'); $expected=array ( 'debit' => '0', 'credit' => '1397.8700', 'solde' => 1397.87, ); $this->assertEquals($accounting->get_solde_detail(),$expected); } /** * @covers Acc_Account_Ledger::isTVA */ public function testIsTVA() { $this->object->id="4111"; $this->assertEquals($this->object->isTVA(), 1); $this->object->id=10; $this->assertEquals($this->object->isTVA(), 0); } /** * @covers Acc_Account_Ledger::HtmlTable */ public function testHtmlTable() { $this->assertTrue(true, 'Ne peut être testé car vue HTML'); } public function dataGet_amount_side() { return array( array(0, "="), array(1000, 'D'), array(-1000, 'C'), ); } /** * @covers Acc_Account_Ledger::get_amount_side * @dataProvider dataGet_amount_side */ public function testGet_amount_side($amount, $result) { $this->assertEquals($this->object->get_amount_side($amount), $result); } /** * @covers Acc_Account_Ledger::belong_ledger * @dataProvider DataBelong_ledger */ public function testBelong_ledger($p_jrn, $result) { $this->assertEquals($this->object->belong_ledger($p_jrn), $result); } function DataBelong_ledger() { return array( array(-1, 0), array(1, -1), array(3, 0), array(2, -1), array(4, 0) ); } public function dataGet_account_ledger() { return array( array(0, array()), array(1, array('5*', '')), array(2, array('4*')), array(3, array('6*')) ); } /** * @covers Acc_Account_Ledger::get_account_ledger * @dataProvider dataGet_account_ledger */ public function testGet_account_ledger($p_jrn, $result) { $this->assertEquals($this->object->get_account_ledger($p_jrn), $result); } /** * @covers Acc_Account_Ledger::build_sql_account * @dataProvider DataBuild_Sql_account */ public function testBuild_sql_account($p_jrn, $result) { $value=$this->object->build_sql_account($p_jrn); $this->assertEquals(trim($value), $result); } public function DataBuild_Sql_account() { return array( array(0, ""), array(1, "pcm_val::text like '5%'"), array(2, "pcm_val::text like '4%'"), array(3, "pcm_val::text like '6%'"), array(4, "") ); } function dataFind_Card() { return array( array('6191', '27'), array('6192', '28'), array('4400004', '25') ); } /** * @covers Acc_Account_Ledger::find_card * @todo Implement testFind_card(). * @dataProvider dataFind_Card() */ public function testFind_card($p_value, $p_card) { $this->object->id=$p_value; $result=$this->object->find_card(); $this->assertEquals($p_card, $result[0]['f_id']); } }