From 7ffb8075b14c4ad028aeab18849c631673be1928 Mon Sep 17 00:00:00 2001 From: Arno Strouwen Date: Wed, 13 Dec 2023 02:07:12 +0100 Subject: [PATCH] Aqua CI --- Project.toml | 15 ++++++++++++++- test/qa.jl | 12 ++++++++++++ test/runtests.jl | 1 + 3 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 test/qa.jl diff --git a/Project.toml b/Project.toml index 7bbc50930..7d8261d16 100644 --- a/Project.toml +++ b/Project.toml @@ -44,7 +44,9 @@ SymPy = "24249f21-da20-56a4-8eb1-6a02cf4ae2e6" SymbolicsSymPyExt = "SymPy" [compat] +Aqua = "0.8" ArrayInterface = "6, 7" +BenchmarkTools = "1" Bijections = "0.1" ConstructionBase = "1.1, 1.2" DataStructures = "0.18" @@ -58,24 +60,35 @@ IfElse = "0.1" LaTeXStrings = "1.3" LambertW = "0.4.5" Latexify = "0.11, 0.12, 0.13, 0.14, 0.15, 0.16" +Libdl = "1" +LinearAlgebra = "1" LogExpFunctions = "0.3" MacroTools = "0.5" +Markdown = "1" NaNMath = "0.3, 1" +Pkg = "1" +PkgBenchmark = "0.2" PrecompileTools = "1" +Random = "1" RecipesBase = "1.1" Reexport = "0.2, 1" ReferenceTests = "0.9" Requires = "1.1" RuntimeGeneratedFunctions = "0.5.9" +SafeTestsets = "0.1" SciMLBase = "1.8, 2" Setfield = "0.7, 0.8, 1" +SparseArrays = "1" SpecialFunctions = "0.7, 0.8, 0.9, 0.10, 1.0, 2" StaticArrays = "1.1" SymbolicIndexingInterface = "0.3" SymbolicUtils = "1.4" +SymPy = "2" +Test = "1" julia = "1.6" [extras] +Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" PkgBenchmark = "32113eaa-f34f-5b0d-bd6c-c81e245fc73d" @@ -86,4 +99,4 @@ SymPy = "24249f21-da20-56a4-8eb1-6a02cf4ae2e6" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [targets] -test = ["Test", "SafeTestsets", "Pkg", "PkgBenchmark", "BenchmarkTools", "ReferenceTests", "SymPy", "Random"] +test = ["Aqua", "Test", "SafeTestsets", "Pkg", "PkgBenchmark", "BenchmarkTools", "ReferenceTests", "SymPy", "Random"] diff --git a/test/qa.jl b/test/qa.jl new file mode 100644 index 000000000..12b96deea --- /dev/null +++ b/test/qa.jl @@ -0,0 +1,12 @@ +using Symbolics, Aqua +@testset "Aqua" begin + Aqua.test_ambiguities(Symbolics, recursive = false) + Aqua.test_deps_compat(Symbolics) + Aqua.test_piracies(Symbolics, + treat_as_own = [Symbolics.Symbolic, Symbolics.Sym]) + Aqua.test_project_extras(Symbolics) + Aqua.test_stale_deps(Symbolics) + Aqua.test_unbound_args(Symbolics) + Aqua.test_undefined_exports(Symbolics) + Aqua.find_persistent_tasks_deps(Symbolics) +end diff --git a/test/runtests.jl b/test/runtests.jl index 27d013a61..bac8543b4 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -18,6 +18,7 @@ limit(a, N) = a == N + 1 ? 1 : a == 0 ? N : a @register_symbolic limit(a, N)::Integer if GROUP == "All" || GROUP == "Core" + @safetestset "Quality Assurance" begin include("qa.jl") end @safetestset "Macro Test" begin include("macro.jl") end @safetestset "Arrays" begin include("arrays.jl") end @safetestset "View-setting" begin include("stencils.jl") end