/**
  * Test insert many and each() callback
  */
 public function testInsertManyAndEach()
 {
     $this->assertEquals(0, $this->accounts->count());
     list($id1, $id2, $id3) = $this->accounts->insert(['license_key' => '123', 'subdomain' => 'afiveone', 'url' => 'https://www.activecollab.com'], ['license_key' => '456', 'subdomain' => 'feather', 'url' => 'https://www.activecollab.com'], ['license_key' => '789', 'subdomain' => 'supportyard', 'url' => 'https://www.activecollab.com']);
     $this->assertEquals(1, $id1);
     $this->assertEquals(2, $id2);
     $this->assertEquals(3, $id3);
     $this->assertEquals(3, $this->accounts->count());
     $callback_triggered = 0;
     $this->accounts->each(function ($data, $iteration) use(&$callback_triggered) {
         switch ($data['_id']) {
             case 1:
                 $this->assertEquals('afiveone', $data['subdomain']);
                 $this->assertEquals(1, $iteration);
                 break;
             case 2:
                 $this->assertEquals('feather', $data['subdomain']);
                 $this->assertEquals(2, $iteration);
                 break;
             case 3:
                 $this->assertEquals('supportyard', $data['subdomain']);
                 $this->assertEquals(3, $iteration);
                 break;
             default:
                 $this->fail('Unexpected ID');
         }
         $callback_triggered++;
     });
     $this->assertEquals(3, $callback_triggered);
 }