| @@ 724-751 (lines=28) @@ | ||
| 721 | * |
|
| 722 | * @return void |
|
| 723 | */ |
|
| 724 | public function testAlteringTwoTables() { |
|
| 725 | $schema1 = new CakeSchema(array( |
|
| 726 | 'name' => 'AlterTest1', |
|
| 727 | 'connection' => 'test', |
|
| 728 | 'altertest' => array( |
|
| 729 | 'id' => array('type' => 'integer', 'null' => false, 'default' => 0), |
|
| 730 | 'name' => array('type' => 'string', 'null' => false, 'length' => 50), |
|
| 731 | ), |
|
| 732 | 'other_table' => array( |
|
| 733 | 'id' => array('type' => 'integer', 'null' => false, 'default' => 0), |
|
| 734 | 'name' => array('type' => 'string', 'null' => false, 'length' => 50), |
|
| 735 | ) |
|
| 736 | )); |
|
| 737 | $schema2 = new CakeSchema(array( |
|
| 738 | 'name' => 'AlterTest1', |
|
| 739 | 'connection' => 'test', |
|
| 740 | 'altertest' => array( |
|
| 741 | 'id' => array('type' => 'integer', 'null' => false, 'default' => 0), |
|
| 742 | 'field_two' => array('type' => 'string', 'null' => false, 'length' => 50), |
|
| 743 | ), |
|
| 744 | 'other_table' => array( |
|
| 745 | 'id' => array('type' => 'integer', 'null' => false, 'default' => 0), |
|
| 746 | 'field_two' => array('type' => 'string', 'null' => false, 'length' => 50), |
|
| 747 | ) |
|
| 748 | )); |
|
| 749 | $result = $this->Dbo->alterSchema($schema2->compare($schema1)); |
|
| 750 | $this->assertEquals(2, substr_count($result, 'field_two'), 'Too many fields'); |
|
| 751 | } |
|
| 752 | ||
| 753 | /** |
|
| 754 | * testReadTableParameters method |
|
| @@ 918-946 (lines=29) @@ | ||
| 915 | * |
|
| 916 | * @return void |
|
| 917 | */ |
|
| 918 | public function testAlteringTwoTables() { |
|
| 919 | $schema1 = new CakeSchema(array( |
|
| 920 | 'name' => 'AlterTest1', |
|
| 921 | 'connection' => 'test', |
|
| 922 | 'altertest' => array( |
|
| 923 | 'id' => array('type' => 'integer', 'null' => false, 'default' => 0), |
|
| 924 | 'name' => array('type' => 'string', 'null' => false, 'length' => 50), |
|
| 925 | ), |
|
| 926 | 'other_table' => array( |
|
| 927 | 'id' => array('type' => 'integer', 'null' => false, 'default' => 0), |
|
| 928 | 'name' => array('type' => 'string', 'null' => false, 'length' => 50), |
|
| 929 | ) |
|
| 930 | )); |
|
| 931 | $schema2 = new CakeSchema(array( |
|
| 932 | 'name' => 'AlterTest1', |
|
| 933 | 'connection' => 'test', |
|
| 934 | 'altertest' => array( |
|
| 935 | 'id' => array('type' => 'integer', 'null' => false, 'default' => 0), |
|
| 936 | 'field_two' => array('type' => 'string', 'null' => false, 'length' => 50), |
|
| 937 | ), |
|
| 938 | 'other_table' => array( |
|
| 939 | 'id' => array('type' => 'integer', 'null' => false, 'default' => 0), |
|
| 940 | 'field_two' => array('type' => 'string', 'null' => false, 'length' => 50), |
|
| 941 | ) |
|
| 942 | )); |
|
| 943 | $result = $this->db->alterSchema($schema2->compare($schema1)); |
|
| 944 | $this->assertEquals(2, substr_count($result, 'field_two'), 'Too many fields'); |
|
| 945 | $this->assertFalse(strpos(';ALTER', $result), 'Too many semi colons'); |
|
| 946 | } |
|
| 947 | ||
| 948 | /** |
|
| 949 | * test encoding setting. |
|