code: def test_nested_condition():
      left = ast.BinNumExpr(
          ast.IfExpr(
              ast.CompExpr(
                  ast.NumVal(1), ast.NumVal(1), ast.CompOpType.EQ
              ),
              ast.NumVal(1),
              ast.NumVal(2),
          ),
          ast.NumVal(2),
          ast.BinNumOpType.ADD,
      )
      bool_test = ast.CompExpr(ast.NumVal(1), left, ast.CompOpType.EQ)
      expr_nested = ast.IfExpr(
          bool_test, ast.FeatureRef(2), ast.NumVal(2)
      )
      expr = ast.IfExpr(bool_test, expr_nested, ast.NumVal(2))
  
      expected_code = """
  module Model where
  score :: [Double] -> Double
  score input =
      func1
      where
          func0 =
              if 1.0 == 1.0 then
                  1.0
              else
                  2.0
          func1 =
              if 1.0 == func0 + 2.0 then
                  if 1.0 == func0 + 2.0 then
                      input !! 2
                  else
                      2.0
              else
                  2.0
  """
  
      interpreter = HaskellInterpreter()
      assert_code_equal(interpreter.interpret(expr), expected_code)
  
imports: from itertools import product
  import pytest
  from m2cgen import ast
  from m2cgen.interpreters import HaskellInterpreter
  from tests.utils import assert_code_equal
label_desc: Use image node_id 5 for calling a global function with example usage: test_nested_condition() without return types