You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
describe("gesturerange module", function()
|
|
|
|
local GestureRange, Geom
|
|
|
|
setup(function()
|
|
|
|
require("commonrequire")
|
|
|
|
GestureRange = require("ui/gesturerange")
|
|
|
|
Geom = require("ui/geometry")
|
|
|
|
end)
|
|
|
|
|
|
|
|
it("should match tap event within range", function()
|
|
|
|
local g = GestureRange:new{
|
|
|
|
ges = "tap",
|
|
|
|
range = Geom:new{ x = 0, y = 0, w = 200, h = 200},
|
|
|
|
}
|
|
|
|
assert.truthy(g:match({
|
|
|
|
ges = "tap",
|
|
|
|
pos = Geom:new{ x = 1, y = 1, w = 0, h = 0 },
|
|
|
|
}))
|
|
|
|
end)
|
|
|
|
|
|
|
|
it("should not match tap event outside of range", function()
|
|
|
|
local g = GestureRange:new{
|
|
|
|
ges = "tap",
|
|
|
|
range = Geom:new{ x = 0, y = 0, w = 100, h = 100},
|
|
|
|
}
|
|
|
|
assert.falsy(g:match({
|
|
|
|
ges = "tap",
|
|
|
|
pos = Geom:new{ x = 105, y = 1, w = 0, h = 0 },
|
|
|
|
}))
|
|
|
|
end)
|
|
|
|
|
|
|
|
it("should match any event within nil range", function()
|
|
|
|
local g = GestureRange:new{
|
|
|
|
ges = "tap",
|
|
|
|
range = nil,
|
|
|
|
}
|
|
|
|
assert.truthy(g:match({
|
|
|
|
ges = "tap",
|
|
|
|
pos = Geom:new{ x = 1, y = 1, w = 1000000000000000000, h = 100 },
|
|
|
|
}))
|
|
|
|
end)
|
|
|
|
end)
|