code: def test_bin_vector_expr():
      expr = ast.BinVectorExpr(
          ast.VectorVal([ast.NumVal(1), ast.NumVal(2)]),
          ast.VectorVal([ast.NumVal(3), ast.NumVal(4)]),
          ast.BinNumOpType.ADD,
      )
  
      expected_code = """
  function Score([double[]] $InputVector) {
      return Add-Vectors $(@($(1.0), $(2.0))) $(@($(3.0), $(4.0)))
  }
  function Add-Vectors([double[]] $v1, [double[]] $v2) {
      [int] $length = $v1.Length
      [double[]] $result = @(0) * $length
      for ([int] $i = 0; $i -lt $length; ++$i) {
          $result[$i] = $v1[$i] + $v2[$i]
      }
      return $result
  }
  function Mul-Vector-Number([double[]] $v1, [double] $num) {
      [int] $length = $v1.Length
      [double[]] $result = @(0) * $length
      for ([int] $i = 0; $i -lt $length; ++$i) {
          $result[$i] = $v1[$i] * $num
      }
      return $result
  }
  """
  
      interpreter = PowershellInterpreter()
      assert_code_equal(interpreter.interpret(expr), expected_code)
  
imports: from itertools import product
  import pytest
  from m2cgen import ast
  from m2cgen.interpreters import PowershellInterpreter
  from tests.utils import assert_code_equal
label_desc: Use image node_id 8 for calling a global function with example usage: test_bin_vector_expr() without return types