Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

923 lines
31 KiB

4 years ago
  1. TAPI UNICODE BUILD VERIFICATION TEST SPECIFICATION.
  2. Test Spec written by Aaron Ridenour a-aaronr
  3. Test Scripts written by Ron Rohr a-rrohr
  4. July 11, 1996
  5. ******************** Test Description *********************************************
  6. This Test has been implemented with Visual Test 4.0a.
  7. There are 4 files associated with this test.
  8. Uni_BVT.MST - Main test script.
  9. Uni_BVT.INC - Contains all TAPI_BVT procedures called from the main script.
  10. Uni_API.INC - Contains all Const and Type definitions used in the test.
  11. TAPILOG.INC - Contains all file output procedures.
  12. ******************** Prerequisites ************************************************
  13. 1) TAPI Browser 2.0 (tb20.exe) must be in the System32 windows subdirectory.
  14. 2) The Test PC must have a modem connected and installed.
  15. 3) Unimdm.tsp service provider must be in the System32 windows subdirectory.
  16. ******************** Begin Test Discriptions **************************************
  17. ***********************************************************************************
  18. **** Test Case - 4 lineOpen and lineClose with all privileges
  19. ***********************************************************************************
  20. STEPS: // open line with no privileges
  21. 1 - Run TB
  22. 2 - In the Function listbox double-click lineInitializeExW
  23. 3 - click the [Parms] checkbox on, on the toolbar
  24. 4 - In the Function listbox double-click lineOpenW
  25. 5 - In the dialog box, select [dwPrivileges]
  26. 6 - Choose [NONE] in the [Bit flags] listbox
  27. 7 - Press OK
  28. RESULTS:
  29. 1 - Should get a "lineOpen returned SUCCESS" in the results window.
  30. 2 - Line should be listed as DialOut
  31. STEPS: // open line as monitor
  32. 8 - In the Function listbox double-click lineClose
  33. 9 - Press OK on the dialog
  34. 10 - In the Function listbox double-click lineShutdown
  35. 11 - Press OK on the dialog
  36. 12 - In the Function listbox double-click lineInitializeExW
  37. 13 - Press OK on the dialog
  38. 14 - In the Function listbox double-click lineOpenW
  39. 15 - In the dialog box, select [dwPrivileges]
  40. 16 - Choose [MONITOR] in the [Bit flags] listbox
  41. 17 - Press OK
  42. RESULTS:
  43. 3 - Should get a "lineOpen returned SUCCESS" in the results window.
  44. 4 - Line should be listed as Monitor
  45. STEPS: // open line as owner
  46. 18 - In the Function listbox double-click lineClose
  47. 19 - Press OK on the dialog
  48. 20 - In the Function listbox double-click lineShutdown
  49. 21 - Press OK on the dialog
  50. 22 - In the Function listbox double-click lineInitializeExW
  51. 23 - Press OK on the dialog
  52. 24 - In the Function listbox double-click lineOpenW
  53. 25 - In the dialog box, select [dwPrivileges]
  54. 26 - Choose [OWNER] in the [Bit flags] listbox
  55. 27 - Press OK
  56. RESULTS:
  57. 5 - Should get a "lineOpen returned SUCCESS" in the results window.
  58. 6 - Line should be listed as DialInOut
  59. STEPS:
  60. 28 - In the Function listbox double-click on lineClose
  61. 29 - In dialog box press [OK]
  62. 30 - In the Function listbox double-click on lineShutdown
  63. 31 - In dialog box press [OK]
  64. 32- Close TAPI Browser
  65. ***********************************************************************************
  66. **** Test Case - 8 lineGetDevCapsW
  67. ***********************************************************************************
  68. STEPS: // Verify lineGetDevCapsW return for valid device ID
  69. 1 - Run TB
  70. 2 - In the Function listbox double-click on lineInitializeExW
  71. 3 - In function listbox double-click on lineGetDevCapsW
  72. RESULTS:
  73. 1 - "lineGetDevCapsW returned SUCCESS" should be displayed. For further verification,
  74. see example below.
  75. STEPS: //Verify lineGetDevCapsW return for invalid device ID
  76. 4 - On toolbar check Params box
  77. 5 - In function listbox double-click on lineGetDevCapsW
  78. 6 - On dialog box select dwDeviceID
  79. 7 - Set Value to ffffffff
  80. 8 - Press [OK]
  81. RESULT: "lineGetDevCapsW returned LINEERR_BADDEVICEID" should be displayed
  82. STEPS:
  83. 9 - In the Function listbox double-click on lineShutdown
  84. 10 - Close TB
  85. *********************************
  86. Example of lineGetDevCapsW return:
  87. *********************************
  88. lineGetDevCapsW returned SUCCESS
  89. LINEDEVCAPS
  90. dwTotalSize=x1000
  91. dwNeededSize=x180
  92. dwUsedSize=x180
  93. dwProviderInfoSize=x3e
  94. dwProviderInfoOffset=xf0
  95. 646e6957 2073776f 656c6554 6e6f6870 Windows Telephon
  96. 65532079 63697672 72502065 6469766f y Service Provid
  97. 66207265 5520726f 6576696e 6c617372 er for Universal
  98. 646f4d20 44206d65 65766972 xxxx0072 Modem Driver.
  99. dwPermanentLineID=x18368
  100. dwLineNameSize=x17
  101. dwLineNameOffset=x12e
  102. 61726150 6c656c6c 62616320 6f20656c Parallel cable o
  103. 504c206e xx003154 xxxxxxxx xxxxxxxx n LPT1.
  104. dwStringFormat=x1, ASCII
  105. dwAddressModes=x1, ADDRESSID
  106. dwNumAddresses=x1
  107. dwBearerModes=x48, DATA PASSTHROUGH
  108. dwMaxRate=x1c200
  109. dwMediaModes=x10, DATAMODEM
  110. dwDevCapFlags=x60, CLOSEDROP DIALBILLING
  111. dwMaxNumActiveCalls=x1
  112. dwRingModes=x1
  113. dwLineStates=x14406ce, RINGING CONNECTED DISCONNECTED
  114. INSERVICE OUTOFSERVICE OPEN CLOSE REINIT TRANSLATECHANGE
  115. REMOVED
  116. dwDevSpecificSize=x3b
  117. dwDevSpecificOffset=x145
  118. 00000001 00000008 74737953 435c6d65 ........System\C
  119. 65727275 6f43746e 6f72746e 7465536c urrentControlSet
  120. 7265535c 65636976 6c435c73 5c737361 \Services\Class\
  121. 65646f4d 30305c6d xx003130 xxxxxxxx Modem\0001.
  122. dwLineFeatures=x8, MAKECALL
  123. Note: For this example, a Creative Labs Phoneblaster and Unimodem service provider were
  124. employed. The LINEDEVCAPS return should be compared to installed modem and service
  125. provider to verify correctness of lineGetDevCapsW API.
  126. ***********************************************************************************
  127. **** Test Case - 9 lineMakeCallW- privileges = none, monitor, owner
  128. ***********************************************************************************
  129. STEPS: // Call with privilege=NONE
  130. 1 - Run TAPI Browser
  131. 2 - In the Function listbox double-click on lineInitializeExW
  132. 3 - On toolbar, check Params box
  133. 4 - In the Function listbox double-click on lineOpenW
  134. 5 - In lineOpen dialog box, select dwPrivileges
  135. 6 - Under bit flags, select NONE
  136. 7 - In the Function listbox double-click on lineMakeCallW
  137. 8 - On lineMakeCallW Dialog box press [OK]
  138. RESULT:
  139. 1) The call should PROCEEDING, with the following text returned:
  140. lineMakeCallW returned x1
  141. received LINE_REPLY : hDev=x0, cbInst=x0
  142. p1=x1,
  143. p2=x0,
  144. p3=x0
  145. received LINE_CALLSTATE : hDev=x_______, cbInst=x0
  146. p1=x8, DIALTONE
  147. p2=x20, UNAVAIL
  148. p3=x0,
  149. received LINE_CALLSTATE : hDev=x_______, cbInst=x0
  150. p1=x10, DIALING
  151. p2=x0,
  152. p3=x0,
  153. received LINE_CALLSTATE : hDev=x_______, cbInst=x0
  154. p1=x200 PROCEEDING
  155. p2=x0,
  156. p3=x0,
  157. [Note: x_______ is the Call handle]
  158. STEPS: // Call with privilege=MONITOR
  159. 9 - In the Function listbox double-click on lineDrop and then lineDeallocateCall
  160. 10 - In dialog box, press [OK]
  161. 11 - In the Function listbox double-click on lineClose
  162. 12 - In dialog box press [OK]
  163. 13 - In the Function listbox double-click on lineOpenW
  164. 14 - In lineOpen dialog box, select dwPrivileges
  165. 15 - Under bit flags, select MONITOR
  166. 16 - In the Function listbox double-click on lineMakeCallW
  167. 17 - On lineMakeCallW Dialog box press [OK]
  168. RESULT:
  169. 2 - The call should PROCEEDING (with similar text as described above).
  170. STEPS: // Call with privilege=MONITOR
  171. 18 - In the Function listbox double-click on lineDrop and then lineDeallocateCall
  172. 19 - In dialog box, press [OK]
  173. 20 - In the Function listbox double-click on lineClose
  174. 21 - In dialog box press [OK]
  175. 22 - In the Function listbox double-click on lineOpenW
  176. 23 - In lineOpen dialog box, select dwPrivileges
  177. 24 - Under bit flags, select OWNER
  178. 25 - In the Function listbox double-click on lineMakeCallW
  179. 26 - On lineMakeCallW Dialog box press [OK]
  180. RESULT:
  181. 3 - The call should PROCEEDING (with similar text as described above).
  182. 27 - On toolbar, uncheck the Params box
  183. 28 - In the Function listbox double-click on lineDrop and then lineDeallocateCall
  184. 29 - In the Function listbox double-click on lineClose
  185. 30 - In the Function listbox double-click on lineShutdown
  186. 31 - Close TAPI Browser
  187. ***********************************************************************************
  188. **** Test Case - 10 lineMakeCallW- line unavalable
  189. ***********************************************************************************
  190. STEPS: // Ensure proper return for call attempted on line already in use
  191. 1 - Run TB
  192. 2 - In the Function listbox double-click on lineInitializeExW
  193. 3 - In the Function listbox double-click on lineOpenW
  194. 4 - In the Function listbox double-click on lineMakeCallW
  195. Note: Ensure call is active for steps 5 through 7
  196. 5 - In the Function listbox double-click on lineInitializeExW
  197. 6 - In the Function listbox double-click on lineOpenW
  198. 7 - In the Function listbox double-click on lineMakeCallW
  199. RESULTS:
  200. 1 - "lineMakeCallW returned LINEERR_CALLUNAVAIL" should be returned
  201. STEPS:
  202. 8 - Click on bottom Line handle
  203. 9 - In the Function listbox double-click on lineClose
  204. 10 - Click on bottom LineApp handle
  205. 11 - In the Function listbox double-click on lineShutdown
  206. 12 - In the Function listbox double-click on lineDrop and then lineDeallocateCall
  207. 13 - In the Function listbox double-click on lineClose
  208. 14 - In the Function listbox double-click on lineShutdown
  209. 15 - Close TB
  210. ***********************************************************************************
  211. **** Test Case - 13 lineDrop - with active call
  212. ***********************************************************************************
  213. STEPS: // Verify successful line drop after initiating call
  214. 1 - Run TAPI Browser
  215. 2 - In the Function listbox double-click on lineInitializeExW
  216. 3 - In the Function listbox double-click on lineOpenW
  217. 4 - In the Function listbox double-click on lineMakeCallW
  218. 5 - Wait for call state to be proceeding or connected
  219. 6 - In function listbox double-click on lineDrop
  220. RESULTS:
  221. 1 - Return should LINE_CALLSTATE as IDLE
  222. received LINE_CALLSTATE : hDev=x_______, cbInst=x0
  223. p1=x1, IDLE
  224. p2=x0,
  225. p3=x0,
  226. STEPS:
  227. 7 - In the Function listbox double-click on lineDrop and then lineDeallocateCall
  228. 8 - In the Function listbox double-click on lineClose
  229. 9 - In the Function listbox double-click on lineShutdown
  230. 10 - Close TAPI Browser
  231. ***********************************************************************************
  232. **** Test Case - 14 lineDeallocate - w/ active call
  233. ***********************************************************************************
  234. STEPS: // Verify successful line deallocation
  235. 1 - Run TAPI Browser
  236. 2 - In the Function listbox double-click on lineInitializeExW
  237. 3 - In the Function listbox double-click on lineOpenW
  238. 4 - In the Function listbox double-click on lineMakeCallW
  239. 5 - Wait for call state to be proceeding or connected
  240. 6 - In function listbox double-click on lineDrop
  241. 7 - In function listbox double-click on lineDeallocateCall
  242. RESULTS:
  243. 1 - "lineDeallocateCall returned SUCCESS" should be displayed
  244. STEPS:
  245. 8 - In the Function listbox double-click on lineClose
  246. 9 - In the Function listbox double-click on lineShutdown
  247. 10 - Close TAPI Browser
  248. ***********************************************************************************
  249. **** Test Case - 15 lineShutDown - with active call
  250. ***********************************************************************************
  251. STEPS: // Verify successful line drop after initiating call
  252. 1 - Run TAPI Browser
  253. 2 - In the Function listbox double-click on lineInitializeExW
  254. 3 - In the Function listbox double-click on lineOpenW
  255. 4 - In the Function listbox double-click on lineMakeCallW
  256. 5 - In function listbox double-click on lineShutdown
  257. RESULTS:
  258. 1 - "lineShutdown returned SUCCESS" should be displayed
  259. STEPS:
  260. 6 - Close TAPI Browser
  261. ***********************************************************************************
  262. **** Test Case - 16 lineClose - with active call
  263. ***********************************************************************************
  264. STEPS: // Verify successful line close after initiating call
  265. 1 - Run TAPI Browser
  266. 2 - In the Function listbox double-click on lineInitializeExW
  267. 3 - In the Function listbox double-click on lineOpenW
  268. 4 - In the Function listbox double-click on lineMakeCallW
  269. 5 - In the Function listbox double-click on lineClose
  270. RESULTS:
  271. 1 - "lineClose returned SUCCESS" should be displayed
  272. STEPS:
  273. 6 - In the Function listbox double-click on lineShutdown
  274. 7 - Close TAPI Browser
  275. ***********************************************************************************
  276. **** Test Case - 21 lineSetCurrentlocationW - with valid and invalid Location IDs
  277. ***********************************************************************************
  278. Note: For the first segment of this test to be run successfully, a valid location must
  279. exist. Specifically for Step 6 (below) a location must be entered into the Dialing
  280. Properties on the My Location tab. If this entry is not the first location entered
  281. into Dialing Proprties (lineTranslateDialog / telephon.cpl), then the value in Step 6
  282. must be changed accordingly.
  283. STEPS: // Verify return for VALID location
  284. 1 - Run TB
  285. 2 - In the Function listbox double-click on lineInitializeExW
  286. 3 - Activate Params box
  287. 4 - In function listbox double-click on lineSetCurrentlocationW
  288. 5 - In dialog box select [dwLocation]
  289. 6 - Set Value to 00000001
  290. 7 - Press [OK] button
  291. RESULTS:
  292. 1 - "lineSetCurrentlocationW returned SUCCESS" should be displayed
  293. 2 - LINE_LINEDAVSTATE REINIT should be issued
  294. STEPS: // Verify return for INVALID location
  295. 8 - In function listbox double-click on lineSetCurrentlocationW
  296. 9 - In dialog box select [dwLocation]
  297. 10 - Set Value to ffffffff
  298. 11 - Press [OK] button
  299. RESULTS:
  300. 3 - "lineSetCurrentlocationW returned LINEERR_INVALLOCATION" should be displayed
  301. STEPS:
  302. 12 - In the Function listbox double-click on lineShutdown
  303. 13 - In dialog box press [OK]
  304. 14 - Close TB
  305. ***********************************************************************************
  306. **** Test Case - 22 lineGetCountryW
  307. ***********************************************************************************
  308. STEPS: // Verify entire country list can be returned
  309. 1 - Run TB
  310. 2 - On toolbar check Params box
  311. 3 - In function listbox double-click lineGetCountryW
  312. 4 - In dialog box select dwCountryID parameter
  313. 5 - Set value to 00000000
  314. 6 - Press [OK] button
  315. RESULT:
  316. 1 - "lineGetCountryW returned SUCCESS" should be displayed
  317. Note: LINECOUNTRYLIST will not display all countries in the list; this is due to the TAPI
  318. Browser buffer size. The dwNeededSize will indicate a large value (i.e., 3e45) which
  319. exceeds the dwTotalSize (i.e., the buffer, which is 1000).
  320. STEPS: //Verify country list can be accessed
  321. 7 - In function listbox double-click lineGetCountryW
  322. 8 - In dialog box select dwCountryID parameter
  323. 9 - Set value to 00000001
  324. 10 - Press [OK] button
  325. RESULT:
  326. 2 - "lineGetCountryW returned SUCCESS" should be displayed along with to follow return:
  327. LINECOUNTRYLIST
  328. dwTotalSize=x1000
  329. dwNeededSize=x6b
  330. dwUsedSize=x6b
  331. dwNumCountries=x1
  332. dwCountryListSize=x2c
  333. dwCountryListOffset=x18
  334. LINECOUNTRYENTRY[0]
  335. dwCountryID=x1
  336. dwCountryCode=x1
  337. dwNextCountryID=x65
  338. dwCountryNameSize=x19
  339. dwCountryNameOffset=x52
  340. 74696e55 53206465 65746174 666f2073 United States of
  341. 656d4120 61636972 xxxxxx00 xxxxxxxx America.
  342. dwSameAreaRuleSize=x2
  343. dwSameAreaRuleOffset=x50
  344. xxxx0047 xxxxxxxx xxxxxxxx xxxxxxxx G.
  345. dwLongDistanceRuleSize=x5
  346. dwLongDistanceRuleOffset=x4b
  347. 47463120 xxxxxx00 xxxxxxxx xxxxxxxx 1FG.
  348. dwInternationalRuleSize=x7
  349. dwInternationalRuleOffset=x44
  350. 45313130 xx004746 xxxxxxxx xxxxxxxx 011EFG.
  351. STEPS: //Verify correct return for invalid country ID
  352. 11 - In function listbox double-click lineGetCountryW
  353. 12 - In dialog box select dwCountryID parameter
  354. 13 - Set value to ffffffff
  355. 14 - Press [OK] button
  356. RESULT:
  357. 3 - "lineGetCountryW returned LINEERR_INVALCOUNTRYCODE" should be displayed
  358. STEPS:
  359. 15 - Close TB
  360. ***********************************************************************************
  361. **** Test Case - 26 lineGetTranslateCapsW - determine SUCCESS and validity of
  362. ***********************************************************************************
  363. Note: For this test to be run successfully, valid locations should exist. Specifically, a
  364. location must be entered into the Dialing Properties on the My Location tab; credit card
  365. usage should be defined as well.
  366. STEPS: // Verify lineGetTranslateCapsW retrieves all locations & cards data
  367. 1 - Run TAPI Browser
  368. 2 - In function listbox double-click on lineGetTranslateCapsW
  369. RESULT:
  370. 1 - "lineGetTranslateCapsW returned SUCCESS" should be displayed. For further detail, see
  371. example below.
  372. STEPS:
  373. 3 - Close TAPI Browser
  374. ***************************************
  375. Example of lineGetTranslateCapsW return:
  376. ***************************************
  377. lineGetTranslateCapsW returned SUCCESS
  378. LINETRANSLATECAPS
  379. dwTotalSize=x1000
  380. dwNeededSize=x35d
  381. dwUsedSize=xa5d
  382. dwNumLocations=x2
  383. dwLocationListSize=x88
  384. dwLocationListOffset=x2c
  385. dwNumCards=x4
  386. dwCardListSize=xd0
  387. dwCardListOffset=xb4
  388. dwCurrentPreferredCardID=x4
  389. LINELOCATIONENTRY[0]
  390. dwLocationNameSize=xa
  391. dwLocationNameOffset=x4d4
  392. 4f20794d 63696666 xxxx0065 xxxxxxxx My Office.
  393. dwCountryCode=x1
  394. dwCityCodeSize=x4
  395. dwCityCodeOffset=x4e4
  396. 00363032 xxxxxxxx xxxxxxxx xxxxxxxx 206.
  397. dwPreferredCardID=x4
  398. dwLocalAccessCodeSize=x3
  399. dwLocalAccessCodeOffset=x4de
  400. xx002c39 xxxxxxxx xxxxxxxx xxxxxxxx 9,.
  401. dwLongDistanceAccessCodeSize=x3
  402. dwLongDistanceAccessCodeOffset=x4e1
  403. xx002c39 xxxxxxxx xxxxxxxx xxxxxxxx 9,.
  404. dwTollPrefixListSize=x1
  405. dwTollPrefixListOffset=x4e8
  406. xxxxxx00 xxxxxxxx xxxxxxxx xxxxxxxx .
  407. dwCountryID=x1
  408. dwCancelCallWaitingSize=x5
  409. dwCancelCallWaitingOffset=x4e9
  410. 2c30372a xxxxxx00 xxxxxxxx xxxxxxxx *70,.
  411. LINELOCATIONENTRY[1]
  412. dwPermanentLocationID=x1
  413. dwLocationNameSize=xe
  414. dwLocationNameOffset=x4ee
  415. 646e6f4c 4f206e6f 63696666 xxxx0065 London Office.
  416. dwCountryCode=x2c
  417. dwCityCodeSize=x4
  418. dwCityCodeOffset=x500
  419. 00313730 xxxxxxxx xxxxxxxx xxxxxxxx 071.
  420. dwLocalAccessCodeSize=x2
  421. dwLocalAccessCodeOffset=x4fc
  422. xxxx0038 xxxxxxxx xxxxxxxx xxxxxxxx 8.
  423. dwLongDistanceAccessCodeSize=x2
  424. dwLongDistanceAccessCodeOffset=x4fe
  425. xxxx0038 xxxxxxxx xxxxxxxx xxxxxxxx 8.
  426. dwTollPrefixListSize=x1
  427. dwTollPrefixListOffset=x504
  428. xxxxxx00 xxxxxxxx xxxxxxxx xxxxxxxx .
  429. dwCountryID=x2c
  430. dwCancelCallWaitingSize=x5
  431. dwCancelCallWaitingOffset=x505
  432. 2c233037 xxxxxx00 xxxxxxxx xxxxxxxx 70#,.
  433. LINECARDENTRY[0]
  434. dwCardNameSize=x13
  435. dwCardNameOffset=x50a
  436. 656e6f4e 69442820 74636572 61694420 None (Direct Dia
  437. xx00296c xxxxxxxx xxxxxxxx xxxxxxxx l).
  438. dwSameAreaRuleSize=x1
  439. dwSameAreaRuleOffset=x51d
  440. xxxxxx00 xxxxxxxx xxxxxxxx xxxxxxxx .
  441. dwLongDistanceRuleSize=x1
  442. dwLongDistanceRuleOffset=x51e
  443. xxxxxx00 xxxxxxxx xxxxxxxx xxxxxxxx .
  444. dwInternationalRuleSize=x1
  445. dwInternationalRuleOffset=x51f
  446. xxxxxx00 xxxxxxxx xxxxxxxx xxxxxxxx .
  447. dwOptions=x1, PREDEFINED
  448. LINECARDENTRY[1]
  449. dwPermanentCardID=x1
  450. dwCardNameSize=x1c
  451. dwCardNameOffset=x520
  452. 54265441 72694420 20746365 6c616944 AT&T Direct Dial
  453. 61697620 41303120 00315454 xxxxxxxx via 10ATT1.
  454. dwSameAreaRuleSize=x2
  455. dwSameAreaRuleOffset=x53c
  456. xxxx0047 xxxxxxxx xxxxxxxx xxxxxxxx G.
  457. dwLongDistanceRuleSize=x9
  458. dwLongDistanceRuleOffset=x53e
  459. 38323031 47463138 xxxxxx00 xxxxxxxx 102881FG.
  460. dwInternationalRuleSize=xc
  461. dwInternationalRuleOffset=x547
  462. 38323031 31313038 00474645 xxxxxxxx 10288011EFG.
  463. dwOptions=x1, PREDEFINED
  464. LINECARDENTRY[2]
  465. dwPermanentCardID=x2
  466. dwCardNameSize=x10
  467. dwCardNameOffset=x553
  468. 54265441 61697620 41303120 00305454 AT&T via 10ATT0.
  469. dwSameAreaRuleSize=x2
  470. dwSameAreaRuleOffset=x563
  471. xxxx0047 xxxxxxxx xxxxxxxx xxxxxxxx G.
  472. dwLongDistanceRuleSize=xc
  473. dwLongDistanceRuleOffset=x565
  474. 38323031 47463038 00485424 xxxxxxxx 102880FG$TH.
  475. dwInternationalRuleSize=xe
  476. dwInternationalRuleOffset=x571
  477. 38323031 45313038 54244746 xxxx0048 1028801EFG$TH.
  478. dwOptions=x1, PREDEFINED
  479. LINECARDENTRY[3]
  480. dwPermanentCardID=x4
  481. dwCardNameSize=x1b
  482. dwCardNameOffset=x57f
  483. 2049434d 65726944 44207463 206c6169 MCI Direct Dial
  484. 20616976 32323031 xx003132 xxxxxxxx via 102221.
  485. dwSameAreaRuleSize=x2
  486. dwSameAreaRuleOffset=x59a
  487. xxxx0047 xxxxxxxx xxxxxxxx xxxxxxxx G.
  488. dwLongDistanceRuleSize=x9
  489. dwLongDistanceRuleOffset=x59c
  490. 32323031 47463132 xxxxxx00 xxxxxxxx 102221FG.
  491. dwInternationalRuleSize=xc
  492. dwInternationalRuleOffset=x5a5
  493. 32323031 31313032 00474645 xxxxxxxx 10222011EFG.
  494. dwOptions=x1, PREDEFINED
  495. This return should be checked against the data entered into Dialing Properties.
  496. In this example, there were two locations and four credit cards entered in Dialing
  497. Properties.
  498. > dwNumLocations=x2, so LINELOCATIONENTRY is given for values 0 and 1
  499. > dwNumCards=x4, so LINECARDENTRY is given for values 0 through 3
  500. > dwCurrentPreferredCardID=x4 which correctly references the MCI card under LINECARDENTRY[3]
  501. ***********************************************************************************
  502. **** Test Case - 27 lineTranslateAddressW - valid and invalid addresses
  503. ***********************************************************************************
  504. STEPS: // Test for valid address
  505. 1 - Run TAPI Browser
  506. 2 - In the Function listbox double-click on lineInitializeExW
  507. 3 - Click Param box
  508. 4 - In function listbox double-click on lineTranslateAddressW
  509. 5 - In dialog box select dwTranslateOptions
  510. 6 - Under Value click on "select none"
  511. 7 - In dialog box select lpszAddressln
  512. 8 - Set value to a valid canonical number [i.e., "+1 (555) 555-5555"]
  513. 9 - Press [OK] button
  514. Results:
  515. 1 - "lineTranslateAddressW returned SUCCESS" should be displayed
  516. STEPS: // Test for invalid address
  517. 11 - In function listbox double-click on lineTranslateAddressW
  518. 12 - In dialog box select dwTranslateOptions
  519. 13 - Under Value click on "select none"
  520. 14 - In dialog box select lpszAddressln
  521. 15 - Set value to a valid dialable format number [i.e., "206 555-5555"]
  522. 16 - Press [OK] button
  523. RESULTS:
  524. 2 - "lineTranslateAddressW returned SUCCESS" should be displayed
  525. STEPS: // Test for invalid address
  526. 17 - In function listbox double-click on lineTranslateAddressW
  527. 18 - In dialog box select dwTranslateOptions
  528. 19 - Under Value click on "select none"
  529. 20 - In dialog box select lpszAddressln
  530. 21 - Set value to "Invalid string pointer"
  531. 22 - Press [OK] button
  532. RESULTS:
  533. 3 - "lineTranslateAddressW returned LINEERR_INVALPOINTER" should be displayed
  534. STEPS:
  535. 23 - On toolsbar press lineShutdown
  536. 24 - In dialog box press [OK]
  537. 25 - Close TAPI Browser
  538. ***********************************************************************************
  539. **** Test Case - 28 lineTranslateAddressW - valid and invalid credit cards
  540. ***********************************************************************************
  541. Note: To test the return for a valid credit card, at least one credit card must be defined in Dialing Properties.
  542. STEPS: // Check return for valid credit card ID
  543. 1 - Run TAPI Browser
  544. 2 - In the Function listbox double-click on lineInitializeExW
  545. 3 - Check Param box
  546. 4 - In function listbox double-click on lineTranslateAddressW
  547. 5 - In dialog box select dwCard
  548. 6 - Set value to a valid dwLocationID (generally 00000001 should be valid)
  549. 7 - Press [OK] button
  550. RESULTS:
  551. 1 - "lineTranslateAddressW returned SUCCESS" should be displayed
  552. STEPS: // Check return for invalid credit card ID
  553. 8 - In function listbox double-click on lineTranslateAddressW
  554. 9 - In dialog box select dwCard
  555. 10 - Set value to ffffffff
  556. 11 - Press [OK] button
  557. RESULTS:
  558. 2 - "lineTranslateAddressW returned LINEERR_INVALCARD" should be displayed
  559. STEPS:
  560. 12 - In the Function listbox double-click on lineShutdown
  561. 13 - In dialog box press [OK] button
  562. 14 - Close TAPI Browser
  563. ***********************************************************************************
  564. **** Test Case - 29 lineTranslateAddressW - valid and invalid translate options
  565. ***********************************************************************************
  566. Note: Card override translation option is tested under TCM case ID 28.
  567. STEPS: // No translate options
  568. 1 - Run TAPI Browser
  569. 2 - In the Function listbox double-click on lineInitializeExW
  570. 3 - Check Params box
  571. 4 - In function listbox double-click on lineTranslateAddressW
  572. 5 - In dialog box click on dwTranslateOptions
  573. 6 - Change value to "select none"
  574. 7 - Press [OK] button
  575. RESULTS:
  576. 1 - "lineTranslateAddressW returned SUCCESS" should be displayed
  577. STEPS: // Cancel call waiting
  578. 8 - In function listbox double-click on lineTranslateAddressW
  579. 9 - In dialog box click on dwTranslateOptions
  580. 10 - Click on CARDOVERRIDE (to turn off the default)
  581. 11 - Click on CANCELCALLWAITING
  582. 12 - Press [OK] button
  583. RESULTS:
  584. 2 - "lineTranslateAddressW returned SUCCESS" should be displayed
  585. STEPS: // Force local call
  586. 13 - In function listbox double-click on lineTranslateAddressW
  587. 14 - In dialog box click on dwTranslateOptions
  588. 15 - Click on CARDOVERRIDE (to turn off the default)
  589. 16 - Click on FORCELOCAL
  590. 17 - Press [OK] button
  591. RESULTS:
  592. 3 - "lineTranslateAddressW returned SUCCESS" should be displayed
  593. STEPS: // Force long distance call
  594. 18 - In function listbox double-click on lineTranslateAddressW
  595. 19 - In dialog box click on dwTranslateOptions
  596. 20 - Click on CARDOVERRIDE (to turn off the default)
  597. 21 - Click on FORCELD
  598. 22 - Press [OK] button
  599. RESULTS:
  600. 4 - "lineTranslateAddressW returned SUCCESS" should be displayed
  601. STEPS: // Invalid paramters-- conflict local and long distance
  602. 23 - In function listbox double-click on lineTranslateAddressW
  603. 24 - In dialog box click on dwTranslateOptions
  604. 25 - Click on CARDOVERRIDE (to turn off the default)
  605. 26 - Click on FORCELOCAL
  606. 27 - Click on FORCELD
  607. 28 - Press [OK] button
  608. RESULTS:
  609. 5 - "lineTranslateAddressW returned LINEERR_INVALPARAM" should be displayed
  610. STEPS:
  611. 29 - In the Function listbox double-click on lineShutdown
  612. 30 - In dialog box press [OK]
  613. 31 - Close TAPI Browser
  614. ***********************************************************************************
  615. **** Test Case - 31 lineConfigDialogW
  616. ***********************************************************************************
  617. STEPS: // Verify dialog pop-up
  618. 1 - Run TAPI Browser
  619. 2 - In the Function listbox double-click on lineInitializeExW
  620. 3 - In function listbox double-click on lineConfigDialogW
  621. RESULTS:
  622. 1 - Pop-up dialog box for configuring installed modem
  623. STEPS: // Close dialog box
  624. 4 - On dialog box press [OK] button
  625. RESULTS:
  626. 2 - "lineConfigDialogW returned SUCCESS" should be displayed
  627. STEPS:
  628. 6 - In the Function listbox double-click on lineShutdown
  629. 7 - Close TAPI Browser
  630. ***********************************************************************************
  631. **** Test Case - 32 lineTranslateDialog
  632. ***********************************************************************************
  633. STEPS: // Verify dialog pop-up
  634. 1 - Run TAPI Browser
  635. 2 - In function listbox double-click on lineConfigDialogW
  636. RESULTS:
  637. 1 - Pop-up dialog box labeled Dialing Properties
  638. STEPS: // Close dialog box
  639. 3 - On dialog box press [OK] button
  640. RESULTS:
  641. 2 - "lineTranslateDialog returned SUCCESS" should be displayed
  642. STEPS:
  643. 5 - In function listbox double-click on lineConfigDialogW
  644. 6 - On Dialing Properties dialog box, check (or uncheck) Dial as Long Distance box
  645. 7 - On Dialing Properties press [OK] button
  646. RESULTS:
  647. 3 - "lineTranslateDialog returned SUCCESS" should be displayed, as well as "received LINE_LINEDEVSTATE" with param1 returning "REINIT"
  648. STEPS:
  649. 8 - Close TAPI Browser
  650. ***********************************************************************************
  651. **** Test Case - 80 lineDialW
  652. ***********************************************************************************
  653. lineInitializeW
  654. lineOpenW
  655. lineMakeCallW with lpszDestAddr set to NULL
  656. lineDialW with lpszDestAddr set to a phone number to call.
  657. Result:
  658. Talk/Drop dialog should appear, and call should ring through to the number you entered.
  659. lineDrop
  660. lineClose
  661. lineShutdown
  662. ***********************************************************************************
  663. **** Test Case - 81 lineGetIDW - comm & comm/datamodem
  664. ***********************************************************************************
  665. lineInitializeExW
  666. lineOpenW as Owner
  667. lineGetIDW with lpszDeviceClass set to 'comm'
  668. Result:
  669. The data after dwStringOffset should be the name of the modem
  670. lineGetIDW with lpszDeviceClass set to 'ndis'
  671. Result:
  672. The data after dwStringOffset should be set to com.
  673. lineGetIDW with lpszDeviceClass set to 'comm/datamodem'
  674. Result:
  675. The data after dwStringOffset should be a numeric value (8 digits) followed by the name of the modem. The numeric value is a handle to the comm port. It's usually 00000000 or a low number.
  676. At the bottom of the TB API list, CloseHandle is listed. Call CloseHandle with hObject set to the numeric value returned in lineGetIDW with 'comm/datamodem'.
  677. Result:
  678. Handle is closed. The handle should be identified as the same numeric value entered into hObject.
  679. lineClose
  680. lineShutdown
  681. ***********************************************************************************
  682. **** Test Case - 83 lineReply & lineCallState
  683. ***********************************************************************************
  684. STEPS: // Check LINE_REPLY is correct for instance of multiple apps running
  685. 1 - Run TAPI Browser
  686. 2 - In the Function listbox double-click on lineInitializeExW
  687. 3 - In the Function listbox double-click on lineInitializeExW
  688. 4 - In the Function listbox double-click on lineShutdown
  689. 5 - In the Function listbox double-click on lineOpenW
  690. 6 - In the Function listbox double-click on lineMakeCallW
  691. RESULTS:
  692. 1 - TB20 should display the following:
  693. lineMakeCallW returned x1
  694. received LINE_REPLY : hDev=x0, cbInst=x0
  695. p1=x1,
  696. p2=x0,
  697. p3=x0
  698. received LINE_CALLSTATE : hDev=x_______, cbInst=x0
  699. p1=x8, DIALTONE
  700. p2=x20, UNAVAIL
  701. p3=x0,
  702. received LINE_CALLSTATE : hDev=x_______, cbInst=x0
  703. p1=x10, DIALING
  704. p2=x0,
  705. p3=x0,
  706. received LINE_CALLSTATE : hDev=x_______, cbInst=x0
  707. p1=x200 PROCEEDING
  708. p2=x0,
  709. p3=x0,
  710. [Note: The absence of the LINE_REPLY or LINE_CALLSTATE indicates failure of the test case even if the call otherwise succeeds.]
  711. STEPS:
  712. 7 - In the Function listbox double-click on lineDrop and then lineDeallocateCall
  713. 8 - In the Function listbox double-click on lineClose
  714. 9 - In the Function listbox double-click on lineShutdown
  715. 10 - Close TAPI Browser
  716. ***********************************************************************************
  717. **** Test Case - 175 lineNegotiateAPIVersion / 2.0
  718. ***********************************************************************************
  719. STEPS: // default call should get 2.0 version # returned
  720. 1 - Run TB
  721. 2 - turn off the [Parms] checkbox
  722. 3 - Double Click lineInitializeEx
  723. 4 - dblclick [lineNegotiateAPIVersion]
  724. RESULTS:
  725. 1 - should get the following in the results window
  726. lineNegotiateAPIVersion returned SUCCESS
  727. APIVersion=x20000
  728. extID.ID0=x0, .ID1=x0, .ID2=x0, .ID3=x0,
  729. STEPS: //ensure if LOW is > high ver #, this fails.
  730. 5 - turn on the [Parms] checkbox
  731. 6 - dblclick [lineNegotiateAPIVersion]
  732. 7 - click [dwAPILowVersion]
  733. 8 - enter 00030000
  734. 9 - Press OK
  735. RESULTS:
  736. 2 - should get the following in the results window
  737. lineNegotiateAPIVersion returned LINEERR_INCOMPATIBLEAPIVERSION
  738. STEPS: //ensure if HIGH is both < high ver # and > low ver# we get a match
  739. 10 - dblclick [lineNegotiateAPIVersion]
  740. 11 - click [dwAPIHighVersion]
  741. 12 - enter 00010003
  742. 13 - Press OK
  743. RESULTS:
  744. 3 - should get the following in the results window
  745. lineNegotiateAPIVersion returned SUCCESS
  746. APIVersion=x10003
  747. extID.ID0=x0, .ID1=x0, .ID2=x0, .ID3=x0,
  748. STEPS:
  749. 14 - In the Function listbox double-click lineShutdown
  750. 15 - Close TB
  751. ************************* End Of Uni_BVT Test ************************************