summaryrefslogtreecommitdiff
path: root/Examples/test-suite/lua/abstract_access_runme.lua
diff options
context:
space:
mode:
Diffstat (limited to 'Examples/test-suite/lua/abstract_access_runme.lua')
-rw-r--r--Examples/test-suite/lua/abstract_access_runme.lua17
1 files changed, 17 insertions, 0 deletions
diff --git a/Examples/test-suite/lua/abstract_access_runme.lua b/Examples/test-suite/lua/abstract_access_runme.lua
new file mode 100644
index 0000000..b9f44cf
--- /dev/null
+++ b/Examples/test-suite/lua/abstract_access_runme.lua
@@ -0,0 +1,17 @@
+require("import") -- the import fn
+import("abstract_access") -- import code
+
+-- catch "undefined" global variables
+setmetatable(getfenv(),{__index=function (t,i) error("undefined global variable `"..i.."'",2) end})
+
+-- trying to instantiate pure virual classes
+-- should fail
+assert(pcall(abstract_access.A)==false)
+assert(pcall(abstract_access.B)==false)
+assert(pcall(abstract_access.C)==false)
+
+-- instantiate object
+d=abstract_access.D()
+
+--call fn
+assert(d:do_x()==1)