public function testWriteWithoutVersion()
 {
     $original = new SiteTree();
     $original->write();
     // Create a second version (different behaviour),
     // as SiteTree->onAfterWrite() checks for Version == 1
     $original->Title = 'prepare';
     $original->write();
     $originalVersion = $original->Version;
     $virtual = new VirtualPage();
     $virtual->CopyContentFromID = $original->ID;
     $virtual->write();
     // Create a second version, see above.
     $virtual->Title = 'prepare';
     $virtual->write();
     $virtualVersion = $virtual->Version;
     $virtual->Title = 'changed 1';
     $virtual->writeWithoutVersion();
     $this->assertEquals($virtual->Version, $virtualVersion, 'writeWithoutVersion() on VirtualPage doesnt increment version');
     $original->Title = 'changed 2';
     $original->writeWithoutVersion();
     DataObject::flush_and_destroy_cache();
     $virtual = DataObject::get_by_id('VirtualPage', $virtual->ID, false);
     $this->assertEquals($virtual->Version, $virtualVersion, 'writeWithoutVersion() on original page doesnt increment version on related VirtualPage');
     $original->Title = 'changed 3';
     $original->write();
     DataObject::flush_and_destroy_cache();
     $virtual = DataObject::get_by_id('VirtualPage', $virtual->ID, false);
     $this->assertGreaterThan($virtualVersion, $virtual->Version, 'write() on original page does increment version on related VirtualPage');
 }