/*++ Copyright (c) 1995 Microsoft Corporation Module Name: itpds.c Abstract: This module contains the test functions for phoneDevSpecific Author: Xiao Ying Ding (XiaoD) 5-Dec-1995 Revision History: --*/ #include "windows.h" #include "malloc.h" #include "string.h" #include "tapi.h" #include "trapper.h" #include "tcore.h" #include "ttest.h" #include "dophone.h" #include "vars.h" #include "tphone.h" // phoneDevSpecific // // The following tests are made: // // Tested Notes // ------------------------------------------------------------------------- // Go/No-Go test // // * = Stand-alone test case // // BOOL TestPhoneDevSpecific(BOOL fQuietMode, BOOL fStandAlone) { LPTAPIPHONETESTINFO lpTapiPhoneTestInfo; INT n; BOOL fTestPassed = TRUE; PHONEBUTTONINFO TapiTestPhoneButtonInfo; TapiPhoneTestInit(); lpTapiPhoneTestInfo = GetPhoneTestInfo(); OutputTAPIDebugInfo( DBUG_SHOW_DETAIL, "*****************************************************************************************"); OutputTAPIDebugInfo( DBUG_SHOW_DETAIL, ">> Test phoneDevSpecific"); lpTapiPhoneTestInfo->lpdwAPIVersion = &lpTapiPhoneTestInfo->dwAPIVersion; lpTapiPhoneTestInfo->dwAPIVersion = TAPI_VERSION2_0; lpTapiPhoneTestInfo->lpPhoneInitializeExParams = (LPPHONEINITIALIZEEXPARAMS) AllocFromTestHeap ( sizeof(PHONEINITIALIZEEXPARAMS)); lpTapiPhoneTestInfo->lpPhoneInitializeExParams->dwTotalSize = sizeof(PHONEINITIALIZEEXPARAMS); lpTapiPhoneTestInfo->lpPhoneInitializeExParams->dwOptions = // PHONEINITIALIZEEXOPTION_USECOMPLETIONPORT; PHONEINITIALIZEEXOPTION_USEHIDDENWINDOW; // InitializeEx a phone app if(! DoPhoneInitializeEx (lpTapiPhoneTestInfo, TAPISUCCESS)) { TPHONE_FAIL(); } lpTapiPhoneTestInfo->dwDeviceID = (*(lpTapiPhoneTestInfo->lpdwNumDevs) == 0 ? 0 : *(lpTapiPhoneTestInfo->lpdwNumDevs)-1); lpTapiPhoneTestInfo->dwAPILowVersion = LOW_APIVERSION; lpTapiPhoneTestInfo->dwAPIHighVersion = HIGH_APIVERSION; // Negotiate the API Version if (! DoPhoneNegotiateAPIVersion(lpTapiPhoneTestInfo, TAPISUCCESS)) { TPHONE_FAIL(); } // Get the phone device capabilities lpTapiPhoneTestInfo->lpPhoneCaps = (LPPHONECAPS) AllocFromTestHeap( sizeof(PHONECAPS) ); lpTapiPhoneTestInfo->lpPhoneCaps->dwTotalSize = sizeof(PHONECAPS); if (! DoPhoneGetDevCaps(lpTapiPhoneTestInfo, TAPISUCCESS)) { TPHONE_FAIL(); } // Open a phone lpTapiPhoneTestInfo->dwPrivilege = PHONEPRIVILEGE_OWNER; if (! DoPhoneOpen(lpTapiPhoneTestInfo, TAPISUCCESS)) { TPHONE_FAIL(); } OutputTAPIDebugInfo( DBUG_SHOW_DETAIL, "#### Test phoneDevSpecfic for go/no-go"); lpTapiPhoneTestInfo->lpParams = (LPVOID)&TapiTestPhoneButtonInfo; lpTapiPhoneTestInfo->dwSize = sizeof(PHONEBUTTONINFO); if (! DoPhoneDevSpecific(lpTapiPhoneTestInfo, TAPISUCCESS, TRUE)) { TPHONE_FAIL(); } // Close the phone if (! DoPhoneClose(lpTapiPhoneTestInfo, TAPISUCCESS)) { TPHONE_FAIL(); } // Shutdown and end the tests if (! DoPhoneShutdown(lpTapiPhoneTestInfo, TAPISUCCESS)) { TPHONE_FAIL(); } FreeTestHeap(); if(fTestPassed) TapiLogDetail( DBUG_SHOW_DETAIL, "## phoneDevSpecific Test Passed"); else TapiLogDetail( DBUG_SHOW_DETAIL, "## phoneDevSpecific Test Failed"); return fTestPassed; }