@@ -820,9 +820,13 @@ DynamicPPL.getspace(::DynamicPPL.Sampler{MySAlg}) = (:s,)
820
820
@testset " $(model. f) " for model in DynamicPPL. TestUtils. DEMO_MODELS
821
821
vns = DynamicPPL. TestUtils. varnames (model)
822
822
nt = DynamicPPL. TestUtils. rand_prior_true (model)
823
- varinfos = DynamicPPL. TestUtils. setup_varinfos (model, nt, vns)
823
+ varinfos = DynamicPPL. TestUtils. setup_varinfos (
824
+ model, nt, vns; include_threadsafe= true
825
+ )
824
826
# Only keep `VarInfo` types.
825
- varinfos = filter (Base. Fix2 (isa, VarInfo), varinfos)
827
+ varinfos = filter (
828
+ Base. Fix2 (isa, DynamicPPL. VarInfoOrThreadSafeVarInfo), varinfos
829
+ )
826
830
@testset " $(short_varinfo_name (varinfo)) " for varinfo in varinfos
827
831
x = values_as (varinfo, Vector)
828
832
@@ -835,6 +839,16 @@ DynamicPPL.getspace(::DynamicPPL.Sampler{MySAlg}) = (:s,)
835
839
@test x[r] == DynamicPPL. tovec (varinfo[vn])
836
840
end
837
841
end
842
+
843
+ # Let's try some failure cases.
844
+ @test DynamicPPL. vector_getranges (varinfo, VarName[]) == UnitRange{Int}[]
845
+ # Non-existent variables.
846
+ @test_throws KeyError DynamicPPL. vector_getranges (
847
+ varinfo, [VarName {gensym("vn")} ()]
848
+ )
849
+ @test_throws KeyError DynamicPPL. vector_getranges (
850
+ varinfo, [VarName {gensym("vn")} (), VarName {gensym("vn")} ()]
851
+ )
838
852
end
839
853
end
840
854
end
0 commit comments