diff options
author | Wes Baker <wes@wesbaker.com> | 2012-05-07 22:49:33 +0200 |
---|---|---|
committer | Wes Baker <wes@wesbaker.com> | 2012-05-07 22:49:33 +0200 |
commit | d348135ed2131e5fa41dfa0ea7254d2f6759f3e0 (patch) | |
tree | 14cfc61c47686b895acd9e49b45c559d311195cc /tests/codeigniter/database/query_builder/insert_test.php | |
parent | bb2c83bddbf51c42815be3de60eab24fd87ae392 (diff) | |
parent | d207c9218531afe666168c1f5f59abd1bc19a8aa (diff) |
Merge branch 'develop' of github.com:EllisLab/CodeIgniter into develop
Conflicts:
system/core/Security.php
Diffstat (limited to 'tests/codeigniter/database/query_builder/insert_test.php')
-rw-r--r-- | tests/codeigniter/database/query_builder/insert_test.php | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/tests/codeigniter/database/query_builder/insert_test.php b/tests/codeigniter/database/query_builder/insert_test.php new file mode 100644 index 000000000..53ce23c19 --- /dev/null +++ b/tests/codeigniter/database/query_builder/insert_test.php @@ -0,0 +1,67 @@ +<?php + +class Insert_test extends CI_TestCase { + + /** + * @var object Database/Query Builder holder + * @see ./mocks/schema/skeleton.php + */ + protected $db; + + public function set_up() + { + $this->db = Mock_Database_Schema_Skeleton::init(DB_DRIVER); + + Mock_Database_Schema_Skeleton::create_tables(); + + // Truncate the current datas + $this->db->truncate('job'); + } + + // ------------------------------------------------------------------------ + + /** + * @see ./mocks/schema/skeleton.php + */ + public function test_insert() + { + $job_data = array('id' => 1, 'name' => 'Grocery Sales', 'description' => 'Discount!'); + + // Do normal insert + $this->assertTrue($this->db->insert('job', $job_data)); + + $jobs = $this->db->get('job')->result_array(); + $job1 = $jobs[0]; + + // Check the result + $this->assertEquals('Grocery Sales', $job1['name']); + + } + + // ------------------------------------------------------------------------ + + /** + * @see ./mocks/schema/skeleton.php + */ + public function test_insert_batch() + { + $job_datas = array( + array('id' => 2, 'name' => 'Commedian', 'description' => 'Theres something in your teeth'), + array('id' => 3, 'name' => 'Cab Driver', 'description' => 'Iam yellow'), + ); + + // Do insert batch except for sqlite driver + if (strpos(DB_DRIVER, 'sqlite') === FALSE) + { + $this->assertTrue($this->db->insert_batch('job', $job_datas)); + + $job_2 = $this->db->where('id', 2)->get('job')->row(); + $job_3 = $this->db->where('id', 3)->get('job')->row(); + + // Check the result + $this->assertEquals('Commedian', $job_2->name); + $this->assertEquals('Cab Driver', $job_3->name); + } + } + +}
\ No newline at end of file |