In various places in the tests, e.g. in silicon tests such as silicon_lda.jl, the following pattern appears:
|
@testitem "Silicon LDA (small, Float64)" #= |
|
=# tags=[:minimal] setup=[RunSCF, TestCases, SiliconLDA] begin |
|
SiliconLDA.run_silicon_lda(Float64; Ecut=7, test_tol=0.03, n_ignored=0, grid_size=17, |
|
scf_ene_tol=1e-5) |
|
end |
There is a couple of issues with that:
-
Without having a close look at the SiliconLDA @testmodule, it is not obvious that TestCases is required in the setup. Arguably, it's not even that clear when looking at the code.
-
The order of the required modules in the test setup matters: setup=[RunSCF, TestCases, SiliconLDA] works, but setup=[RunSCF, SiliconLDA, TestCases] does not.
This is a somewhat opaque and error prone. Making things more explicit might save time in the long run.
In various places in the tests, e.g. in silicon tests such as
silicon_lda.jl, the following pattern appears:DFTK.jl/test/silicon_lda.jl
Lines 41 to 45 in 6a36ac6
There is a couple of issues with that:
Without having a close look at the SiliconLDA
@testmodule, it is not obvious thatTestCasesis required in the setup. Arguably, it's not even that clear when looking at the code.The order of the required modules in the test setup matters:
setup=[RunSCF, TestCases, SiliconLDA]works, butsetup=[RunSCF, SiliconLDA, TestCases]does not.This is a somewhat opaque and error prone. Making things more explicit might save time in the long run.