public function testUsesCache()
 {
     $id = 'foreignKeyNode';
     $event = $this->getMockBuilder('Symfony\\Component\\EventDispatcher\\EventDispatcherInterface')->getMock();
     $cache = $this->getMockBuilder('Faker\\Components\\Engine\\Common\\GeneratorCache')->disableOriginalConstructor()->getMock();
     $cache->expects($this->once())->method('rewind');
     $cache->expects($this->once())->method('current')->will($this->returnValue(5));
     $cache->expects($this->once())->method('next');
     $foreignKey = new ForeignKeyNode($id, $event);
     $foreignKey->setResultCache($cache);
     $values = array();
     $this->assertEquals(5, $foreignKey->generate(1, $values));
     $foreignKey->setUseCache(false);
     $this->assertEquals(null, $foreignKey->generate(1, $values));
 }