Changeset: a87bf6ac19cc for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a87bf6ac19cc
Added Files:
        sql/test/scoping/Tests/schema_disambiguity.sql
Modified Files:
        sql/test/scoping/Tests/All
Branch: scoping
Log Message:

A simple top-level variable scoping test


diffs (61 lines):

diff --git a/sql/test/scoping/Tests/All b/sql/test/scoping/Tests/All
--- a/sql/test/scoping/Tests/All
+++ b/sql/test/scoping/Tests/All
@@ -1,1 +1,2 @@
+schema_disambiguity
 scoping01
diff --git a/sql/test/scoping/Tests/schema_disambiguity.sql 
b/sql/test/scoping/Tests/schema_disambiguity.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/scoping/Tests/schema_disambiguity.sql
@@ -0,0 +1,50 @@
+-- experiments with variables used within and between schemas.
+START TRANSACTION;
+
+CREATE SCHEMA A;
+CREATE SCHEMA B;
+
+DECLARE "outer" string;
+SET "outer" = 'outer';
+SELECT "outer";
+SELECT sys."outer"; -- same as above
+SELECT tmp."outer"; -- unkown variable within sys
+
+SET SCHEMA A;
+DECLARE "Avar" string;
+SET "Avar" = 'Avar';
+SELECT "Avar";
+
+SET SCHEMA B;
+DECLARE "Bvar" string;
+SET "Bvar" = 'Bvar';
+SELECT "Bvar";
+
+SET SCHEMA sys;
+SELECT "outer"; -- should be known
+SELECT "Avar"; -- unknown
+SELECT "Bvar"; -- unknown
+
+SELECT sys."outer";
+SELECT A."outer"; -- unknown
+SELECT B."outer"; -- unknown
+SELECT A."Avar"; -- known
+SELECT B."Avar"; -- unknown
+SELECT A."Bvar"; -- unknown
+SELECT B."Bvar"; -- known
+
+SET SCHEMA A;
+SELECT "outer"; -- unkown
+SELECT "Avar"; -- known
+SELECT "Bvar"; -- unknown
+
+SELECT sys."outer";
+SELECT A."outer"; -- unknown
+SELECT B."outer"; -- unknown
+SELECT A."Avar"; -- known
+SELECT B."Avar"; -- unknown
+SELECT A."Bvar"; -- unknown
+SELECT B."Bvar"; -- known
+
+
+ROLLBACK;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to