public function testInstanceTester()
 {
     $instance = new ClassInfo();
     static::assertTrue(ClassInfo::assertInstance($instance));
     static::assertTrue(ClassInfo::isInstance($instance));
     static::assertFalse(ClassInfo::isInstance(__CLASS__));
     $this->expectException('\\InvalidArgumentException');
     ClassInfo::assertInstance(__CLASS__);
 }
 /**
  * @param object                 $instance
  * @param null|object            $bind
  * @param null|ResolverInterface $resolver
  */
 public function __construct($instance, $bind = null, ResolverInterface $resolver = null)
 {
     try {
         ClassInfo::assertInstance($instance);
         parent::__construct(new \ReflectionObject($instance), $bind, $resolver);
     } catch (\Exception $exception) {
         throw $this->getConstructorException(['object instance', $instance]);
     }
 }