Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
04e2410d
"tests/vscode:/vscode.git/clone" did not exist on "0425c60381f9f2d1adf5a08b48f305ecf30dbfa6"
Commit
04e2410d
authored
Jul 11, 2011
by
antirez
Browse files
initial support for failed tests summary at end of the test.
parent
30cf7be6
Changes
2
Show whitespace changes
Inline
Side-by-side
tests/test_helper.tcl
View file @
04e2410d
...
@@ -46,6 +46,7 @@ set ::external 0; # If "1" this means, we are running against external instance
...
@@ -46,6 +46,7 @@ set ::external 0; # If "1" this means, we are running against external instance
set ::file
""
;
# If set, runs only the tests in this comma separated list
set ::file
""
;
# If set, runs only the tests in this comma separated list
set ::curfile
""
;
# Hold the filename of the current suite
set ::curfile
""
;
# Hold the filename of the current suite
set ::accurate 0
;
# If true runs fuzz tests with more iterations
set ::accurate 0
;
# If true runs fuzz tests with more iterations
set ::force_failure 0
# Set to 1 when we are running in client mode. The Redis test uses a
# Set to 1 when we are running in client mode. The Redis test uses a
# server-client model to run tests simultaneously. The server instance
# server-client model to run tests simultaneously. The server instance
...
@@ -183,6 +184,7 @@ proc test_server_main {} {
...
@@ -183,6 +184,7 @@ proc test_server_main {} {
set ::active_clients
{}
set ::active_clients
{}
array set ::clients_start_time
{}
array set ::clients_start_time
{}
set ::clients_time_history
{}
set ::clients_time_history
{}
set ::failed_tests
{}
# Enter the event loop to handle clients I/O
# Enter the event loop to handle clients I/O
after 100 test_server_cron
after 100 test_server_cron
...
@@ -228,7 +230,9 @@ proc read_from_test_client fd {
...
@@ -228,7 +230,9 @@ proc read_from_test_client fd {
}
elseif
{
$status
eq
{
ok
}}
{
}
elseif
{
$status
eq
{
ok
}}
{
puts
"
\[
[
colorstr green $status
]
\]
:
$data
"
puts
"
\[
[
colorstr green $status
]
\]
:
$data
"
}
elseif
{
$status
eq
{
err
}}
{
}
elseif
{
$status
eq
{
err
}}
{
puts
"
\[
[
colorstr red $status
]
\]
:
$data
"
set err
"
\[
[
colorstr red $status
]
\]
:
$data
"
puts $err
lappend ::failed_tests $err
}
elseif
{
$status
eq
{
exception
}}
{
}
elseif
{
$status
eq
{
exception
}}
{
puts
"
\[
[
colorstr red $status
]
\]
:
$data
"
puts
"
\[
[
colorstr red $status
]
\]
:
$data
"
foreach p $::clients_pids
{
foreach p $::clients_pids
{
...
@@ -267,12 +271,21 @@ proc signal_idle_client fd {
...
@@ -267,12 +271,21 @@ proc signal_idle_client fd {
# executed, so the test finished.
# executed, so the test finished.
proc the_end
{}
{
proc the_end
{}
{
# TODO: print the status, exit with the rigth exit code.
# TODO: print the status, exit with the rigth exit code.
puts
"The End
\n
"
puts
"
\n
The End
\n
"
puts
"Execution time of different units:"
puts
"Execution time of different units:"
foreach
{
time name
}
$::clients_time_history
{
foreach
{
time name
}
$::clients_time_history
{
puts
"
$time
seconds -
$name
"
puts
"
$time
seconds -
$name
"
}
}
if
{[
llength $::failed_tests
]}
{
puts
"!!! WARNING: The following tests failed
\n
"
foreach failed $::failed_tests
{
puts
"***
$failed
"
}
exit 1
exit 1
}
else
{
puts
"
\n
[
colorstr bold-white
{
\o
/
}]
[
colorstr bold-green
{
All tests passed without errors!
}]
\n
"
exit 0
}
}
}
# The client is not even driven
(
the test server is instead
)
as we just need
# The client is not even driven
(
the test server is instead
)
as we just need
...
@@ -328,6 +341,8 @@ for {set j 0} {$j < [llength $argv]} {incr j} {
...
@@ -328,6 +341,8 @@ for {set j 0} {$j < [llength $argv]} {incr j} {
set ::verbose 1
set ::verbose 1
}
elseif
{
$opt
eq
{
--accurate
}}
{
}
elseif
{
$opt
eq
{
--accurate
}}
{
set ::accurate 1
set ::accurate 1
}
elseif
{
$opt
eq
{
--force-failure
}}
{
set ::force_failure 1
}
elseif
{
$opt
eq
{
--single
}}
{
}
elseif
{
$opt
eq
{
--single
}}
{
set ::all_tests $arg
set ::all_tests $arg
incr j
incr j
...
...
tests/unit/other.tcl
View file @
04e2410d
...
@@ -242,4 +242,11 @@ start_server {tags {"other"}} {
...
@@ -242,4 +242,11 @@ start_server {tags {"other"}} {
test
{
Perform a final SAVE to leave a clean DB on disk
}
{
test
{
Perform a final SAVE to leave a clean DB on disk
}
{
r save
r save
}
{
OK
}
}
{
OK
}
if
{
$::force
_failure
}
{
# This is used just for test suite development purposes.
test
{
Failing test
}
{
format err
}
{
ok
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment