@@ -121,21 +121,25 @@ for prob in deepcopy(probs)
121121 @test prob2. p == typeof (prob. p)(p)
122122
123123 # respect defaults (:x), fallback to existing value (:z)
124- prob2 = @inferred baseType remake (prob; u0 = [:y => 0.2 ], use_defaults = true )
124+ prob2 = @inferred baseType remake (
125+ prob; u0 = [:y => 0.2 ], use_defaults = true , missing_is_symbolic = false )
125126 @test prob2. u0 ≈ [0.1 , 0.2 , 3.0 ]
126127 @test prob2. p == typeof (prob. p)(p) # params unaffected
128+ prob2 = @inferred baseType remake (prob; u0 = [:y => 0.2 ], use_defaults = true )
129+ @test prob2. u0 ≈ [0.1 , 0.2 , 3.0 ]
130+ @test all (prob2. p .≈ [0.1 , 20.0 , 30.0 ])
127131
128132 # override defaults
129133 prob2 = @inferred baseType remake (prob; u0 = [:x => 0.2 ], use_defaults = true )
130134 @test prob2. u0 ≈ [0.2 , 2.0 , 3.0 ]
131- @test prob2. p == typeof (prob . p)(p )
135+ @test all ( prob2. p .≈ [ 0.1 , 20.0 , 30.0 ] )
132136
133137 prob2 = @inferred baseType remake (prob; p = [:b => 0.2 ], use_defaults = true )
134- @test prob2. u0 == u0
138+ @test prob2. u0 ≈ [ 0.1 , 2.0 , 3.0 ]
135139 @test all (prob2. p .≈ [0.1 , 0.2 , 30.0 ])
136140
137141 prob2 = @inferred baseType remake (prob; p = [:a => 0.2 ], use_defaults = true )
138- @test prob2. u0 == u0
142+ @test prob2. u0 ≈ [ 0.1 , 2.0 , 3.0 ]
139143 @test all (prob2. p .≈ [0.2 , 20.0 , 30.0 ])
140144
141145 empty! (prob. f. sys. defaults)
@@ -152,36 +156,37 @@ for prob in deepcopy(probs)
152156 @test prob2. u0 == u0
153157 @test prob2. p == typeof (prob. p)(p)
154158
155- prob2 = @inferred baseType remake (prob; u0 = [:x => 0.2 ])
159+ prob2 = @inferred baseType remake (
160+ prob; u0 = [:x => 0.2 ], missing_is_symbolic = false )
156161 @test prob2. u0 ≈ [0.2 , 0.6 , 3.0 ]
157162 @test prob2. p == typeof (prob. p)(p)
158163
159164 # respect numeric defaults (:z)
160165 prob2 = @inferred baseType remake (prob; u0 = [:x => 0.2 ], use_defaults = true )
161166 @test prob2. u0 ≈ [0.2 , 0.6 , 9.0 ]
162- @test prob2. p == typeof (prob . p)(p) # params unaffected
167+ @test all ( prob2. p .≈ [ 10.0 , 30.0 , 0.9 ])
163168
164169 # override defaults
165170 prob2 = @inferred baseType remake (prob; u0 = [:y => 0.2 ])
166171 @test prob2. u0 ≈ [1.0 , 0.2 , 3.0 ]
167- @test prob2. p == typeof (prob . p)(p )
172+ @test all ( prob2. p .≈ [ 10.0 , 30.0 , 30.0 ] )
168173 prob2 = @inferred baseType remake (prob; u0 = [:y => 0.2 ], use_defaults = true )
169174 @test prob2. u0 ≈ [1.0 , 0.2 , 9.0 ]
170- @test prob2. p == typeof (prob . p)(p )
175+ @test all ( prob2. p .≈ [ 10.0 , 30.0 , 0.9 ] )
171176
172177 prob2 = @inferred baseType remake (prob; p = [:a => 0.2 ])
173- @test prob2. u0 == u0
178+ @test prob2. u0 ≈ [ 1.0 , 3.0 , 3.0 ]
174179 @test all (prob2. p .≈ [0.2 , 0.6 , 30.0 ])
175180
176181 prob2 = @inferred baseType remake (prob; p = [:a => 0.2 ], use_defaults = true )
177- @test prob2. u0 == u0
182+ @test prob2. u0 ≈ [ 1.0 , 3.0 , 9.0 ]
178183 @test all (prob2. p .≈ [0.2 , 0.6 , 0.9 ])
179184
180185 prob2 = @inferred baseType remake (prob; p = [:b => 0.2 ])
181- @test prob2. u0 == u0
186+ @test prob2. u0 ≈ [ 1.0 , 3.0 , 3.0 ]
182187 @test all (prob2. p .≈ [10.0 , 0.2 , 30.0 ])
183188 prob2 = @inferred baseType remake (prob; p = [:b => 0.2 ], use_defaults = true )
184- @test prob2. u0 == u0
189+ @test prob2. u0 ≈ [ 1.0 , 3.0 , 9.0 ]
185190 @test all (prob2. p .≈ [10.0 , 0.2 , 0.9 ])
186191
187192 empty! (prob. f. sys. defaults)
0 commit comments