Commit Graph

404 Commits

Author SHA1 Message Date
Uli Schlachter 98e762e5f7 fix(tests: menubar): ignore warning about opening applications dir in /dev/null 2017-08-24 23:06:15 +02:00
Daniel Hahler 4604ce705d Merge pull request #1979 from psychon/spawn_env
Allow setting environment vars for spawned processes
2017-08-16 13:37:57 +02:00
Daniel Hahler ef04fa688e tests/themes/run.sh: use themes from source dir (#1994)
This makes it easier to track their coverage.
2017-08-16 13:27:49 +02:00
Uli Schlachter 9f8ff76079 awesome.spawn: Add a new argument for env
This adds a new argument to awesome.spawn that can be used to specify
the environment of the spawned process.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-08-16 13:23:19 +02:00
Daniel Hahler cdaf0dd294 tests/run.sh: fix verbose mode (#1997)
Fixes https://github.com/awesomeWM/awesome/issues/1996.

Also improves usage information.
2017-08-16 11:27:32 +02:00
Daniel Hahler 52548a2bee tests/run.sh: add -v option, replacing/using VERBOSE 2017-08-15 16:58:24 +02:00
Daniel Hahler 062f9d6a15 tests/themes/run.sh: distinguish header from tests/run.sh 2017-08-14 13:42:13 +02:00
Daniel Hahler e852455308 tests/run.sh: add support for -W to turn warnings into errors 2017-08-14 13:42:13 +02:00
Daniel Hahler 26f32f5ce4 tests/run.sh: cleanup: wait for process(es) to finish (#1982)
Ref: https://github.com/awesomeWM/awesome/pull/1967#issuecomment-321978955
2017-08-13 11:57:59 +02:00
Daniel Hahler f698a17138 Add check-themes, which tests themes via tests/themes/
It relies on tests/run.sh to handle failures.
2017-08-11 20:01:37 +02:00
Daniel Hahler f36738f115 tests/run.sh: allow to provide RC_FILE and theme/icon paths 2017-08-11 20:01:37 +02:00
Daniel Hahler fbea595f60 tests/_runner.lua: write "Running step …" to stderr 2017-08-11 20:01:37 +02:00
Daniel Hahler 31e25dc6a5 Cleanup usages/patching of awful.util.deprecate (#1966) 2017-08-10 12:18:54 +02:00
Uli Schlachter 60b5df1308 awful.tag: Apply a default layout to tags (#1952)
Related-to: https://github.com/awesomeWM/awesome/pull/1950
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-07-29 13:58:45 -04:00
Uli Schlachter d33d7d71d7 tests/examples/CMakeLists.txt: Add a project() call (#1926)
project() automatically sets the PROJECT_NAME variable. Thus, when this
CMake code is run due to being included by awesome, this commit has no
effect.

When this CMake code is run on its own, CMake will no longer check for a
C and C++ compiler.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-07-17 10:11:52 +02:00
Emmanuel Lepage Vallée bb26c32726 Merge pull request #1901 from actionless/xresources-titlebar-hover-press
feat(beatiful: theme_assets; themes: xresources): recolor titlebar icons for `hover` and `press` states
2017-07-10 10:11:50 -04:00
Daniel Hahler fb18a1d159 tests/run.sh: use temporary RC_FILE again (#1910)
This was changed in ec9a981d for no good reason, and using a temporary
file removes the requirement to restore it on exit.
And it is necessary in case the original file is not writable (e.g. in
case of a read-only Docker mount).
2017-07-09 22:29:51 +02:00
Daniel Hahler 2f105a405f Improve tests/run.sh (#1904)
- add colors
- count test files
- display error summary
- filter out a_dbus_connect warnings and "Test finished successfully." message
- print current step with VERBOSE=1
- kill clients at the end of tests in an extra step
2017-07-09 14:17:35 +02:00
actionless 0488905fcc fix(tests: screen-changes): take in account useless_gap 2017-07-03 01:02:52 +02:00
Daniel Hahler 718d91355d tests: fix test-menubar for when there are no desktop files (#1898) 2017-07-02 23:25:04 +02:00
Emmanuel Lepage Vallée 09bd3ec67a Merge pull request #1872 from Elv13/upstream_dynamic_p8
Import some commits from the stateful layout branch
2017-06-27 03:54:12 -04:00
Uli Schlachter 19fbae7f74 test-menubar.lua: Also skip the test with LuaJIT
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-27 08:58:17 +02:00
Uli Schlachter 914b4b7c8b test-menubar.lua: Filter calls to gears.debug.print_error
A test counts as having failed if it prints any error. However, the
search path can very well contain non-existing directories which are not
a problem. Thus, handle this by monkey-patching gears.debug.print_error.

Ref: https://github.com/awesomeWM/awesome/pull/1872#issuecomment-311224439
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-27 08:54:03 +02:00
Luke Bonham 547c0e4b83 awful.spawn: add easy_async_with_shell and fixed easy_async doc (#1541) 2017-06-26 21:15:58 +02:00
Emmanuel Lepage Vallee 82d1616773 tests: Add tests for the stack layout 2017-06-26 02:27:20 -04:00
Emmanuel Lepage Vallee e49e7d6938 shims: Add a missing drawin member 2017-06-26 02:27:20 -04:00
Emmanuel Lepage Vallee 458340b4d4 doc: Add examples for the ratio layout 2017-06-26 02:27:20 -04:00
Uli Schlachter c9c02aef67 tests: Disable test-menubar.lua where needed
This test runs into an lgi bug that causes awesome to segfault. Work
around this by just disabling the test where needed.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-23 20:24:50 -04:00
Uli Schlachter 941c997314 tests: Add a very basic test for the menubar
This does not actually test anything. It just makes sure that the code
runs. A proper test still seems to need some time and some hacks, but
this basic test is enough to check that the menubar does not cause any
Lua errors.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-23 20:24:44 -04:00
Emmanuel Lepage Vallée ef1d7d8396 Merge pull request #1647 from Elv13/free_layout
Add a manual (free floating) layout
2017-06-12 19:49:30 -04:00
getzze 15d66167f7 tests: Test the calendar widget 2017-06-12 02:58:06 -04:00
Emmanuel Lepage Vallee f2b7765355 tests: Test the `manual` layout. 2017-06-11 01:14:10 -04:00
Emmanuel Lepage Vallee 9e01c92ea2 tests: Minor changes to the wibox template. 2017-06-11 01:14:10 -04:00
Uli Schlachter 3bb8efd2db Re-arrange the magnifier layout on focus changes
Just re-arranging on every focus change would cause useless/needless
re-arranges (which have no effect except to waste CPU time). Thus, this
adds a special (undocumented) flag on layouts that makes sure that a
rearrange occurs when the focus changes.

Fixes: https://github.com/awesomeWM/awesome/issues/1799
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-06-09 10:13:14 +02:00
Uli Schlachter 0abfed54de example tests: Switch to new API
This makes the templates used by the example tests use the new API added
in the previous commit.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-05-30 11:22:07 +02:00
Uli Schlachter e90f3ef253 test-maximize.lua: Test all gravities
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-05-26 18:24:28 +02:00
Uli Schlachter 3e0eefe3bc Add a test case for some recent bug
This test would have caught
https://github.com/awesomeWM/awesome/issues/1607.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-05-26 18:24:28 +02:00
Uli Schlachter 08555a4fed test-maximize: Restore old border width
When the border width changes, we move the client according to its
gravity. This can cause problems with the following code. Fix this by
restoring the original border width again, which undoes the move.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-05-26 18:24:28 +02:00
Emmanuel Lepage Vallee 5d944e3c1a tests: Add client self-resizing support to the tests 2017-05-23 22:34:12 +02:00
Emmanuel Lepage Vallee ae7b173c54 tests: Add resizing support to the test client 2017-05-23 22:33:26 +02:00
Emmanuel Lepage Vallee 710039ed3f tests: Test more maximization corner cases 2017-05-23 22:33:26 +02:00
Emmanuel Lepage Vallee 0eab45520e tests: Add maximization support to the test client
Both a "before manage" and "later" mode.
2017-05-23 22:33:26 +02:00
Emmanuel Lepage Vallée b6e6a04895 Merge pull request #1776 from psychon/emit_property_floating
Always emit property::floating when needed
2017-05-16 13:57:51 -04:00
Uli Schlachter 498510e810 Add a new disposition to _multi_screen.lua
Without the previous commit, this would make test-awful-client.lua fail.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-05-15 08:15:59 +02:00
Uli Schlachter 2eef92a891 test-maximize: Improve error messages
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-05-14 10:10:03 +02:00
Emmanuel Lepage Vallee e7232c0dc2 test: Use the test client in test-maximize 2017-05-14 09:56:58 +02:00
Emmanuel Lepage Vallee 2da1900d85 tests: Add gravity to the test client 2017-05-14 09:56:54 +02:00
Uli Schlachter 3ed0be6d85 Add a test for gravity handling (#1760)
This adds a C program which tests if the window manager handles
gravities correctly. This program is loosely based on metacity's
test-gravity.c, but completely rewritten and this version does automatic
tests instead of allowing the user to perform testing by hand.

By having this as a self-contained C program, it is possible to compare
awesome's behaviour with the behaviour of other WMs.

In my testing, only metacity and awesome pass this test. This is not
that much of a big surprise since awesome was fixed in
https://github.com/awesomeWM/awesome/pull/505 to work correctly with
metacity's test-gravity.c. However, I am surprised that e.g. Fluxbox
gets this wrong.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-05-13 23:28:45 +02:00
Uli Schlachter e1bad41fc8 Always emit property::floating when needed
There are some cases where a client's floating state "silently" changes.
For example, a fullscreen client will be considered floating. However,
even though c.floating changes its value in this case, we did not emit
the property::floating signal.

Fix this by explicitly tracking the "implicitly floating" state. When
some property that influences this "implicitly floating" state changes,
we update it and if a client which was not explicitly assigned a
floating state observes a change in this value, property::floating is
emitted.

This was tested by running a terminal and two xeyes in a tag with a
tiling layout where awful.ewmh was patched so that clients do not change
their geometry when fullscreening or maximizing. It was observable that
after this patch e.g. the titlebar and the tasklist update to show the
floating state of the client which became implicitly floating due to
being maximized.

Fixes: https://github.com/awesomeWM/awesome/issues/1662
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-05-11 16:22:16 +02:00
Uli Schlachter 07d0bcb713 Stabilize awful.tooltip code coverage (#1773)
For a while now we had our code coverage tools tell us that the coverage
for one line of code fluctuated. Sometimes it was being executed and
other times it was not. This is useless noise.

I think what is happening here is that the coverage depends on the order
of iteration over a table. Either the tooltip that is being created was
first made visible and then it text changed, or things happened in the
opposite order.

Fix this by doing this by explicitly changing the tooltip's text while
it is surely visible.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-05-07 18:00:22 +02:00