summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/r/lowercase0.require3
-rw-r--r--mysql-test/r/lowercase_table3.result10
-rw-r--r--mysql-test/r/true.require2
-rw-r--r--mysql-test/t/lowercase_table3-master.opt (renamed from mysql-test/t/lowercase_table2-master.opt)0
-rw-r--r--mysql-test/t/lowercase_table3.test37
5 files changed, 52 insertions, 0 deletions
diff --git a/mysql-test/r/lowercase0.require b/mysql-test/r/lowercase0.require
new file mode 100644
index 00000000000..a63906557f8
--- /dev/null
+++ b/mysql-test/r/lowercase0.require
@@ -0,0 +1,3 @@
+Variable_name Value
+lower_case_file_system ON
+lower_case_table_names 0
diff --git a/mysql-test/r/lowercase_table3.result b/mysql-test/r/lowercase_table3.result
new file mode 100644
index 00000000000..0676c42e12b
--- /dev/null
+++ b/mysql-test/r/lowercase_table3.result
@@ -0,0 +1,10 @@
+DROP TABLE IF EXISTS t1,T1;
+CREATE TABLE t1 (a int);
+SELECT * from T1;
+a
+drop table t1;
+flush tables;
+CREATE TABLE t1 (a int) type=INNODB;
+SELECT * from T1;
+Table 'test.T1' doesn't exist
+drop table t1;
diff --git a/mysql-test/r/true.require b/mysql-test/r/true.require
new file mode 100644
index 00000000000..09aae1ed1d0
--- /dev/null
+++ b/mysql-test/r/true.require
@@ -0,0 +1,2 @@
+TRUE
+1
diff --git a/mysql-test/t/lowercase_table2-master.opt b/mysql-test/t/lowercase_table3-master.opt
index 9b27aef9bf8..9b27aef9bf8 100644
--- a/mysql-test/t/lowercase_table2-master.opt
+++ b/mysql-test/t/lowercase_table3-master.opt
diff --git a/mysql-test/t/lowercase_table3.test b/mysql-test/t/lowercase_table3.test
new file mode 100644
index 00000000000..83ffaaad2d1
--- /dev/null
+++ b/mysql-test/t/lowercase_table3.test
@@ -0,0 +1,37 @@
+#
+# Test of force of lower-case-table-names=0
+# (User has case insensitive file system and want's to preserve case of
+# table names)
+#
+
+--source include/have_innodb.inc
+--require r/lowercase0.require
+disable_query_log;
+show variables like "lower_case_%";
+--require r/true.require
+select @@version_compile_os NOT IN ("NT","WIN2000","Win95/Win98","XP") as "TRUE";
+enable_query_log;
+
+--disable_warnings
+DROP TABLE IF EXISTS t1,T1;
+--enable_warnings
+
+#
+# This is actually an error, but ok as the user has forced this
+# by using --lower-case-table-names=0
+
+CREATE TABLE t1 (a int);
+SELECT * from T1;
+drop table t1;
+flush tables;
+
+#
+# InnoDB should in this case be case sensitive
+# Note that this is not true on windows as no this OS, InnoDB is always
+# storing things in lower case.
+#
+
+CREATE TABLE t1 (a int) type=INNODB;
+--error 1146
+SELECT * from T1;
+drop table t1;