Merge branch 'examples_tests_during_build' of https://github.com/psychon/awesome
This commit is contained in:
commit
15a508f022
|
@ -188,6 +188,14 @@ function(run_test test_path namespace escaped_content)
|
||||||
set(DOC_BLOCK_PREFIX "@usage")
|
set(DOC_BLOCK_PREFIX "@usage")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Does the text generate text output?
|
||||||
|
if(tmp_content MATCHES "--DOC_GEN_OUTPUT")
|
||||||
|
# The expected output is next to the .lua file in a .output.txt file
|
||||||
|
string(REPLACE ".lua" ".output.txt" expected_output_path ${test_path})
|
||||||
|
else()
|
||||||
|
set(expected_output_path "/dev/null")
|
||||||
|
endif()
|
||||||
|
|
||||||
# Get the file name without the extension.
|
# Get the file name without the extension.
|
||||||
get_filename_component(${test_path} TEST_FILE_NAME NAME)
|
get_filename_component(${test_path} TEST_FILE_NAME NAME)
|
||||||
set(IMAGE_PATH "${IMAGE_DIR}/AUTOGEN${namespace}_${TEST_FILE_NAME}")
|
set(IMAGE_PATH "${IMAGE_DIR}/AUTOGEN${namespace}_${TEST_FILE_NAME}")
|
||||||
|
@ -197,12 +205,12 @@ function(run_test test_path namespace escaped_content)
|
||||||
message(STATUS "Running ${rel_test_path}…")
|
message(STATUS "Running ${rel_test_path}…")
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${LUA_COV_RUNNER} ${template} ${test_path} ${IMAGE_PATH}
|
COMMAND "${TOP_SOURCE_DIR}/tests/examples/runner.sh" "${expected_output_path}" ${LUA_COV_RUNNER} ${template} ${test_path} ${IMAGE_PATH}
|
||||||
RESULT_VARIABLE TEST_RESULT
|
RESULT_VARIABLE TEST_RESULT
|
||||||
OUTPUT_VARIABLE TEST_OUTPUT
|
OUTPUT_VARIABLE TEST_OUTPUT
|
||||||
ERROR_VARIABLE TEST_ERROR
|
ERROR_VARIABLE TEST_ERROR
|
||||||
)
|
)
|
||||||
if (TEST_RESULT OR NOT TEST_ERROR STREQUAL "")
|
if (TEST_RESULT OR NOT TEST_OUTPUT STREQUAL "" OR NOT TEST_ERROR STREQUAL "")
|
||||||
message("Result: ${TEST_RESULT}")
|
message("Result: ${TEST_RESULT}")
|
||||||
if (NOT TEST_OUTPUT STREQUAL "")
|
if (NOT TEST_OUTPUT STREQUAL "")
|
||||||
message("Output: ${TEST_OUTPUT}")
|
message("Output: ${TEST_OUTPUT}")
|
||||||
|
@ -232,19 +240,19 @@ function(run_test test_path namespace escaped_content)
|
||||||
set(OUTPUT_IMAGE_PATH "")
|
set(OUTPUT_IMAGE_PATH "")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Does the text generate text output?
|
||||||
# If there is an output, assume it is relevant and add it to the
|
# If there is an output, assume it is relevant and add it to the
|
||||||
# documentation under the image.
|
# documentation under the image.
|
||||||
if(NOT ${TEST_OUTPUT} STREQUAL "")
|
if(tmp_content MATCHES "--DOC_GEN_OUTPUT")
|
||||||
if(NOT tmp_content MATCHES "--DOC_GEN_OUTPUT")
|
file(READ "${expected_output_path}" expected_output)
|
||||||
message(FATAL_ERROR "Unexpected output from ${test_path}: ${TEST_OUTPUT}")
|
|
||||||
endif()
|
|
||||||
set(TEST_DOC_CONTENT
|
set(TEST_DOC_CONTENT
|
||||||
"${TEST_DOC_CONTENT}\n${DOC_LINE_PREFIX}\n${DOC_LINE_PREFIX}**Usage example output**:\n${DOC_LINE_PREFIX}"
|
"${TEST_DOC_CONTENT}\n${DOC_LINE_PREFIX}\n${DOC_LINE_PREFIX}**Usage example output**:\n${DOC_LINE_PREFIX}"
|
||||||
)
|
)
|
||||||
|
|
||||||
# Markdown requires an empty line before and after, and 4 spaces.
|
# Markdown requires an empty line before and after, and 4 spaces.
|
||||||
escape_string(
|
escape_string(
|
||||||
"\n${TEST_OUTPUT}"
|
"\n${expected_output}"
|
||||||
"${TEST_DOC_CONTENT}" TEST_DOC_CONTENT " "
|
"${TEST_DOC_CONTENT}" TEST_DOC_CONTENT " "
|
||||||
)
|
)
|
||||||
set(TEST_DOC_CONTENT "${TEST_DOC_CONTENT}\n${DOC_LINE_PREFIX}")
|
set(TEST_DOC_CONTENT "${TEST_DOC_CONTENT}\n${DOC_LINE_PREFIX}")
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
235
|
|
@ -0,0 +1 @@
|
||||||
|
Closest corner: top_left
|
|
@ -0,0 +1,2 @@
|
||||||
|
Before: x=-30, y=-30, width=100, height=100
|
||||||
|
After: x=10, y=10, width=100, height=100
|
|
@ -0,0 +1,51 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Todo: Give this shell script a sane calling convention. Right now it has a
|
||||||
|
# file containing the expected output as first argument and just executes
|
||||||
|
# everything else.
|
||||||
|
|
||||||
|
set -ue
|
||||||
|
|
||||||
|
# Cleanup on errors / aborting
|
||||||
|
cleanup() {
|
||||||
|
rm -rf "$file_stderr" "$file_stdout" || true
|
||||||
|
}
|
||||||
|
trap "cleanup" 0 2 3 15
|
||||||
|
|
||||||
|
file_stdout=$(mktemp)
|
||||||
|
file_stderr=$(mktemp)
|
||||||
|
|
||||||
|
expected_output=$1
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Run the command that we were given
|
||||||
|
exit_code=0
|
||||||
|
"$@" > ${file_stdout} 2> ${file_stderr} || exit_code=$?
|
||||||
|
|
||||||
|
# If exit code is not zero or anything was produced on stderr...
|
||||||
|
if [ $exit_code -ne 0 -o -s "${file_stderr}" ]
|
||||||
|
then
|
||||||
|
echo "Result: ${exit_code}"
|
||||||
|
if [ -s "${file_stdout}" ]
|
||||||
|
then
|
||||||
|
echo "Output:"
|
||||||
|
cat "${file_stdout}"
|
||||||
|
fi
|
||||||
|
if [ -s "${file_stderr}" ]
|
||||||
|
then
|
||||||
|
echo "Error:"
|
||||||
|
cat "${file_stderr}"
|
||||||
|
fi
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if we got the output we wanted
|
||||||
|
if ! cmp --silent "${file_stdout}" "${expected_output}"
|
||||||
|
then
|
||||||
|
echo "Expected text from ${expected_output}, but got:"
|
||||||
|
diff -u "${expected_output}" "${file_stdout}" || true
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
# vim: filetype=sh:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
|
|
@ -23,7 +23,7 @@ function class:set_foo(value)
|
||||||
end
|
end
|
||||||
|
|
||||||
function class:method(a, b, c)
|
function class:method(a, b, c)
|
||||||
print("In a mathod", a, b, c)
|
print("In a method", a, b, c)
|
||||||
end
|
end
|
||||||
|
|
||||||
local o = gears.object {
|
local o = gears.object {
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
In get foo bar
|
||||||
|
bar
|
||||||
|
In set foo 42
|
||||||
|
In get foo 42
|
||||||
|
42
|
||||||
|
In a method 1 2 3
|
||||||
|
nil
|
||||||
|
In the connection handler! a cow
|
||||||
|
a cow
|
|
@ -0,0 +1,2 @@
|
||||||
|
In slot [obj] nil nil nil
|
||||||
|
In slot [obj] foo bar 42
|
|
@ -0,0 +1,6 @@
|
||||||
|
The position #1 is: a
|
||||||
|
The position #2 is: b
|
||||||
|
The position #3 is: c
|
||||||
|
The position #4 is: d
|
||||||
|
The position #5 is: e
|
||||||
|
The position #6 is: f
|
|
@ -0,0 +1 @@
|
||||||
|
l:add_widget_at(new, 1, 4, 1, 1)
|
|
@ -0,0 +1 @@
|
||||||
|
l:extend_column(2)
|
|
@ -0,0 +1 @@
|
||||||
|
l:insert_column(2)
|
|
@ -10,8 +10,7 @@ print([[l = wibox.layout {
|
||||||
layout = wibox.layout.grid
|
layout = wibox.layout.grid
|
||||||
}
|
}
|
||||||
l:set_orientation("vertical") -- change to "horizontal"
|
l:set_orientation("vertical") -- change to "horizontal"
|
||||||
l:add(...)
|
l:add(...)]]) --DOC_HIDE
|
||||||
]]) --DOC_HIDE
|
|
||||||
|
|
||||||
return --DOC_HIDE
|
return --DOC_HIDE
|
||||||
wibox.widget {
|
wibox.widget {
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
l = wibox.layout {
|
||||||
|
forced_num_cols = 2,
|
||||||
|
forced_num_rows = 2,
|
||||||
|
homogeneous = true,
|
||||||
|
layout = wibox.layout.grid
|
||||||
|
}
|
||||||
|
l:set_orientation("vertical") -- change to "horizontal"
|
||||||
|
l:add(...)
|
|
@ -0,0 +1 @@
|
||||||
|
l:remove_widgets_at(1,1)
|
|
@ -0,0 +1 @@
|
||||||
|
l:remove_column(2)
|
Loading…
Reference in New Issue