Thank you for commenting.


2014-05-01 17:59 GMT+08:00 Piotr Caban <piotr.caban@gmail.com>:
On 05/01/14 10:16, Shuai Meng wrote:
Changelog:
������ ������added tests on object subtype.
������ ������improved CBool.

https://newtestbot.winehq.org/JobDetails.pl?Key=6689

---
������ dlls/vbscript/global.c ������ ������ ������| 41
++++++++++++-----------------------------
������ dlls/vbscript/tests/api.vbs | 42
++++++++++++++++++++++++++++++++++++++++++
������ 2 files changed, 54 insertions(+), 29 deletions(-)
The tests are not passing on wine:
run.c:1013: Test failed: api.vbs: L"Err.number = 0"
run.c:1013: Test failed: api.vbs: L"Err.number = 0"
run.c:1013: Test failed: api.vbs: L"Err.number = 0"

I have changed the tests like this and they can pass on wine with no failure.������
481 Sub testCBoolError
482 ������ ������ on error resume next
483������
484 ������ ������ Call Err.clear()
485 ������ ������ Call CBool("")
486 ������ ������ Call ok(Err.number = 13, "Err.number = " & Err.number)
487������
488 ������ ������ Call Err.clear()
489 ������ ������ Call CBool("#False#")
490 ������ ������ Call ok(Err.number = 13, "Err.number = " & Err.number)
491 ������ ������������
492 ������ ������ Call Err.clear()
493 ������ ������ Call CBool("#True#")
494 ������ ������ Call ok(Err.number = 13, "Err.number = " & Err.number)
495 ������ ������������
496 ������ ������ Call Err.clear()
497 ������ ������ Call CBool("MyObject")
498 ������ ������ Call ok(Err.number = 13, "Err.number = " & Err.number)
499 End Sub

These are the failing tests:
Call testCBoolError("#TRUE#", 458)
Call testCBoolError("#FALSE#", 458)
Call testCBoolError(MyObject, 458)

As showed above, I have changed 458 into 13, and can pass on winxp. However there two failures come nowhere like this:
run.c:1013: Test failed: api.vbs: L"Err.number = 0"
run.c:1013: Test failed: api.vbs: L"Err.number = 0"
I can't understand it: if Err.number = 0 then everything is right, why does it come out?
Could you please also add following tests:
MyObject.myval = 1
Call ok(CBool(MyObject) = True, "CBool(MyObject) = " & CBool(MyObject))
MyObject.myval = 0
Call ok(CBool(MyObject) = False, "CBool(MyObject) = " & CBool(MyObject))
������
Ok, but does this mean I am testing object in the proper way?
������