Merge pull request #1797 from psychon/fullscreen_test

Fullscreen tests
This commit is contained in:
Daniel Hahler 2017-05-26 20:13:39 +02:00 committed by GitHub
commit b8d4257d74
1 changed files with 32 additions and 14 deletions

View File

@ -4,6 +4,7 @@ local runner = require("_runner")
local awful = require("awful")
local test_client = require("_client")
local lgi = require("lgi")
local gears = require("gears")
local function geo_to_str(g)
return "pos=" .. g.x .. "," .. g.y ..
@ -12,21 +13,15 @@ end
local original_geo = nil
local counter = 0
local steps = {}
local function geometry_handler(c, context, hints)
hints = hints or {}
assert(type(c) == "client")
assert(type(context) == "string")
assert(type(hints.toggle) == "boolean")
assert(type(hints.status) == "boolean")
counter = counter + 1
end
local steps = {
for _, gravity in ipairs { "NORTH_WEST", "NORTH", "NORTH_EAST", "WEST",
"CENTER", "EAST", "SOUTH_WEST", "SOUTH", "SOUTH_EAST", "STATIC" } do
gears.table.merge(steps, {
function(count)
if count == 1 then
test_client(nil,nil,nil,nil,nil,{gravity=lgi.Gdk.Gravity.NORTH_WEST})
print("testing gravity " .. gravity)
test_client(nil,nil,nil,nil,nil,{gravity=lgi.Gdk.Gravity[gravity]})
else
local c = client.get()[1]
if c then
@ -71,10 +66,18 @@ local steps = {
c.border_width = test_width
c.fullscreen = true
-- Test that the client covers the full screen
assert(geo_to_str(c:geometry()) == geo_to_str(c.screen.geometry),
geo_to_str(c:geometry()) .. " == " .. geo_to_str(c.screen.geometry))
c.fullscreen = false
assert(c.border_width == test_width)
-- Restore old border width
c.border_width = test_width - 1
return true
end,
@ -156,7 +159,22 @@ local steps = {
c:kill()
return true
end,
end
})
end
local counter = 0
local function geometry_handler(c, context, hints)
hints = hints or {}
assert(type(c) == "client")
assert(type(context) == "string")
assert(type(hints.toggle) == "boolean")
assert(type(hints.status) == "boolean")
counter = counter + 1
end
gears.table.merge(steps, {
-- Now, start some clients maximized
function()
if #client.get() > 0 then return end
@ -241,7 +259,7 @@ local steps = {
return true
end
}
})
runner.run_steps(steps)