| 1834 | const handleJob = async () => {}; |
| 1835 | |
| 1836 | const success = (job) => { |
| 1837 | if (processed.has(job.data.count)) { |
| 1838 | t.fail('job already processed'); |
| 1839 | } |
| 1840 | processed.add(job.data.count); |
| 1841 | counter++; |
| 1842 | |
| 1843 | // Don't verify that we've finished until we've processed enough jobs. |
| 1844 | if (counter < numJobs) return; |
| 1845 | t.is(counter, numJobs); |
| 1846 | |
| 1847 | // Make sure every job has actually been processed. |
| 1848 | for (let i = 0; i < numJobs; i++) { |
| 1849 | t.true(processed.has(i)); |
| 1850 | } |
| 1851 | finish(null, Promise.all(processors.map((queue) => queue.close()))); |
| 1852 | }; |
| 1853 | |
| 1854 | for (const queue of processors) { |
| 1855 | queue.process(handleJob).on('succeeded', success); |