nitlanguage
/
nit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge: Added contributing guidelines and link from readme
[nit.git]
/
src
/
testing
/
testing_base.nit
diff --git
a/src/testing/testing_base.nit
b/src/testing/testing_base.nit
index
f924141
..
36ce1f9
100644
(file)
--- a/
src/testing/testing_base.nit
+++ b/
src/testing/testing_base.nit
@@
-107,8
+107,9
@@
ulimit -t {{{ulimit_usertime}}} 2> /dev/null
fun show_unit_status(name: String, tests: SequenceRead[UnitTest])
do
var esc = 27.code_point.to_s
fun show_unit_status(name: String, tests: SequenceRead[UnitTest])
do
var esc = 27.code_point.to_s
- var line = "\r{esc}[K* {name} ["
+ var line = "\r\x1B[K==== {name} ["
var done = tests.length
var done = tests.length
+ var fails = 0
for t in tests do
if not t.is_done then
line += " "
for t in tests do
if not t.is_done then
line += " "
@@
-117,17
+118,27
@@
ulimit -t {{{ulimit_usertime}}} 2> /dev/null
line += ".".green.bold
else
line += "X".red.bold
line += ".".green.bold
else
line += "X".red.bold
+ fails += 1
end
end
if not has_progress_bar then
if done == 0 then
end
end
if not has_progress_bar then
if done == 0 then
- print "* {name} ({tests.length} tests)"
+ print "==== {name} | tests: {tests.length}"
end
return
end
end
return
end
- line += "] {done}/{tests.length}"
+ if done < tests.length then
+ line += "] {done}/{tests.length}"
+ else
+ line += "] tests: {tests.length} "
+ if fails == 0 then
+ line += "OK".green.bold
+ else
+ line += "KO: {fails}".red.bold
+ end
+ end
printn "{line}"
end
printn "{line}"
end
@@
-187,6
+198,9
@@
abstract class UnitTest
# The location where the error occurred, if it makes sense.
var error_location: nullable Location = null is writable
# The location where the error occurred, if it makes sense.
var error_location: nullable Location = null is writable
+ # Additional noteworthy information when a test success.
+ var info: nullable String = null
+
# A colorful `[OK]` or `[KO]`.
fun status_tag(color: nullable Bool): String do
color = color or else true
# A colorful `[OK]` or `[KO]`.
fun status_tag(color: nullable Bool): String do
color = color or else true
@@
-225,6
+239,10
@@
abstract class UnitTest
else
res = "{status_tag(color)} {full_name}"
if more_message != null then res += more_message
else
res = "{status_tag(color)} {full_name}"
if more_message != null then res += more_message
+ var info = self.info
+ if info != null then
+ res += "\n {info}"
+ end
end
return res
end
end
return res
end