rpcrt4/tests: Always run tests that don't require special permissions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
4a73fbbd40
commit
54f9b33476
|
@ -78,35 +78,49 @@ static BOOL Uuid_Comparison_Grid[11][11] = {
|
|||
{ TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE }
|
||||
};
|
||||
|
||||
static void UuidConversionAndComparison(void) {
|
||||
static void test_UuidEqual(void)
|
||||
{
|
||||
UUID Uuid1, Uuid2, *PUuid1, *PUuid2;
|
||||
RPC_STATUS status;
|
||||
int i1, i2;
|
||||
|
||||
/* Uuid Equality */
|
||||
for (i1 = 0; i1 < 11; i1++)
|
||||
{
|
||||
for (i2 = 0; i2 < 11; i2++)
|
||||
{
|
||||
if (i1 < 10)
|
||||
{
|
||||
Uuid1 = Uuid_Table[i1];
|
||||
PUuid1 = &Uuid1;
|
||||
}
|
||||
else
|
||||
PUuid1 = NULL;
|
||||
|
||||
if (i2 < 10)
|
||||
{
|
||||
Uuid2 = Uuid_Table[i2];
|
||||
PUuid2 = &Uuid2;
|
||||
}
|
||||
else
|
||||
PUuid2 = NULL;
|
||||
ok(UuidEqual(PUuid1, PUuid2, &status) == Uuid_Comparison_Grid[i1][i2], "UUID Equality\n" );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void test_UuidFromString(void)
|
||||
{
|
||||
CHAR strx[100], x;
|
||||
LPSTR str = strx;
|
||||
WCHAR wstrx[100], wx;
|
||||
LPWSTR wstr = wstrx;
|
||||
|
||||
UUID Uuid1, Uuid2, *PUuid1, *PUuid2;
|
||||
UUID Uuid1, Uuid2;
|
||||
RPC_STATUS rslt;
|
||||
|
||||
int i1,i2;
|
||||
|
||||
/* Uuid Equality */
|
||||
for (i1 = 0; i1 < 11; i1++)
|
||||
for (i2 = 0; i2 < 11; i2++) {
|
||||
if (i1 < 10) {
|
||||
Uuid1 = Uuid_Table[i1];
|
||||
PUuid1 = &Uuid1;
|
||||
} else {
|
||||
PUuid1 = NULL;
|
||||
}
|
||||
if (i2 < 10) {
|
||||
Uuid2 = Uuid_Table[i2];
|
||||
PUuid2 = &Uuid2;
|
||||
} else {
|
||||
PUuid2 = NULL;
|
||||
}
|
||||
ok( (UuidEqual(PUuid1, PUuid2, &rslt) == Uuid_Comparison_Grid[i1][i2]), "UUID Equality\n" );
|
||||
}
|
||||
|
||||
/* Uuid to String to Uuid (char) */
|
||||
for (i1 = 0; i1 < 10; i1++) {
|
||||
Uuid1 = Uuid_Table[i1];
|
||||
|
@ -141,7 +155,7 @@ static void UuidConversionAndComparison(void) {
|
|||
}
|
||||
}
|
||||
|
||||
static void TestDceErrorInqText (void)
|
||||
static void test_DceErrorInqTextA(void)
|
||||
{
|
||||
char bufferInvalid [1024];
|
||||
char buffer [1024]; /* The required size is not documented but would
|
||||
|
@ -649,17 +663,10 @@ static void test_RpcStringBindingParseA(void)
|
|||
ok(options == NULL, "options was %p instead of NULL\n", options);
|
||||
}
|
||||
|
||||
static void test_RpcExceptionFilter(const char *func_name)
|
||||
static void test_RpcExceptionFilter(void)
|
||||
{
|
||||
int retval, retval2;
|
||||
ULONG exception;
|
||||
int retval;
|
||||
int (WINAPI *pRpcExceptionFilter)(ULONG) = (void *)GetProcAddress(GetModuleHandleA("rpcrt4.dll"), func_name);
|
||||
|
||||
if (!pRpcExceptionFilter)
|
||||
{
|
||||
win_skip("%s not exported\n", func_name);
|
||||
return;
|
||||
}
|
||||
|
||||
for (exception = 0; exception < STATUS_REG_NAT_CONSUMPTION; exception++)
|
||||
{
|
||||
|
@ -668,7 +675,8 @@ static void test_RpcExceptionFilter(const char *func_name)
|
|||
if (exception == 0x40000005) exception = 0x80000000;
|
||||
if (exception == 0x80000005) exception = 0xc0000000;
|
||||
|
||||
retval = pRpcExceptionFilter(exception);
|
||||
retval = RpcExceptionFilter(exception);
|
||||
retval2 = I_RpcExceptionFilter(exception);
|
||||
switch (exception)
|
||||
{
|
||||
case STATUS_DATATYPE_MISALIGNMENT:
|
||||
|
@ -679,17 +687,25 @@ static void test_RpcExceptionFilter(const char *func_name)
|
|||
case STATUS_INSTRUCTION_MISALIGNMENT:
|
||||
case STATUS_STACK_OVERFLOW:
|
||||
case STATUS_POSSIBLE_DEADLOCK:
|
||||
ok(retval == EXCEPTION_CONTINUE_SEARCH, "%s(0x%x) should have returned %d instead of %d\n",
|
||||
func_name, exception, EXCEPTION_CONTINUE_SEARCH, retval);
|
||||
ok(retval == EXCEPTION_CONTINUE_SEARCH, "RpcExceptionFilter(0x%x) should have returned %d instead of %d\n",
|
||||
exception, EXCEPTION_CONTINUE_SEARCH, retval);
|
||||
ok(retval2 == EXCEPTION_CONTINUE_SEARCH, "I_RpcExceptionFilter(0x%x) should have returned %d instead of %d\n",
|
||||
exception, EXCEPTION_CONTINUE_SEARCH, retval);
|
||||
break;
|
||||
case STATUS_GUARD_PAGE_VIOLATION:
|
||||
case STATUS_IN_PAGE_ERROR:
|
||||
case STATUS_HANDLE_NOT_CLOSABLE:
|
||||
trace("%s(0x%x) returned %d\n", func_name, exception, retval);
|
||||
todo_wine
|
||||
{
|
||||
ok(!retval, "Unexpected return value %d.\n", retval);
|
||||
ok(!retval2, "Unexpected return value %d.\n", retval2);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
ok(retval == EXCEPTION_EXECUTE_HANDLER, "%s(0x%x) should have returned %d instead of %d\n",
|
||||
func_name, exception, EXCEPTION_EXECUTE_HANDLER, retval);
|
||||
ok(retval == EXCEPTION_EXECUTE_HANDLER, "RpcExceptionFilter(0x%x) should have returned %d instead of %d\n",
|
||||
exception, EXCEPTION_EXECUTE_HANDLER, retval);
|
||||
ok(retval2 == EXCEPTION_EXECUTE_HANDLER, "I_RpcExceptionFilter(0x%x) should have returned %d instead of %d\n",
|
||||
exception, EXCEPTION_EXECUTE_HANDLER, retval);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1235,22 +1251,23 @@ START_TEST( rpc )
|
|||
static unsigned char np_address[] = ".";
|
||||
BOOL firewall_enabled = is_firewall_enabled();
|
||||
|
||||
test_UuidEqual();
|
||||
test_UuidFromString();
|
||||
test_UuidCreate();
|
||||
test_UuidCreateSequential();
|
||||
test_DceErrorInqTextA();
|
||||
test_I_RpcMapWin32Status();
|
||||
test_RpcStringBindingParseA();
|
||||
test_RpcExceptionFilter();
|
||||
|
||||
if (firewall_enabled && !is_process_elevated())
|
||||
{
|
||||
skip("no privileges, skipping tests to avoid firewall dialog\n");
|
||||
return;
|
||||
}
|
||||
|
||||
UuidConversionAndComparison();
|
||||
TestDceErrorInqText();
|
||||
test_towers();
|
||||
test_I_RpcMapWin32Status();
|
||||
test_RpcStringBindingParseA();
|
||||
test_RpcExceptionFilter("I_RpcExceptionFilter");
|
||||
test_RpcExceptionFilter("RpcExceptionFilter");
|
||||
test_RpcStringBindingFromBinding();
|
||||
test_UuidCreate();
|
||||
test_UuidCreateSequential();
|
||||
test_RpcBindingFree();
|
||||
test_RpcIfInqId();
|
||||
test_RpcServerInqDefaultPrincName();
|
||||
|
|
Loading…
Reference in New Issue