improved monitor first update test

This commit is contained in:
Jeff Hill
2001-06-21 17:11:39 +00:00
parent ae57d2592e
commit f2332d1bb1

View File

@@ -75,12 +75,13 @@ void nUpdatesTester ( struct event_handler_args args )
}
}
void monitorSubscriptionFirstUpdateTest ( chid chan )
void monitorSubscriptionFirstUpdateTest ( const char *pName, chid chan )
{
int status;
unsigned eventCount = 0u;
unsigned waitCount = 0u;
evid id;
chid chan2;
showProgressBegin ();
@@ -100,6 +101,25 @@ void monitorSubscriptionFirstUpdateTest ( chid chan )
status = ca_clear_event ( id );
SEVCHK (status, 0);
eventCount = 0u;
waitCount = 0u;
status = ca_search ( pName, &chan2 );
SEVCHK ( status, 0 );
status = ca_add_event ( DBR_FLOAT, chan2,
nUpdatesTester, &eventCount, &id );
SEVCHK ( status, 0 );
status = ca_pend_io ( 20.0 );
SEVCHK (status, 0);
ca_pend_event ( 0.1 );
while ( eventCount < 1 && waitCount++ < 100 ) {
printf ( "-" );
fflush ( stdout );
ca_pend_event ( 0.1 );
}
assert ( eventCount > 0 );
status = ca_clear_channel ( chan2 );
SEVCHK ( status, 0 );
showProgressEnd ();
}
@@ -1902,7 +1922,7 @@ int acctst ( char *pName, unsigned channelCount, unsigned repetitionCount )
exceptionTest ( chan );
arrayTest ( chan );
verifyMonitorSubscriptionFlushIO ( chan );
monitorSubscriptionFirstUpdateTest ( chan );
monitorSubscriptionFirstUpdateTest ( pName, chan );
performGrEnumTest ( chan );
performCtrlDoubleTest ( chan );
verifyBlockInPendIO ( chan );