WordPress.org

Make WordPress Core

Ticket #35958: 35958-varchar-191-object-property.diff

File 35958-varchar-191-object-property.diff, 8.8 KB (added by caseypatrickdriscoll, 2 years ago)
  • tests/phpunit/tests/dbdelta.php

     
    99class Tests_dbDelta extends WP_UnitTestCase {
    1010
    1111        /**
     12         * The maximum size of an index with UTF8mb4 Collation and Charset with byte limit of 767
     13         * (191 * 4 = 761)
     14         */
     15        protected $varchar_max = 191;
     16
     17        /**
    1218         * Make sure the upgrade code is loaded before the tests are run.
    1319         */
    1420        public static function setUpBeforeClass() {
     
    3036                        "
    3137                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    3238                                id bigint(20) NOT NULL AUTO_INCREMENT,
    33                                 column_1 varchar(255) NOT NULL,
     39                                column_1 varchar({$this->varchar_max}) NOT NULL,
    3440                                column_2 text,
    3541                                column_3 blob,
    3642                                PRIMARY KEY  (id),
     
    6975                $updates = dbDelta(
    7076                        "CREATE TABLE {$wpdb->prefix}dbdelta_create_test (
    7177                                id bigint(20) NOT NULL AUTO_INCREMENT,
    72                                 column_1 varchar(255) NOT NULL,
     78                                column_1 varchar({$this->varchar_max}) NOT NULL,
    7379                                PRIMARY KEY  (id)
    7480                        );"
    7581                );
     
    104110                        "
    105111                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    106112                                id bigint(20) NOT NULL AUTO_INCREMENT,
    107                                 column_1 varchar(255) NOT NULL,
     113                                column_1 varchar({$this->varchar_max}) NOT NULL,
    108114                                PRIMARY KEY  (id),
    109115                                KEY key_1 (column_1),
    110116                                KEY compound_key (id,column_1)
     
    127133                        "
    128134                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    129135                                id int(11) NOT NULL AUTO_INCREMENT,
    130                                 column_1 varchar(255) NOT NULL,
     136                                column_1 varchar({$this->varchar_max}) NOT NULL,
    131137                                PRIMARY KEY  (id),
    132138                                KEY key_1 (column_1),
    133139                                KEY compound_key (id,column_1)
     
    155161                        "
    156162                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    157163                                id bigint(20) NOT NULL AUTO_INCREMENT,
    158                                 column_1 varchar(255) NOT NULL,
     164                                column_1 varchar({$this->varchar_max}) NOT NULL,
    159165                                extra_col longtext,
    160166                                PRIMARY KEY  (id),
    161167                                KEY key_1 (column_1),
     
    214220                        "
    215221                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    216222                                id bigint(20) NOT NULL AUTO_INCREMENT,
    217                                 column_1 varchar(255) NOT NULL,
     223                                column_1 varchar({$this->varchar_max}) NOT NULL,
    218224                                extra_col longtext,
    219225                                PRIMARY KEY  (id),
    220226                                KEY key_1 (column_1),
     
    265271                        "
    266272                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    267273                                id bigint(20) NOT NULL AUTO_INCREMENT,
    268                                 column_1 varchar(255) NOT NULL,
     274                                column_1 varchar({$this->varchar_max}) NOT NULL,
    269275                                PRIMARY KEY  (id),
    270276                                KEY key_1 (column_1),
    271277                                KEY compound_key (id,column_1),
     
    375381                        "
    376382                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    377383                                id bigint(20) NOT NULL AUTO_INCREMENT,
    378                                 column_1 varchar(255) NOT NULL,
     384                                column_1 varchar({$this->varchar_max}) NOT NULL,
    379385                                column_2 tinytext,
    380386                                column_3 blob,
    381387                                PRIMARY KEY  (id),
     
    398404                        "
    399405                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    400406                                id bigint(20) NOT NULL AUTO_INCREMENT,
    401                                 column_1 varchar(255) NOT NULL,
     407                                column_1 varchar({$this->varchar_max}) NOT NULL,
    402408                                column_2 text,
    403409                                column_3 tinyblob,
    404410                                PRIMARY KEY  (id),
     
    421427                        "
    422428                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    423429                                id bigint(20) NOT NULL AUTO_INCREMENT,
    424                                 column_1 varchar(255) NOT NULL,
     430                                column_1 varchar({$this->varchar_max}) NOT NULL,
    425431                                column_2 bigtext,
    426432                                column_3 blob,
    427433                                PRIMARY KEY  (id),
     
    448454                        "
    449455                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    450456                                id bigint(20) NOT NULL AUTO_INCREMENT,
    451                                 column_1 varchar(255) NOT NULL,
     457                                column_1 varchar({$this->varchar_max}) NOT NULL,
    452458                                column_2 text,
    453459                                column_3 mediumblob,
    454460                                PRIMARY KEY  (id),
     
    474480                $schema = "
    475481                        CREATE TABLE {$wpdb->prefix}dbdelta_test2 (
    476482                                `id` bigint(20) NOT NULL AUTO_INCREMENT,
    477                                 `column_1` varchar(255) NOT NULL,
     483                                `column_1` varchar({$this->varchar_max}) NOT NULL,
    478484                                PRIMARY KEY  (id),
    479485                                KEY compound_key (id,column_1)
    480486                        )
     
    546552                $schema = "
    547553                        CREATE TABLE {$wpdb->prefix}dbdelta_test2 (
    548554                                `id` bigint(20) NOT NULL AUTO_INCREMENT,
    549                                 `references` varchar(255) NOT NULL,
     555                                `references` varchar({$this->varchar_max}) NOT NULL,
    550556                                PRIMARY KEY  (`id`),
    551557                                KEY `compound_key` (`id`,`references`)
    552558                        )
     
    575581                        "
    576582                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    577583                                id bigint(20) NOT NULL AUTO_INCREMENT,
    578                                 column_1 varchar(255) NOT NULL,
     584                                column_1 varchar({$this->varchar_max}) NOT NULL,
    579585                                column_2 text,
    580586                                column_3 blob,
    581                                 `references` varchar(255) NOT NULL,
     587                                `references` varchar({$this->varchar_max}) NOT NULL,
    582588                                PRIMARY KEY  (id),
    583589                                KEY key_1 (column_1),
    584590                                KEY compound_key (id , column_1),
     
    619625                $schema = "
    620626                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    621627                                id bigint(20) NOT NULL AUTO_INCREMENT,
    622                                 column_1 varchar(255) NOT NULL,
     628                                column_1 varchar({$this->varchar_max}) NOT NULL,
    623629                                column_2 text,
    624630                                column_3 blob,
    625631                                PRIMARY KEY  (id),
     
    658664                        "
    659665                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    660666                                id bigint(20) NOT NULL AUTO_INCREMENT,
    661                                 column_1 varchar(255) NOT NULL,
     667                                column_1 varchar({$this->varchar_max}) NOT NULL,
    662668                                column_2 text,
    663669                                column_3 blob,
    664670                                PRIMARY KEY  (id),
     
    681687                $schema = "
    682688                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    683689                                id bigint(20) NOT NULL AUTO_INCREMENT,
    684                                 column_1 varchar(255) NOT NULL,
     690                                column_1 varchar({$this->varchar_max}) NOT NULL,
    685691                                column_2 text,
    686692                                column_3 blob,
    687693                                PRIMARY KEY  (id),
     
    716722                        "
    717723                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    718724                                id bigint(20) NOT NULL AUTO_INCREMENT,
    719                                 column_1 varchar(255) NOT NULL,
     725                                column_1 varchar({$this->varchar_max}) NOT NULL,
    720726                                column_2 text,
    721727                                column_3 blob,
    722728                                PRIMARY KEY  (id),
     
    740746                        "
    741747                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    742748                                id bigint(20) NOT NULL AUTO_INCREMENT,
    743                                 column_1 varchar(255) NOT NULL,
     749                                column_1 varchar({$this->varchar_max}) NOT NULL,
    744750                                column_2 text,
    745751                                column_3 blob,
    746752                                PRIMARY KEY (id),
     
    764770                        "
    765771                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    766772                                id bigint(20) NOT NULL AUTO_INCREMENT,
    767                                 column_1 varchar(255) NOT NULL,
     773                                column_1 varchar({$this->varchar_max}) NOT NULL,
    768774                                column_2 text,
    769775                                column_3 blob,
    770776                                PRIMARY KEY  (id),
     
    788794                        "
    789795                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    790796                                id bigint(20) NOT NULL AUTO_INCREMENT,
    791                                 column_1 varchar(255) NOT NULL,
     797                                column_1 varchar({$this->varchar_max}) NOT NULL,
    792798                                column_2 text,
    793799                                column_3 blob,
    794800                                PRIMARY KEY  (id),
     
    812818                        "
    813819                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    814820                                id bigint(20) NOT NULL AUTO_INCREMENT,
    815                                 column_1 varchar(255) NOT NULL,
     821                                column_1 varchar({$this->varchar_max}) NOT NULL,
    816822                                column_2 text,
    817823                                column_3 blob,
    818824                                PRIMARY KEY  (id),
     
    835841                        "
    836842                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    837843                                id bigint(20) NOT NULL AUTO_INCREMENT,
    838                                 column_1 varchar(255) NOT NULL,
     844                                column_1 varchar({$this->varchar_max}) NOT NULL,
    839845                                column_2 text,
    840846                                column_3 blob,
    841847                                PRIMARY KEY  (id),
    842                                 KEY key_1 (column_1(255)),
     848                                KEY key_1 (column_1({$this->varchar_max})),
    843849                                KEY compound_key (id,column_1),
    844850                                FULLTEXT KEY fulltext_key (column_1)
    845851                        ) ENGINE=MyISAM
     
    858864                        "
    859865                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    860866                                id bigint(20) NOT NULL AUTO_INCREMENT,
    861                                 column_1 varchar(255) NOT NULL,
     867                                column_1 varchar({$this->varchar_max}) NOT NULL,
    862868                                column_2 text,
    863869                                column_3 blob,
    864870                                PRIMARY KEY  (id),
     
    877883                        "
    878884                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    879885                                id bigint(20) NOT NULL AUTO_INCREMENT,
    880                                 column_1 varchar(255) NOT NULL,
     886                                column_1 varchar({$this->varchar_max}) NOT NULL,
    881887                                column_2 text,
    882888                                column_3 blob,
    883889                                PRIMARY KEY  (id),
     
    894900                        "
    895901                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    896902                                id bigint(20) NOT NULL AUTO_INCREMENT,
    897                                 column_1 varchar(255) NOT NULL,
     903                                column_1 varchar({$this->varchar_max}) NOT NULL,
    898904                                column_2 text,
    899905                                column_3 blob,
    900906                                PRIMARY KEY  (id),
     
    911917                        "
    912918                        CREATE TABLE {$wpdb->prefix}dbdelta_test (
    913919                                id bigint(20) NOT NULL AUTO_INCREMENT,
    914                                 column_1 varchar(255) NOT NULL,
     920                                column_1 varchar({$this->varchar_max}) NOT NULL,
    915921                                column_2 text,
    916922                                column_3 blob,
    917923                                PRIMARY KEY  (id),
     
    933939
    934940                $schema = "
    935941                        CREATE TABLE {$wpdb->prefix}dbdelta_test2 (
    936                                 `foo-bar` varchar(255) DEFAULT NULL
     942                                `foo-bar` varchar({$this->varchar_max}) DEFAULT NULL
    937943                        )
    938944                ";
    939945
     
    951957
    952958                $this->assertSame(
    953959                        array(
    954                                 "{$wpdb->prefix}dbdelta_test2.foo-bar" => "Changed type of {$wpdb->prefix}dbdelta_test2.foo-bar from varchar(255) to text",
     960                                "{$wpdb->prefix}dbdelta_test2.foo-bar" => "Changed type of {$wpdb->prefix}dbdelta_test2.foo-bar from varchar({$this->varchar_max}) to text",
    955961                        ),
    956962                        $updates
    957963                );