mirror of
https://github.com/JuliaFEM/JuliaFEM.jl.git
synced 2026-08-06 04:21:33 +00:00
initial commit
This commit is contained in:
@@ -0,0 +1,67 @@
|
|||||||
|
# This file is a part of Julia. License is MIT: http://julialang.org/license
|
||||||
|
|
||||||
|
@doc """
|
||||||
|
|
||||||
|
`tests, net_on = choosetests(choices)` selects a set of tests to be
|
||||||
|
run. `choices` should be a vector of test names; if empty or set to
|
||||||
|
`["all"]`, all tests are selected.
|
||||||
|
|
||||||
|
This function also supports "test collections": specifically, "linalg"
|
||||||
|
refers to collections of tests in the correspondingly-named
|
||||||
|
directories.
|
||||||
|
|
||||||
|
Upon return, `tests` is a vector of fully-expanded test names, and
|
||||||
|
`net_on` is true if networking is available (required for some tests).
|
||||||
|
""" ->
|
||||||
|
function choosetests(choices = [])
|
||||||
|
testnames = [
|
||||||
|
"testing_testing"
|
||||||
|
]
|
||||||
|
|
||||||
|
if Base.USE_GPL_LIBS && 1 == 0
|
||||||
|
testnames = [testnames, "fft", "dsp"; ]
|
||||||
|
end
|
||||||
|
|
||||||
|
if isdir(joinpath(JULIA_HOME, Base.DOCDIR, "examples")) && 1 == 0
|
||||||
|
push!(testnames, "examples")
|
||||||
|
end
|
||||||
|
|
||||||
|
# parallel tests depend on other workers - do them last
|
||||||
|
#push!(testnames, "parallel")
|
||||||
|
|
||||||
|
tests = (ARGS==["all"] || isempty(ARGS)) ? testnames : ARGS
|
||||||
|
|
||||||
|
if "linalg" in tests
|
||||||
|
# specifically selected case
|
||||||
|
filter!(x -> x != "linalg", tests)
|
||||||
|
linalgtests = ["linalg1", "linalg2", "linalg3", "linalg4",
|
||||||
|
"linalg/lapack", "linalg/triangular", "linalg/tridiag",
|
||||||
|
"linalg/bidiag", "linalg/diagonal",
|
||||||
|
"linalg/pinv", "linalg/givens", "linalg/cholesky", "linalg/lu",
|
||||||
|
"linalg/symmetric"]
|
||||||
|
if Base.USE_GPL_LIBS
|
||||||
|
push!(linalgtests, "linalg/arnoldi")
|
||||||
|
end
|
||||||
|
prepend!(tests, linalgtests)
|
||||||
|
end
|
||||||
|
|
||||||
|
net_required_for = []
|
||||||
|
net_on = true
|
||||||
|
try
|
||||||
|
getipaddr()
|
||||||
|
catch
|
||||||
|
warn("Networking unavailable: Skipping tests [" * join(net_required_for, ", ") * "]")
|
||||||
|
net_on = false
|
||||||
|
end
|
||||||
|
|
||||||
|
if ccall(:jl_running_on_valgrind,Cint,()) != 0 && "rounding" in tests
|
||||||
|
warn("Running under valgrind: Skipping rounding tests")
|
||||||
|
filter!(x -> x != "rounding", tests)
|
||||||
|
end
|
||||||
|
|
||||||
|
if !net_on
|
||||||
|
filter!(x -> !(x in net_required_for), tests)
|
||||||
|
end
|
||||||
|
|
||||||
|
tests, net_on
|
||||||
|
end
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
# This file is a part of Julia. License is MIT: http://julialang.org/license
|
||||||
|
|
||||||
|
include("choosetests.jl")
|
||||||
|
tests, net_on = choosetests(ARGS)
|
||||||
|
cd(dirname(@__FILE__)) do
|
||||||
|
n = 1
|
||||||
|
if net_on
|
||||||
|
n = min(8, CPU_CORES, length(tests))
|
||||||
|
n > 1 && addprocs(n; exeflags=`--check-bounds=yes`)
|
||||||
|
blas_set_num_threads(1)
|
||||||
|
end
|
||||||
|
|
||||||
|
@everywhere include("testdefs.jl")
|
||||||
|
|
||||||
|
reduce(propagate_errors, nothing, pmap(runtests, tests; err_retry=false, err_stop=true))
|
||||||
|
|
||||||
|
@unix_only n > 1 && rmprocs(workers(), waitfor=5.0)
|
||||||
|
println(" \033[32;1mSUCCESS\033[0m")
|
||||||
|
end
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
# This file is a part of Julia. License is MIT: http://julialang.org/license
|
||||||
|
|
||||||
|
using Base.Test
|
||||||
|
|
||||||
|
function runtests(name)
|
||||||
|
@printf(" \033[1m*\033[0m \033[31m%-20s\033[0m", name)
|
||||||
|
tt = @elapsed Core.include(abspath("$name.jl"))
|
||||||
|
@printf(" in %6.2f seconds\n", tt)
|
||||||
|
nothing
|
||||||
|
end
|
||||||
|
|
||||||
|
function propagate_errors(a,b)
|
||||||
|
if isa(a,Exception)
|
||||||
|
rethrow(a)
|
||||||
|
end
|
||||||
|
if isa(b,Exception)
|
||||||
|
rethrow(b)
|
||||||
|
end
|
||||||
|
nothing
|
||||||
|
end
|
||||||
|
|
||||||
|
# looking in . messes things up badly
|
||||||
|
filter!(x->x!=".", LOAD_PATH)
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
# This file is a part of JuliaFEM. License is MIT: https://github.com/ovainola/JuliaFEM/blob/master/README.md
|
||||||
|
|
||||||
|
using Base.Test
|
||||||
|
|
||||||
|
@test 1 == 1
|
||||||
Reference in New Issue
Block a user