mirror of https://github.com/swig/swig.git
33 lines
1.7 KiB
Lua
33 lines
1.7 KiB
Lua
local v=require("minherit")
|
|
|
|
local a = v.Foo()
|
|
local b = v.Bar()
|
|
local c = v.FooBar()
|
|
local d = v.Spam()
|
|
assert(a:xget() == 1, "Bad attribute value")
|
|
assert(b:yget() == 2, "Bad attribute value")
|
|
assert(c:xget() == 1 and c:yget() == 2 and c:zget() == 3, "Bad attribute value")
|
|
assert(d:xget() == 1 and d:yget() == 2 and d:zget() == 3 and d:wget() == 4, "Bad attribute value")
|
|
assert(v.xget(a) == 1, "Bad attribute value " .. v.xget(a))
|
|
assert(v.yget(b) == 2, "Bad attribute value " .. v.yget(b))
|
|
assert(v.xget(c) == 1 and v.yget(c) == 2 and v.zget(c) == 3,
|
|
"Bad attribute value " .. v.xget(c) .. " " .. v.yget(c) .. " " .. v.zget(c))
|
|
assert(v.xget(d) == 1 and v.yget(d) == 2 and v.zget(d) == 3 and v.wget(d) == 4,
|
|
"Bad attribute value " .. v.xget(d) .. " " .. v.yget(d) .. " " .. v.zget(d) .. " " .. v.wget(d))
|
|
|
|
-- Cleanse all of the pointers and see what happens
|
|
local aa = v.toFooPtr(a)
|
|
local bb = v.toBarPtr(b)
|
|
local cc = v.toFooBarPtr(c)
|
|
local dd = v.toSpamPtr(d)
|
|
assert(aa:xget() == 1, "Bad attribute value")
|
|
assert(bb:yget() == 2, "Bad attribute value")
|
|
assert(cc:xget() == 1 and cc:yget() == 2 and cc:zget() == 3, "Bad attribute value")
|
|
assert(dd:xget() == 1 and dd:yget() == 2 and dd:zget() == 3 and dd:wget() == 4, "Bad attribute value")
|
|
assert(v.xget(aa) == 1, "Bad attribute value " .. v.xget(aa))
|
|
assert(v.yget(bb) == 2, "Bad attribute value " .. v.yget(bb))
|
|
assert(v.xget(cc) == 1 and v.yget(cc) == 2 and v.zget(cc) == 3,
|
|
"Bad attribute value " .. v.xget(cc) .. " " .. v.yget(cc) .. " " .. v.zget(cc))
|
|
assert(v.xget(dd) == 1 and v.yget(dd) == 2 and v.zget(dd) == 3 and v.wget(dd) == 4,
|
|
"Bad attribute value " .. v.xget(dd) .. " " .. v.yget(dd) .. " " .. v.zget(dd) .. " " .. v.wget(dd))
|