schedulePollTask queues a Runnable for a MockConsumer to execute on a later poll(Duration) call. This gives an indefinitely looping consumer deterministic test events without starting another test thread. section 14.1.1
Currency conversion loop
A test constructs CurrencyExchangeClient with a MockConsumer and MockProducer, queues initialization, adds euro, pound, and yen records, then queues close. The loop runs through the scripted polls, while the producer history verifies the three converted transactions.
