code: def test_eval_partial_derivative_expr_by_symbol():
      tau, alpha = symbols("tau alpha")
  
      expr1 = PartialDerivative(tau**alpha, tau)
      assert (
          expr1._perform_derivative() == alpha * 1 / tau * tau**alpha
      )
  
      expr2 = PartialDerivative(2 * tau + 3 * tau**4, tau)
      assert expr2._perform_derivative() == 2 + 12 * tau**3
  
      expr3 = PartialDerivative(2 * tau + 3 * tau**4, alpha)
      assert expr3._perform_derivative() == 0
  
imports: from sympy import sin, cos
  from sympy.testing.pytest import raises
  from sympy.tensor.toperators import PartialDerivative
  from sympy.tensor.tensor import TensorIndexType, tensor_indices, TensorHead, tensor_heads
  from sympy.core.numbers import Rational
  from sympy.core.symbol import symbols
  from sympy.matrices.dense import diag
  from sympy.tensor.array import Array
  from sympy.core.random import randint
label_desc: Use image node_id 8 for calling a global function with example usage: test_eval_partial_derivative_expr_by_symbol() without return types