// you can also use find() and pass no params foreach ($Users as $User) { $screen_names[$User->DATA("ScreenName")] = $User->DATA("Joined"); } $TestResults["B_User_ScreenNames_and_join_dates"] = $screen_names; // add a new user $OurUserData = array("FirstName" => "John", "LastName" => "Doe", "EMail" => $TestValues["EMail"], "ScreenName" => $TestValues["ScreenName"], "Password" => "password"); $OurUser = new User($UsersTable, $OurUserData); $OurUser->validate_and_configure_new_user(); $TestResults["C_Add_User_Response"] = $OurUser->ADD(); // how many users now? $TestResults["D_How_Many_Users_After_Create"] = $UsersTable->count(); // try to add the same user again, and note the error about these unique params already existing $TestResults["E_Existance_Error_When_Add_Again"] = $OurUser->ADD(); // view that user by the user object $TestResults["F_User_Details_From_User_Object"] = $OurUser->VIEW(); // view that user by a find on the Table Object $FoundUserObjects = $UsersTable->find(array("ScreenName" => $TestValues["ScreenName"])); $FoundUserHashes = array(); foreach ($FoundUserObjects as $FoundUser) { $FoundUserHashes[] = $FoundUser->DATA(); } $TestResults["G_User_Details_From_Find_On_Table_Object"] = $FoundUserHashes; // edit that user $NewUserData = array("ScreenName" => "NewDaveAPI", "EMail" => "*****@*****.**"); $EditResp = $OurUser->EDIT($NewUserData); $TestResults["H_Edited_User_Data"] = $EditResp; // delete that user $delete_resp = $OurUser->DELETE(); if ($delete_resp === true) { $delete_resp = "OK";