/**
  * @dataProvider allBuilders
  */
 public function testOriginalCloneIsNotModifiedIsNotDisabled(MockBuilder $builder, $type)
 {
     if (self::MOCK_INTERFACE !== $type) {
         $this->expectFailure('Did clone.');
     }
     $mock = $builder->get();
     $cloned = clone $mock;
     $this->assert($cloned)->isAnInstanceOf(get_class($mock));
 }
 /**
  * @dataProvider mockBuilders
  */
 public function testMockDoesNotEnableConstructorByDefault(MockBuilder $builder, $type)
 {
     if (self::MOCK_INTERFACE === $type) {
         $this->notApplicable();
         return;
     }
     $mock = $builder->get();
     $this->assert($mock->constructorRun)->isFalse;
 }
 /**
  * @group #182
  * @dataProvider allBuilders
  */
 public function testSetAPrivatePropertyOnAMockWillSetThePropertyOnTheNonMockedClass(MockBuilder $builder, $type)
 {
     if (self::MOCK_INTERFACE === $type) {
         $this->expectFailure("You cannot set a property on an interface");
     }
     $mock = $builder->get();
     $this->setProperty($mock, 'secret', 'ok');
     $this->assert($this->getProperty($mock, 'secret'))->equals('ok');
 }
 /**
  * @dataProvider allBuilders
  */
 public function testMockImplementsMockInterface(MockBuilder $builder)
 {
     $mock = $builder->get();
     $this->assert($mock)->isAnInstanceOf('\\Concise\\Mock\\MockInterface');
 }