Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. AssertRuleHelper.php

function AssertRuleHelper::isMethodOrStaticCallOnAssert

* @phpstan-assert-if-true Node\Expr\MethodCall|Node\Expr\StaticCall $node

3 calls to AssertRuleHelper::isMethodOrStaticCallOnAssert()
AssertSameBooleanExpectedRule::processNode in vendor/phpstan/phpstan-phpunit/src/Rules/PHPUnit/AssertSameBooleanExpectedRule.php
AssertSameNullExpectedRule::processNode in vendor/phpstan/phpstan-phpunit/src/Rules/PHPUnit/AssertSameNullExpectedRule.php
AssertSameWithCountRule::processNode in vendor/phpstan/phpstan-phpunit/src/Rules/PHPUnit/AssertSameWithCountRule.php

File

vendor/phpstan/phpstan-phpunit/src/Rules/PHPUnit/AssertRuleHelper.php, line 17

Class

AssertRuleHelper

Namespace

PHPStan\Rules\PHPUnit

Code

public static function isMethodOrStaticCallOnAssert(Node $node, Scope $scope) : bool {
    if ($node instanceof Node\Expr\MethodCall) {
        $calledOnType = $scope->getType($node->var);
    }
    elseif ($node instanceof Node\Expr\StaticCall) {
        if ($node->class instanceof Node\Name) {
            $class = (string) $node->class;
            if ($scope->isInClass() && in_array(strtolower($class), [
                'self',
                'static',
                'parent',
            ], true)) {
                $calledOnType = new ObjectType($scope->getClassReflection()
                    ->getName());
            }
            else {
                $calledOnType = new ObjectType($class);
            }
        }
        else {
            $calledOnType = $scope->getType($node->class);
        }
    }
    else {
        return false;
    }
    $testCaseType = new ObjectType('PHPUnit\\Framework\\Assert');
    return $testCaseType->isSuperTypeOf($calledOnType)
        ->yes();
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal