示例#1
0
 /**
  * Provides data for testCheckRequirements().
  */
 public function providerTestCheckRequirements()
 {
     $requirement_optional = new ContextDefinition();
     $requirement_optional->setRequired(FALSE);
     $requirement_any = new ContextDefinition();
     $requirement_any->setRequired(TRUE);
     $context_any = $this->getMock('Drupal\\Core\\Plugin\\Context\\ContextInterface');
     $context_any->expects($this->atLeastOnce())->method('getContextDefinition')->will($this->returnValue(new ContextDefinition('empty')));
     $requirement_specific = new ContextDefinition('specific');
     $requirement_specific->setConstraints(array('bar' => 'baz'));
     $context_constraint_mismatch = $this->getMock('Drupal\\Core\\Plugin\\Context\\ContextInterface');
     $context_constraint_mismatch->expects($this->atLeastOnce())->method('getContextDefinition')->will($this->returnValue(new ContextDefinition('foo')));
     $context_datatype_mismatch = $this->getMock('Drupal\\Core\\Plugin\\Context\\ContextInterface');
     $context_datatype_mismatch->expects($this->atLeastOnce())->method('getContextDefinition')->will($this->returnValue(new ContextDefinition('fuzzy')));
     $context_definition_specific = new ContextDefinition('specific');
     $context_definition_specific->setConstraints(array('bar' => 'baz'));
     $context_specific = $this->getMock('Drupal\\Core\\Plugin\\Context\\ContextInterface');
     $context_specific->expects($this->atLeastOnce())->method('getContextDefinition')->will($this->returnValue($context_definition_specific));
     $data = array();
     $data[] = array(array(), array(), TRUE);
     $data[] = array(array(), array($requirement_any), FALSE);
     $data[] = array(array(), array($requirement_optional), TRUE);
     $data[] = array(array(), array($requirement_any, $requirement_optional), FALSE);
     $data[] = array(array($context_any), array($requirement_any), TRUE);
     $data[] = array(array($context_constraint_mismatch), array($requirement_specific), FALSE);
     $data[] = array(array($context_datatype_mismatch), array($requirement_specific), FALSE);
     $data[] = array(array($context_specific), array($requirement_specific), TRUE);
     return $data;
 }