@@ -1199,6 +1199,48 @@ test_ly_path_data2schema(void **state)
11991199 free (schema_path );
12001200}
12011201
1202+ static void
1203+ test_ly_get_loaded_plugins (void * * state )
1204+ {
1205+ (void ) state ;
1206+ int i ;
1207+ const char * const * plugins ;
1208+
1209+ for (i = 0 , plugins = ly_get_loaded_plugins (); plugins && plugins [i ]; ++ i ) {
1210+ fail ();
1211+ }
1212+
1213+ ly_load_plugins ();
1214+
1215+ plugins = ly_get_loaded_plugins ();
1216+ assert_non_null (plugins );
1217+ for (i = 0 ; plugins [i ]; ++ i ) {
1218+ switch (i ) {
1219+ case 0 :
1220+ assert_string_equal (plugins [i ], "metadata" );
1221+ break ;
1222+ case 1 :
1223+ assert_string_equal (plugins [i ], "yangdata" );
1224+ break ;
1225+ case 2 :
1226+ assert_string_equal (plugins [i ], "nacm" );
1227+ break ;
1228+ case 3 :
1229+ assert_string_equal (plugins [i ], "user_date_and_time" );
1230+ break ;
1231+ default :
1232+ fail ();
1233+ break ;
1234+ }
1235+ }
1236+
1237+ ly_clean_plugins ();
1238+
1239+ for (i = 0 , plugins = ly_get_loaded_plugins (); plugins && plugins [i ]; ++ i ) {
1240+ fail ();
1241+ }
1242+ }
1243+
12021244int main (void )
12031245{
12041246 const struct CMUnitTest tests [] = {
@@ -1233,6 +1275,7 @@ int main(void)
12331275 cmocka_unit_test (test_ly_set_log_clb ),
12341276 cmocka_unit_test_setup_teardown (test_ly_log_options , setup_f , teardown_f ),
12351277 cmocka_unit_test_setup_teardown (test_ly_path_data2schema , setup_f , teardown_f ),
1278+ cmocka_unit_test (test_ly_get_loaded_plugins ),
12361279 };
12371280
12381281 return cmocka_run_group_tests (tests , NULL , NULL );
0 commit comments