/**
  *
  */
 public function testWrite_WriteManyObjects_SeedsAndObjectsWritten()
 {
     $this->markTestIncomplete('Need silverstripe-batchwrite compatibility.');
     $batchSizes = array(10, 30, 100, 300);
     foreach ($batchSizes as $batchSize) {
         $writer = new BatchedSeedWriter($batchSize);
         for ($i = 0; $i < 100; $i++) {
             $dog = new Dog();
             $dog->Name = 'Bob' . $i;
             $dog->Breed = 'Cavvy' . $i;
             $owner = new Human();
             $owner->Name = 'Jim' . $i;
             $owner->onAfterExistsCallback(function ($owner) use($dog, $writer) {
                 $dog->OwnerID = $owner->ID;
                 $writer->write($dog, $this->createField());
             });
             $writer->write($owner, $this->createField());
         }
         $writer->finish();
         $dogSeeds = \SeedRecord::get()->filter('SeedClassName', 'Seeder\\Tests\\Dog');
         $ownerSeeds = \SeedRecord::get()->filter('SeedClassName', 'Seeder\\Tests\\Human');
         $dogs = Dog::get();
         $owners = Human::get();
         $this->assertEquals(100, $dogs->Count());
         $this->assertEquals(100, $owners->Count());
         $this->assertEquals(100, $dogSeeds->Count());
         $this->assertEquals(100, $ownerSeeds->Count());
         for ($i = 0; $i < 100; $i++) {
             $dog = $dogs[$i];
             $owner = $owners[$i];
             $ownerSeed = $ownerSeeds[$i];
             $dogSeed = $dogSeeds[$i];
             $this->assertEquals('Seeder\\Tests\\Dog', $dogSeed->SeedClassName);
             $this->assertEquals($dog->ID, $dogSeed->SeedID);
             $this->assertEquals('Seeder\\Tests\\Human', $ownerSeed->SeedClassName);
             $this->assertEquals($owner->ID, $ownerSeed->SeedID);
         }
         $writer->delete($dogs);
         $writer->delete($dogSeeds);
         $writer->delete($owners);
         $writer->delete($ownerSeeds);
         $writer->finish();
         $this->assertEquals(0, Dog::get()->Count());
         $this->assertEquals(0, Human::get()->Count());
         $this->assertEquals(0, \SeedRecord::get()->Count());
     }
 }