Skip to content

Commit 1ffad13

Browse files
tidy tests avoiding duplication
1 parent 56b2f70 commit 1ffad13

File tree

1 file changed

+16
-12
lines changed

1 file changed

+16
-12
lines changed

test/loading.jl

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1034,6 +1034,16 @@ end
10341034
end
10351035

10361036
@testset "Extensions" begin
1037+
test_ext = """
1038+
function test_ext(parent::Module, ext::Symbol)
1039+
_ext = Base.get_extension(parent, ext)
1040+
_ext isa Module || error("expected extension \$ext to be loaded")
1041+
_pkgdir = pkgdir(_ext)
1042+
_pkgdir == pkgdir(parent) != nothing || error("unexpected extension \$ext pkgdir path: \$_pkgdir")
1043+
_pkgversion = pkgversion(_ext)
1044+
_pkgversion == pkgversion(parent) || error("unexpected extension \$ext version: \$_pkgversion")
1045+
end
1046+
"""
10371047
depot_path = mktempdir()
10381048
try
10391049
proj = joinpath(@__DIR__, "project", "Extensions", "HasDepWithExtensions.jl")
@@ -1044,16 +1054,15 @@ end
10441054
cmd = """
10451055
$load_distr
10461056
begin
1057+
$ew $test_ext
10471058
$ew push!(empty!(DEPOT_PATH), $(repr(depot_path)))
10481059
using HasExtensions
10491060
$ew using HasExtensions
10501061
$ew Base.get_extension(HasExtensions, :Extension) === nothing || error("unexpectedly got an extension")
10511062
$ew HasExtensions.ext_loaded && error("ext_loaded set")
10521063
using HasDepWithExtensions
10531064
$ew using HasDepWithExtensions
1054-
$ew Base.get_extension(HasExtensions, :Extension) isa Module || error("expected extension to load")
1055-
$ew _pkgdir = pkgdir(Base.get_extension(HasExtensions, :Extension))
1056-
$ew _pkgdir == pkgdir(HasExtensions) != nothing || error("unexpected extension pkgdir path")
1065+
$ew test_ext(HasExtensions, :Extension)
10571066
$ew Base.get_extension(HasExtensions, :Extension).extvar == 1 || error("extvar in Extension not set")
10581067
$ew HasExtensions.ext_loaded || error("ext_loaded not set")
10591068
$ew HasExtensions.ext_folder_loaded && error("ext_folder_loaded set")
@@ -1105,19 +1114,14 @@ end
11051114

11061115
test_ext_proj = """
11071116
begin
1117+
$test_ext
11081118
using HasExtensions
11091119
using ExtDep
1110-
Base.get_extension(HasExtensions, :Extension) isa Module || error("expected extension to load")
1111-
_pkgdir = pkgdir(Base.get_extension(HasExtensions, :Extension))
1112-
_pkgdir == pkgdir(HasExtensions) != nothing || error("unexpected extension pkgdir path: $_pkgdir")
1120+
test_ext(HasExtensions, :Extension)
11131121
using ExtDep2
1114-
Base.get_extension(HasExtensions, :ExtensionFolder) isa Module || error("expected extension to load")
1115-
_pkgdir = pkgdir(Base.get_extension(HasExtensions, :ExtensionFolder))
1116-
_pkgdir == pkgdir(HasExtensions) != nothing || error("unexpected extension pkgdir path: $_pkgdir")
1122+
test_ext(HasExtensions, :ExtensionFolder)
11171123
using ExtDep3
1118-
Base.get_extension(HasExtensions, :ExtensionDep) isa Module || error("expected extension to load")
1119-
_pkgdir = pkgdir(Base.get_extension(HasExtensions, :ExtensionDep))
1120-
_pkgdir == pkgdir(HasExtensions) != nothing || error("unexpected extension pkgdir path: $_pkgdir")
1124+
test_ext(HasExtensions, :ExtensionDep)
11211125
end
11221126
"""
11231127
for compile in (`--compiled-modules=no`, ``)

0 commit comments

Comments
 (0)