File tree 2 files changed +22
-2
lines changed
2 files changed +22
-2
lines changed Original file line number Diff line number Diff line change @@ -1122,7 +1122,7 @@ function Base.propertynames(sys::AbstractSystem; private = false)
1122
1122
return fieldnames (typeof (sys))
1123
1123
else
1124
1124
if has_parent (sys) && (parent = get_parent (sys); parent != = nothing )
1125
- sys = parent
1125
+ return propertynames ( parent; private)
1126
1126
end
1127
1127
names = Symbol[]
1128
1128
for s in get_systems (sys)
@@ -1144,7 +1144,7 @@ end
1144
1144
1145
1145
function Base. getproperty (sys:: AbstractSystem , name:: Symbol ; namespace = ! iscomplete (sys))
1146
1146
if has_parent (sys) && (parent = get_parent (sys); parent != = nothing )
1147
- sys = parent
1147
+ return getproperty ( parent, name; namespace)
1148
1148
end
1149
1149
wrap (getvar (sys, name; namespace = namespace))
1150
1150
end
Original file line number Diff line number Diff line change 350
350
@test_throws ArgumentError simp. inner₊p
351
351
@test_throws ArgumentError outer. inner₊p
352
352
end
353
+
354
+ @testset " `getproperty` on `structural_simplify(complete(sys))`" begin
355
+ @mtkmodel Foo begin
356
+ @variables begin
357
+ x (t)
358
+ end
359
+ end
360
+ @mtkmodel Bar begin
361
+ @components begin
362
+ foo = Foo ()
363
+ end
364
+ @equations begin
365
+ D (foo. x) ~ foo. x
366
+ end
367
+ end
368
+ @named bar = Bar ()
369
+ cbar = complete (bar)
370
+ ss = structural_simplify (cbar)
371
+ @test isequal (cbar. foo. x, ss. foo. x)
372
+ end
You can’t perform that action at this time.
0 commit comments