|
| 1 | +# Test INSTALL EXTENSION with versioned VEB filenames ({name}-{version}.veb). |
| 2 | +# The original extension_install_version.test covers unversioned {name}.veb |
| 3 | +# with manifest-version matching; this one covers the version-in-filename |
| 4 | +# resolution rules. |
| 5 | + |
| 6 | +--let $veb_dir = `SELECT @@veb_dir` |
| 7 | + |
| 8 | +--let $extension_name = versioned_noop |
| 9 | +--let $extension_version = 1.2.3 |
| 10 | +--let $extension_source = $MYSQL_TEST_DIR/suite/villagesql/std_data/noop_extension.cc |
| 11 | +--let $extension_versioned = 1 |
| 12 | +--source include/villagesql/create_extension_sdk.inc |
| 13 | + |
| 14 | +--copy_file $veb_dir/versioned_noop-1.2.3.veb $veb_dir/versioned_noop-2.0.0.veb |
| 15 | +--replace_result $MYSQLTEST_VARDIR/mysqld.1/veb/ MYSQLTEST_VEB_DIR |
| 16 | +--replace_result $veb_dir MYSQLTEST_VEB_DIR |
| 17 | +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR |
| 18 | +--error ER_VILLAGESQL_GENERIC_ERROR |
| 19 | +INSTALL EXTENSION versioned_noop; |
| 20 | +--remove_file $veb_dir/versioned_noop-2.0.0.veb |
| 21 | + |
| 22 | +INSTALL EXTENSION versioned_noop; |
| 23 | +SELECT extension_name, extension_version FROM INFORMATION_SCHEMA.EXTENSIONS |
| 24 | + WHERE extension_name = 'versioned_noop'; |
| 25 | +UNINSTALL EXTENSION versioned_noop VERSION '1.2.3'; |
| 26 | + |
| 27 | +INSTALL EXTENSION versioned_noop VERSION '1.2.3'; |
| 28 | +SELECT extension_name, extension_version FROM INFORMATION_SCHEMA.EXTENSIONS |
| 29 | + WHERE extension_name = 'versioned_noop'; |
| 30 | +UNINSTALL EXTENSION versioned_noop VERSION '1.2.3'; |
| 31 | + |
| 32 | +--copy_file $veb_dir/versioned_noop-1.2.3.veb $veb_dir/versioned_noop-9.9.9.veb |
| 33 | +--error ER_VILLAGESQL_GENERIC_ERROR |
| 34 | +INSTALL EXTENSION versioned_noop VERSION '9.9.9'; |
| 35 | +--remove_file $veb_dir/versioned_noop-9.9.9.veb |
| 36 | + |
| 37 | +# Filename version must match manifest version even when VERSION is omitted. |
| 38 | +# Move versioned_noop-1.2.3.veb to versioned_noop-9.9.9.veb: filename says |
| 39 | +# 9.9.9 but manifest still says 1.2.3. |
| 40 | +--move_file $veb_dir/versioned_noop-1.2.3.veb $veb_dir/versioned_noop-9.9.9.veb |
| 41 | +--error ER_VILLAGESQL_GENERIC_ERROR |
| 42 | +INSTALL EXTENSION versioned_noop; |
| 43 | +--remove_file $veb_dir/versioned_noop-9.9.9.veb |
0 commit comments