HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/quadcode-site/node_modules/npm/node_modules/dezalgo/test/basic.js
var test = require('tap').test
var dz = require('../dezalgo.js')

test('the dark pony', function(t) {

  var n = 0
  function foo(i, cb) {
    cb = dz(cb)
    if (++n % 2) cb(true, i)
    else process.nextTick(cb.bind(null, false, i))
  }

  var called = 0
  var order = [0, 2, 4, 6, 8, 1, 3, 5, 7, 9]
  var o = 0
  for (var i = 0; i < 10; i++) {
    foo(i, function(cached, i) {
      t.equal(i, order[o++])
      t.equal(i % 2, cached ? 0 : 1)
      called++
    })
    t.equal(called, 0)
  }

  setTimeout(function() {
    t.equal(called, 10)
    t.end()
  })
})