Annotations

class:"MasterModel::X_base_class2" element:X

X note

EOS

foreach my $name (keys %expected_plugin) { file_contents_eq_or_diff( $wr_plugin."/$plugin_name/$name.pl", $expected_plugin{$name}, "generated $name plugin file" ); }

my $meta_plugin_inst2 = $meta_model->instance( root_class_name => 'Itself::Model', instance_name => 'itself_plugin', root_dir => $wr_model1, ); ok($meta_plugin_inst2,"Read Itself::Model and created instance for model plugin") ;

my $meta_plugin_root2 = $meta_plugin_inst2 -> config_root ;

my $plugin_rw_obj2 = Config::Model::Itself -> new( cm_lib_dir => 'data', model_object => $meta_plugin_root2, ) ;

$meta_plugin_inst2->layered_start ;

$plugin_rw_obj2->read_all( root_model => 'MasterModel', );

ok(1,"Read all models in data dir in layered mode") ;

$meta_plugin_inst->layered_stop ;

$plugin_rw_obj2->read_model_plugin(plugin_dir => $wr_plugin, plugin_name => $plugin_name) ;

my $plugin_name2 = 'other_plugin'; $plugin_rw_obj2->write_model_plugin(plugin_dir => $wr_plugin, plugin_name => $plugin_name2) ;

foreach my $name (keys %expected_plugin) { file_contents_eq_or_diff ( $wr_plugin."/$plugin_name2/$name.pl", $expected_plugin{$name}, "regenerated $name plugin file" ); }

note("testing memory cycles. Please wait..."); memory_cycle_ok($meta_model, "Check memory cycle");

done_testing;