diff --git a/src/SpaceExParser.jl b/src/SpaceExParser.jl index 719fca5..8335a3f 100644 --- a/src/SpaceExParser.jl +++ b/src/SpaceExParser.jl @@ -6,11 +6,17 @@ export readsxmodel, writesxmodel Load dependencies =========================================# -using HybridSystems, LazySets using DataStructures: OrderedDict -import MathematicalSystems -using MathematicalSystems: AbstractSystem, AbstractContinuousSystem, - LinearContinuousSystem, LinearControlContinuousSystem, +using EzXML: readxml, root, eachelement, nodename, nodecontent +using HybridSystems: AbstractSwitching, AutonomousSwitching, GraphAutomaton, + HybridSystem, add_transition!, assignment, guard, inputdim, + inputset, nmodes, ntransitions, resetmap, source, statedim, + stateset, target, transitions +using LazySets: LazySets, AbstractHyperrectangle, HalfSpace, Hyperplane, + Intersection, LazySet, Singleton, dim, high, isuniversal, low +using MathematicalSystems: MathematicalSystems, AbstractSystem, + AbstractContinuousSystem, LinearContinuousSystem, + LinearControlContinuousSystem, AffineContinuousSystem, AffineControlContinuousSystem, ConstrainedLinearContinuousSystem, @@ -18,8 +24,7 @@ using MathematicalSystems: AbstractSystem, AbstractContinuousSystem, ConstrainedLinearControlDiscreteSystem, ConstrainedAffineContinuousSystem, ConstrainedAffineControlContinuousSystem -using EzXML: readxml, root, eachelement, nodename, nodecontent -using SymEngine: Basic, subs +using SymEngine: Basic, free_symbols, subs import Base: convert diff --git a/src/parse.jl b/src/parse.jl index da66337..3505eef 100644 --- a/src/parse.jl +++ b/src/parse.jl @@ -1,4 +1,4 @@ -const _parse_s = Base.Meta.parse +const _parse_s = Base.Meta.parse # NOTE: this is an internal function const _parse_t = Base.parse """ diff --git a/src/symbolic.jl b/src/symbolic.jl index 98c1c2c..9d6e3fe 100644 --- a/src/symbolic.jl +++ b/src/symbolic.jl @@ -208,16 +208,16 @@ end # ref_tuple is used for the error message function _add_invariants!(X, U, invariants, state_variables, input_variables, ref_tuple) for invi in invariants - if LazySets._ishyperplanar(invi) + if LazySets._ishyperplanar(invi) # NOTE: this is an internal function set_type = Hyperplane{NUM} - elseif LazySets._ishalfspace(invi) + elseif LazySets._ishalfspace(invi) # NOTE: this is an internal function set_type = HalfSpace{NUM} else loc_or_trans, id = ref_tuple error_msg_set(loc_or_trans, invi, id) end - vars = LazySets.free_symbols(invi, set_type) + vars = free_symbols(invi, set_type) got_state_invariant = all(si in state_variables for si in vars) got_input_invariant = all(si in input_variables for si in vars) if got_state_invariant diff --git a/test/Aqua.jl b/test/Aqua.jl deleted file mode 100644 index 2d9d73d..0000000 --- a/test/Aqua.jl +++ /dev/null @@ -1,6 +0,0 @@ -using SpaceExParser, Test -import Aqua - -@testset "Aqua tests" begin - Aqua.test_all(SpaceExParser) -end diff --git a/test/Project.toml b/test/Project.toml index 7148428..99ae738 100644 --- a/test/Project.toml +++ b/test/Project.toml @@ -1,5 +1,6 @@ [deps] Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" +ExplicitImports = "7d51a73a-1435-4ff3-83d9-f097790105c7" EzXML = "8f5d6c58-4d21-5cfd-889c-e3ad7ee6a615" HybridSystems = "2207ec0c-686c-5054-b4d2-543502888820" LazySets = "b4f0291d-fe17-52bc-9479-3d1a343d9043" @@ -8,6 +9,7 @@ Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [compat] Aqua = "0.8.9" +ExplicitImports = "1" EzXML = "1" HybridSystems = "0.4" LazySets = "3, 4, 5" diff --git a/test/quality_assurance.jl b/test/quality_assurance.jl new file mode 100644 index 0000000..86e0f65 --- /dev/null +++ b/test/quality_assurance.jl @@ -0,0 +1,18 @@ +using SpaceExParser, Test +import Aqua, ExplicitImports + +@testset "ExplicitImports tests" begin + @test isnothing(ExplicitImports.check_all_explicit_imports_are_public(SpaceExParser)) + @test isnothing(ExplicitImports.check_all_explicit_imports_via_owners(SpaceExParser)) + ignores = (:_ishalfspace, :_ishyperplanar, :parse,) + @test isnothing(ExplicitImports.check_all_qualified_accesses_are_public(SpaceExParser; + ignore=ignores)) + @test isnothing(ExplicitImports.check_all_qualified_accesses_via_owners(SpaceExParser)) + @test isnothing(ExplicitImports.check_no_implicit_imports(SpaceExParser)) + @test isnothing(ExplicitImports.check_no_self_qualified_accesses(SpaceExParser)) + @test isnothing(ExplicitImports.check_no_stale_explicit_imports(SpaceExParser)) +end + +@testset "Aqua tests" begin + Aqua.test_all(SpaceExParser) +end diff --git a/test/runtests.jl b/test/runtests.jl index 05fb946..72309ea 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -7,4 +7,4 @@ include("unit_parse.jl") include("unit_affine.jl") end -include("Aqua.jl") +include("quality_assurance.jl")