Add optional io choosing for cowsay
and cowthink
This commit is contained in:
parent
a25f5f4678
commit
d2a4226cbb
2 changed files with 20 additions and 5 deletions
|
@ -39,8 +39,8 @@ include("cows/vader.cow.jl")
|
|||
include("cows/www.cow.jl")
|
||||
|
||||
"""
|
||||
cowsay(message::AbstractString; kwargs...)
|
||||
cowthink(message::AbstractString; kwargs...)
|
||||
cowsay([io,] message::AbstractString; kwargs...)
|
||||
cowthink([io,] message::AbstractString; kwargs...)
|
||||
|
||||
Print an ASCII picture of a cow saying/thinking `message`
|
||||
|
||||
|
@ -79,18 +79,26 @@ julia> cowthink("Have I mooed today?")
|
|||
```
|
||||
"""
|
||||
function cowsay(message::AbstractString; cow=default, eyes="oo", tongue=" ")
|
||||
println(cowsaid(message, cow=cow, eyes=eyes, tongue=tongue))
|
||||
cowsay(stdout, message, cow=cow, eyes=eyes, tongue=tongue)
|
||||
end
|
||||
|
||||
function cowsay(io::IO, message::AbstractString; cow=default, eyes="oo", tongue=" ")
|
||||
println(io, cowsaid(message, cow=cow, eyes=eyes, tongue=tongue))
|
||||
end
|
||||
|
||||
"""
|
||||
cowthink(message::AbstractString; kwargs...)
|
||||
cowthink([io,] message::AbstractString; kwargs...)
|
||||
|
||||
Print an ASCII picture of a cow thinking `message`
|
||||
|
||||
See [`cowsay`](@ref)
|
||||
"""
|
||||
function cowthink(message::AbstractString; cow=default, eyes="oo", tongue=" ")
|
||||
println(cowthunk(message, cow=cow, eyes=eyes, tongue=tongue))
|
||||
cowthink(stdout, message, cow=cow, eyes=eyes, tongue=tongue)
|
||||
end
|
||||
|
||||
function cowthink(io::IO, message::AbstractString; cow=default, eyes="oo", tongue=" ")
|
||||
println(io, cowthunk(message, cow=cow, eyes=eyes, tongue=tongue))
|
||||
end
|
||||
|
||||
"""
|
||||
|
|
|
@ -18,4 +18,11 @@ DocMeta.setdocmeta!(Cowsay, :DocTestSetup, :(using Cowsay); recursive=true)
|
|||
# Multi-liner say balloon
|
||||
@test Cowsay.sayballoon("One line\nTwo line\nRed line\nBlue line") == " ___________\n/ One line \\\n| Two line |\n| Red line |\n\\ Blue line /\n -----------\n"
|
||||
end
|
||||
@testset "IO Funkiness" begin
|
||||
# Cowsay with io redirection
|
||||
@test_warn cowsaid("Moo") cowsay(stderr, "Moo")
|
||||
|
||||
# Cowthink with io redirection
|
||||
@test_warn cowthunk("Moo") cowthink(stderr, "Moo")
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue