@@ -224,6 +224,8 @@ def test_meta_lvars():
224224
225225 nd_mt = TFlowMetaNodeDef (var (), var (), var ())
226226 assert all (isvar (getattr (nd_mt , s )) for s in nd_mt .__all_props__ )
227+ # TODO: Figure out how we want this to work.
228+ # assert isinstance(nd_mt.reify(), TFlowMetaNodeDef)
227229
228230 mo_mt = TFlowMetaOp (var (), var (), var (), var ())
229231 assert all (isvar (getattr (mo_mt , s )) for s in mo_mt .__all_props__ )
@@ -234,14 +236,21 @@ def test_meta_lvars():
234236
235237 mo_mt = TFlowMetaOp (mt .Add , var (), var ())
236238 assert len (mo_mt .outputs ) == 1
239+ assert isinstance (mo_mt .reify (), TFlowMetaOp )
237240
238241 ts_mt = TFlowMetaTensorShape (var ())
239242 assert all (isvar (getattr (ts_mt , s )) for s in ts_mt .__all_props__ )
243+ assert isinstance (ts_mt .reify (), TFlowMetaTensorShape )
240244
241245 assert isvar (ts_mt .as_list ())
242246
243247 tn_mt = TFlowMetaTensor (var (), var (), var ())
244248 assert all (isvar (getattr (tn_mt , s )) for s in tn_mt .__all_props__ )
249+ assert isinstance (tn_mt .reify (), TFlowMetaTensor )
250+
251+ mo_mt = TFlowMetaOp (mt .Add , [tn_mt , tn_mt ], var ())
252+ assert len (mo_mt .outputs ) == 1
253+ assert isinstance (mo_mt .reify (), TFlowMetaOp )
245254
246255
247256@pytest .mark .usefixtures ("run_with_tensorflow" )
@@ -554,10 +563,19 @@ def test_global_options():
554563 assert isvar (z_mt .name )
555564 assert isvar (z_mt .op .node_def .attr )
556565
557- with tf . Graph (). as_default (), disable_auto_reification (), enable_lvar_defaults ('names' , 'node_attrs' ):
566+ with disable_auto_reification (), enable_lvar_defaults ('names' , 'node_attrs' ):
558567 # This will *not* auto-reify and simply create the object from scratch with meta types
559568 # and the appropriate/desired logic variables.
560569 z_mt = mt .Placeholder ('float' )
561570 assert z_mt .obj is None
562571 assert isvar (z_mt .name )
563572 assert isvar (z_mt .op .node_def .attr )
573+
574+ with tf .Graph ().as_default (), enable_lvar_defaults ('names' , 'node_attrs' ):
575+ y_mt = mt .Placeholder ('float' ) + mt .Placeholder ('float' )
576+ assert isvar (y_mt .name )
577+ assert isvar (y_mt .op .inputs [0 ].name )
578+ assert isvar (y_mt .op .inputs [1 ].name )
579+ assert isvar (y_mt .op .node_def .attr )
580+ assert isvar (y_mt .op .inputs [0 ].op .node_def .attr )
581+ assert isvar (y_mt .op .inputs [1 ].op .node_def .attr )
0 commit comments