/* void GetAppList(BList *teamIDList) const @case 1 teamIDList is NULL @results Should do nothing. */ void GetAppListTester::GetAppListTestA1() { // R5: crashes when passing a NULL BList #ifndef TEST_R5 BRoster roster; roster.GetAppList(NULL); #endif }
/* void GetAppList(const char *signature, BList *teamIDList) const @case 3 teamIDList is not NULL and not empty, signature is not NULL and app(s) with this signature is (are) running @results Should append the team IDs of all running apps with the supplied signature to teamIDList. */ void GetAppListTester::GetAppListTestB3() { const char *signature = "application/x-vnd.obos-app-run-testapp1"; // create a list with some dummy entries BList list; list.AddItem((void*)-7); list.AddItem((void*)-42); // get a list of running applications for reference BRoster roster; BList list1(list); roster.GetAppList(signature, &list1); check_list(list1, list); // run some apps AppRunner runner1(true); AppRunner runner2(true); AppRunner runner3(true); CHK(runner1.Run("AppRunTestApp1") == B_OK); CHK(runner2.Run("AppRunTestApp2") == B_OK); CHK(runner3.Run("BMessengerTestApp1") == B_OK); BList expectedApps; expectedApps.AddItem((void*)runner1.Team()); expectedApps.AddItem((void*)runner2.Team()); // get a new app list and check it BList list2(list); roster.GetAppList(signature, &list2); check_list(list2, list, expectedApps); // quit app 1 runner1.WaitFor(true); expectedApps.RemoveItem((void*)runner1.Team()); BList list3(list); roster.GetAppList(signature, &list3); check_list(list3, list, expectedApps); // quit app 2 runner2.WaitFor(true); expectedApps.RemoveItem((void*)runner2.Team()); BList list4(list); roster.GetAppList(signature, &list4); check_list(list4, list, expectedApps); // quit app 3 runner3.WaitFor(true); BList list5(list); roster.GetAppList(signature, &list5); check_list(list5, list, expectedApps); }
/* void GetAppList(const char *signature, BList *teamIDList) const @case 1 signature or teamIDList are NULL @results Should do nothing/should not modify teamIDList. */ void GetAppListTester::GetAppListTestB1() { // R5: crashes when passing a NULL signature/BList #ifndef TEST_R5 const char *signature = "application/x-vnd.obos-app-run-testapp1"; // create a list with some dummy entries BList emptyList; BList list; list.AddItem((void*)-7); list.AddItem((void*)-42); // NULL signature and list BRoster roster; roster.GetAppList(NULL, NULL); // NULL signature BList list1(list); roster.GetAppList(NULL, &list1); check_list(list1, list, list, emptyList); // NULL list AppRunner runner(true); CHK(runner.Run("AppRunTestApp1") == B_OK); roster.GetAppList(signature, NULL); runner.WaitFor(true); #endif }