1
- #
2
- global testDFGAPI = LightDFG
1
+ # global testDFGAPI = LightDFG
3
2
4
3
dfg = testDFGAPI {NoSolverParams} ()
5
4
@@ -19,14 +18,14 @@ union!(f1.tags, [:FACTOR])
19
18
st1 = TestInferenceVariable1 ()
20
19
st2 = TestInferenceVariable2 ()
21
20
22
- solverData (v1). softtype = deepcopy (st1)
23
- solverData (v2). softtype = deepcopy (st2)
21
+ getSolverData (v1). softtype = deepcopy (st1)
22
+ getSolverData (v2). softtype = deepcopy (st2)
24
23
25
24
# set v1 to solvable=0
26
25
setSolvable! (v1, 0 )
27
26
# set v1 and f1 solveInProgress
28
- solverData (v1). solveInProgress = 1
29
- solverData (f1). solveInProgress = 1
27
+ getSolverData (v1). solveInProgress = 1
28
+ getSolverData (f1). solveInProgress = 1
30
29
31
30
32
31
# NOTE: Just for testing
122
121
f2 = deepcopy (f1)
123
122
f2. label = :something
124
123
@test f2 != f1
125
- @test getVariable (dfg, :nope ) == nothing
124
+ # TODO we should really finish defining error behaviour
125
+ @test_throws Exception getVariable (dfg, :nope )
126
+ # @test getVariable(dfg, :nope) == nothing
126
127
@test_throws Exception getVariable (dfg, " nope" )
127
128
@test_throws Exception getFactor (dfg, :nope )
128
129
@test_throws Exception getFactor (dfg, " nope" )
147
148
148
149
@test getTimestamp (v1) == v1. timestamp
149
150
testTimestamp = now ()
150
- # TODO set timestamp immutable
151
- @test setTimestamp! (v1, testTimestamp) == testTimestamp
151
+ # TODO set timestamp immutable, confirm behaviour
152
+ v1ts = setTimestamp (v1, testTimestamp)
153
+ updateVariable! (dfg, v1ts)
154
+ @test getVariable (dfg, v1ts. label) == v1ts
155
+ @test v1ts != v1
156
+ v1 = getVariable (dfg, v1ts. label)
152
157
@test getTimestamp (v1) == testTimestamp
153
158
154
159
@test getTimestamp (f1) == f1. timestamp
@@ -167,13 +172,14 @@ end
167
172
# TODO : Finish
168
173
# Add new VND of type ContinuousScalar to :x0
169
174
# Could also do VariableNodeData(ContinuousScalar())
170
- vnd = VariableNodeData {ContinuousScalar } ()
175
+ vnd = VariableNodeData {TestInferenceVariable1 } ()
171
176
addVariableSolverData! (dfg, :a , vnd, :parametric )
172
- @show listVariableSolverData (dfg, :a )
177
+ @test setdiff ( listVariableSolverData (dfg, :a ), [ :default , :parametric ]) == []
173
178
# Get the data back - note that this is a reference to above.
174
179
vndBack = getVariableSolverData (dfg, :a , :parametric )
180
+ @test vndBack == vnd
175
181
# Delete it
176
- deleteVariableSolverData! (dfg, :a , :parametric )
182
+ @test deleteVariableSolverData! (dfg, :a , :parametric ) == vndBack
177
183
# Update add it
178
184
updateVariableSolverData! (dfg, :a , vnd, :parametric )
179
185
# Update update it
@@ -186,20 +192,21 @@ end
186
192
# TODO : Finish
187
193
# Add a new PPE of type MeanMaxPPE to :x0
188
194
ppe = MeanMaxPPE (:default , [0.0 ], [0.0 ], [0.0 ])
189
- addPPE! (dfg, :x0 , ppe)
190
- @show listPPE (dfg, :x0 )
195
+ addPPE! (dfg, :a , ppe)
196
+ @test listPPE (dfg, :a ) == [ :default ]
191
197
# Get the data back - note that this is a reference to above.
192
- v = getPPE (dfg, :x0 , :default )
198
+ @test getPPE (dfg, :a , :default ) == ppe
199
+
193
200
# Delete it
194
- deletePPE! (dfg, :x0 , :default )
201
+ @test deletePPE! (dfg, :a , :default ) == ppe
195
202
# Update add it
196
- updatePPE! (dfg, :x0 , ppe, :default )
203
+ updatePPE! (dfg, :a , ppe, :default )
197
204
# Update update it
198
- updatePPE! (dfg, :x0 , ppe, :default )
205
+ updatePPE! (dfg, :a , ppe, :default )
199
206
# Bulk copy PPE's for x0 and x1
200
- updatePPE! (dfg, [x0 ], :default )
207
+ updatePPE! (dfg, [v1 ], :default )
201
208
# Delete it
202
- deletePPE! (dfg, :x0 , :default )
209
+ @test deletePPE! (dfg, :a , :default ) == ppe
203
210
204
211
# TODO I don't know what is supposed to happen to softtype
205
212
@test getSofttype (v1) == st1
208
215
209
216
@test getLabel (f1) == f1. label
210
217
@test getTags (f1) == f1. tags
211
- @test setTags! (v1, testTags) == testTags
212
- @test getTags (v1) == testTags
218
+ @test setTags! (v1, testTags) == Set ( testTags)
219
+ @test getTags (v1) == Set ( testTags)
213
220
214
221
@test solverData (f1) == f1. solverData
215
222
# Deprecated functions
226
233
@test ! isInitialized (v2)
227
234
@test ! isInitialized (v2, key= :second )
228
235
# isSolvable and isSolveInProgress
229
- @test isSolvable (v1) == 0
230
- @test isSolvable (v2) == 1
231
- @test isSolvable (f1) == 0
236
+ # TODO implement or deprecate isSolvable
237
+ @test getSolvable (v1) == 0
238
+ @test getSolvable (v2) == 1
239
+ @test getSolvable (f1) == 0
232
240
@test getSolvable (v1) == 0
233
241
234
242
# TODO isSolveInProgress was not deprecated
238
246
v1 = getVariable (dfg, v1. label)
239
247
f1 = getFactor (dfg, f1. label)
240
248
@test setSolvable! (v1, 1 ) == 1
241
- @test isSolvable (v1) == 1
249
+ @test getSolvable (v1) == 1
242
250
@test setSolvable! (dfg, v1. label, 0 ) == 0
243
- @test isSolvable (v1) == 0
251
+ @test getSolvable (v1) == 0
244
252
@test setSolvable! (f1, 1 ) == 1
245
253
@test getSolvable (dfg, f1. label) == 1
246
254
@test setSolvable! (dfg, f1. label, 0 ) == 0
268
276
smallUserData = Dict {Symbol, String} (:a => " 42" , :b => " Hello" )
269
277
smallRobotData = Dict {Symbol, String} (:a => " 43" , :b => " Hello" )
270
278
smallSessionData = Dict {Symbol, String} (:a => " 44" , :b => " Hello" )
271
- setUserData (dfg, deepcopy (smallUserData))
272
- setRobotData (dfg, deepcopy (smallRobotData))
273
- setSessionData (dfg, deepcopy (smallSessionData))
279
+ setUserData! (dfg, deepcopy (smallUserData))
280
+ setRobotData! (dfg, deepcopy (smallRobotData))
281
+ setSessionData! (dfg, deepcopy (smallSessionData))
274
282
@test getUserData (dfg) == smallUserData
275
283
@test getRobotData (dfg) == smallRobotData
276
284
@test getSessionData (dfg) == smallSessionData
507
515
for v in ls (summaryGraph)
508
516
for field in variableFields
509
517
if field != :softtypename
510
- @test getfield (getVariable (dfg, v), field) == getfield (getVariable (summaryGraph, v), field)
518
+ @test getproperty (getVariable (dfg, v), field) == getproperty (getVariable (summaryGraph, v), field)
511
519
else
512
520
# Special case to check the symbol softtype is equal to the full softtype.
513
521
@test Symbol (typeof (getSofttype (getVariable (dfg, v)))) == getSofttype (getVariable (summaryGraph, v))
516
524
end
517
525
for f in lsf (summaryGraph)
518
526
for field in factorFields
519
- @test getfield (getFactor (dfg, f), field) == getfield (getFactor (summaryGraph, f), field)
527
+ @test getproperty (getFactor (dfg, f), field) == getproperty (getFactor (summaryGraph, f), field)
520
528
end
521
529
end
522
530
end
0 commit comments