Commit Graph

8141 Commits

Author SHA1 Message Date
Uli Schlachter f7025e2f73 Fix tests/run.sh
Commit a944636c02 "bashified" tests/run.sh for some reason.
Afterwards, commit 4abd820051 fixed some of the fall-out.
However, there is still a problem left.

We have "set -e" in this script. Thus, whenever some command exits with
status 0, the script abort. When the variable errors is zero/unset, the
command "((errors++))" has exit status zero. Thus, this instruction
caused the shell script to abort. This was not intended.

Fix this by using "((++errors))" instead.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 19:35:13 +01:00
Uli Schlachter 6534208f62 tests/_runner.lua: Use less waiting
Before this, the test runner used a timer which fired every 0.1 seconds
to "do its thing". Many of these waits seem unnecessary.

This commit makes the test runner wait 0 seconds for the first call of a
step function. Only following calls will have a timeout of 0.1 seconds
applied.

A full run of the test suite (tests/run.sh without further arguments)
took about 100 seconds before this change. After this change, we are
down to 60 seconds. This is almost factor two faster! (Well, five thirds
is the exact number, so factor 1.66)

(The numbers are best out of three runs. The "before" number is rounded
down while the "after" number is rounded up.)

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 19:34:41 +01:00
Uli Schlachter edff48f133 test-awful-client.lua: Fix indentation
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 19:34:41 +01:00
Uli Schlachter a1b5782e90 test-awful-client.lua: Wait for c:kill() to be done
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 19:34:41 +01:00
Uli Schlachter 30912c6f24 test-geometry: Wait for c:kill() to be done
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 19:34:41 +01:00
Uli Schlachter 0d8106c6dd test-leak-client.lua: Wait for c:kill() to be done
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 19:34:41 +01:00
Uli Schlachter 0dff0c308a test-geometry.lua: Fix indentation
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 19:34:41 +01:00
Uli Schlachter 5bbe6747fc tests: Add calls to awesome.sync() where needed
Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 19:34:41 +01:00
Uli Schlachter 54dd973e3f Add awesome.sync()
This function should only be necessary for the test suite. It makes sure
that the X11 server received and handled all previous requests that
awesome sent. This will be needed, for example, in tests that use
root.fake_input().

After a call to awesome.sync(), we are sure that "faking input" has been
done and the next main loop iteration will handle the input event.
Without the sync, it could happen that the X11 server did not yet fake
the input in the next iteration.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 19:34:41 +01:00
Uli Schlachter 0f755c8f12 Fix error handling in _client.lua
Previously we got the following unhelpful error message:

tests/_client.lua:98: bad argument #2 to 'assert' (string expected, got
userdata)

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 16:10:38 +01:00
Uli Schlachter 4c322a613f Ignore SIGPIPE
When the child process in tests/_client.lua breaks and exits (for
example: Remove the call to Gtk.main), we get a broken pipe. When trying
to write to the pipe that connects awesome to the child process, we get
a SIGPIPE signal that causes awesome to exit without any good error
message.

Fix this by ignoring SIGPIPE. We do not want to be killed by it anyway.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2017-01-02 16:06:04 +01:00
Uli Schlachter 6c3ac979a4 Merge branch 'struts' of https://github.com/psychon/awesome 2017-01-01 11:39:25 +01:00
Uli Schlachter 20b46cc2b3 tag_client: Update screen workarea
This fixes the last failure in test-struts.lua.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-31 15:35:33 +01:00
Uli Schlachter ea2d2cd038 untag_client: Update screen workarea
This partially fixes test-struts.lua. The test now fails at some later
part.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-31 15:34:09 +01:00
Uli Schlachter e5be281ff3 client_set_sticky: Update screen workarea
This partially fixes test-struts.lua. The test now fails at some later
part.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-31 15:31:41 +01:00
Uli Schlachter feb4fb0fbc tag_view: Update screen workarea
This partially fixes test-struts.lua. The test now fails at some later
part.

Fixes: https://github.com/awesomeWM/awesome/issues/1335
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-31 15:30:14 +01:00
Uli Schlachter c65cf9d3d3 test-struts.lua: Add tests for client struts
These new tests currently fail.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-31 15:27:28 +01:00
Uli Schlachter 9089874193 Fix indentation in test-struts.lua
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-31 14:51:29 +01:00
Daniel Hahler af961e974c doc: improve client.dockable (#1336) 2016-12-31 00:40:17 +01:00
Daniel Hahler bdf4c3e0c0 Travis: unpin ldoc again (#1334) 2016-12-31 00:39:55 +01:00
Uli Schlachter b4387d387d Add error checking in 05-awesomerc.md.lua (#1330)
io.open returns nil, an error message and an error code on failure. This
perfectly fits assert which will make the script fail with the error
message. Previously it would fail with "attempted to index a nil value".

Reference: https://www.reddit.com/r/awesomewm/comments/5kyqji/cant_build_git_awesome/
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-30 14:15:47 +01:00
Uli Schlachter e2a791ab05 Specify USES_TERMINAL for running tests/run.sh (#1331)
The documentation for CMake's add_custom_command()-command says the
following for USES_TERMINAL:

  The command will be given direct access to the terminal if possible.
  With the ``Ninja`` generator, this places the command in the
  ``console`` ``pool``.

The result is that one can see the progress of tests/run.sh, because
messages appear immediately instead of delayed (instead all other
parallel steps are delayed; in practice this means luacheck output
appears only after tests/run.sh is done).

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-30 14:12:54 +01:00
VincentWo 6a91dce425 Fix typo in awesomerc.lua (#1325) 2016-12-29 04:01:21 +01:00
Uli Schlachter e7b4898a7e Fix typo: Remove double tasklist_tasklist_ (#1323) 2016-12-28 22:25:23 +01:00
Uli Schlachter 4f1e502c26 Add a README for the apidoc repository (#1324)
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-28 22:23:51 +01:00
Uli Schlachter 9077dec275 Add text to ldoc index
This adds a short text with some hopefully helpful pointers to the top
of the index.html generated by ldoc.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-28 18:08:28 +01:00
Uli Schlachter fcf2c26bea Documentation: Add "my first awesome"
This document is based on the "my first awesome"-page in the old wiki.
Large parts of it are taken almost verbatim from it while others were
handled more freely. For example, instead of referring to the man page
for an overview of the available key bindings, this now mentions Mod4+S.

The "Add widgets"-section is just a todo. The wiki page refers to
Vicious which does not really work for our api documentation. However, I
also didn't want to just drop this part.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-28 18:08:28 +01:00
Daniel Hahler 58773488e4 tests: do not set -x by default on Travis (#1318)
This is rather noisy, and the test runner should not require this anymore for debugging.

[ci skip]
2016-12-28 12:43:00 +01:00
Daniel Hahler d13f465374 awful.screen: add stacked arg to some functions (#1301)
Fixes https://github.com/awesomeWM/awesome/issues/1300
2016-12-28 12:41:59 +01:00
Mikko Valkonen 397fb2eb7f doc: add instructions to pass args to cmake (#1317)
Adds a small note to the README for passing arguments to cmake during
the build by using the `CMAKE_ARGS` environment variable
2016-12-28 12:39:03 +01:00
Daniel Hahler 68de588f21 tests: fix indenting/style (#1303)
Basically:

> for f in **/*.lua; do vim '+set sw=4' '+norm gg=G' '+wq' "$f"; done
2016-12-27 21:39:08 +01:00
Uli Schlachter bdb7e90b74 Fix classmod in awful.widget.keyboardlayout (#1314)
Fixes: https://github.com/awesomeWM/awesome/issues/1313
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-27 21:38:20 +01:00
Uli Schlachter 32f0ab8198 Guarantee stable order for docs/03-declarative-layout.md (#1312)
Fixes: https://github.com/awesomeWM/awesome/issues/1257
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-27 16:31:07 +01:00
Till Kothe fb58374b00 Add missing $ for XDG_CONFIG_DIRS in manpages (#1311)
Fixes #1310.
2016-12-27 16:29:45 +01:00
Daniel Hahler 8f8094b57e tests/run.sh: allow to pass full file name
This is easier with shell completion.
2016-12-27 02:43:05 +01:00
Daniel Hahler 8e97ae51c3 tests/run.sh: remove exclamation mark for better copy'n'paste experience
Closes https://github.com/awesomeWM/awesome/pull/1293.
2016-12-27 02:43:05 +01:00
Daniel Hahler 58c068b17e doc: fix authors (#1304)
Proper links for URL/mailto, and minor formatting fixes.
2016-12-27 02:42:41 +01:00
Daniel Hahler fdc93e68da build: use git-describe with just .git / add 'Using version from …' msg (#1302)
With Git submodules there is only a `.git` file typically, e.g.:

> gitdir: /home/user/Vcs/awesome-www/.git/modules/src
2016-12-25 23:17:54 +01:00
Emmanuel Lepage Vallee 58fed31d88 change codename 2016-12-25 22:17:14 +01:00
Daniel Hahler 44698ed227 Merge pull request #1295 from blueyed/travis-fix-test-each-commit
Travis: fix testing each commit
2016-12-25 16:22:22 +01:00
Daniel Hahler 69915fb658 Travis: fix "Testing previous commits"
Fixes/massages TRAVIS_COMMIT_RANGE.

Ref: https://github.com/awesomeWM/awesome/pull/1298#pullrequestreview-14364986
2016-12-25 16:03:40 +01:00
Daniel Hahler 88cca77fdb Travis: use travis_fold function for folds
Ref: 7cac7d393c/lib/travis/shell/generator/bash.rb (L109-L116)
2016-12-25 16:03:40 +01:00
Uli Schlachter 3f9da4269d Fix test in test-spawn.lua (#1298)
Copy-paste-y I was checking for the wrong result. Another unrelated
problem with the test runner caused me to miss this. Sorry!

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-25 15:47:09 +01:00
Daniel Hahler 4abd820051 tests: fix incrementing errors (#1297) 2016-12-25 15:13:22 +01:00
Uli Schlachter 59cd409517 Small cleanup to test-spawn.lua
This removes a duplicate test and moves some "spawn with empty string as
argument" up to the long list of similar tests (and adds error
checking).

I do not see the point of the assert(#client.get() == 0) and so it was
just dropped.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-25 14:50:39 +01:00
Uli Schlachter 461da9ea4b Fix error handling in awesome.spawn()
Commit 5e6a893 broke error handling in awesome.spawn(): Instead of
returning an error message, it would just return its last argument.

This commit fixes that, removes some not-so-helpful warnings, and adds
lots of tests for this code.

Fixes: https://github.com/awesomeWM/awesome/issues/1281
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-25 14:50:39 +01:00
Uli Schlachter 40c653c4b6 Fix luacheck warnings in wibox.drawable
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-12-25 13:05:26 +01:00
Uli Schlachter 0907411997 Merge branch 'force-drawable-screen' of https://github.com/psychon/awesome 2016-12-25 11:09:58 +01:00
Daniel Hahler fb874122ba tests/run.sh: SHELL=/bin/sh, HOME=/dev/null (#1291) 2016-12-25 03:46:28 +01:00
Daniel Hahler d5b3fa8be0 Merge pull request #1290 from blueyed/tests-run-shellcheck-etc
tests/run.sh: shellcheck and other fixes
2016-12-25 03:43:50 +01:00