code: def test_dependable_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,
      )
      right = ast.BinNumExpr(
          ast.NumVal(1), ast.NumVal(2), ast.BinNumOpType.DIV
      )
      bool_test = ast.CompExpr(left, right, ast.CompOpType.GTE)
      expr = ast.IfExpr(bool_test, ast.NumVal(1), ast.FeatureRef(0))
  
      expected_code = """
  defmodule Model do
      @compile {:inline, read: 2}
      defp read(bin, pos) do
          <<_::size(pos)-unit(64)-binary, value::float, _::binary>> = bin
          value
      end
      defp list_to_binary(list) do
          for i <- list, into: <<>>, do: <<i::float>>
      end
      def score(input) do
          input = list_to_binary(input)
          func0 = fn ->
              cond do 1.0 == 1.0 ->
                  1.0
              true ->
                  2.0
              end
          end
          func1 = fn ->
              cond do func0.() + 2.0 >= 1.0 / 2.0 ->
                  1.0
              true ->
                  read(input,0)
              end
          end
          func1.()
      end
  end
  """
  
      interpreter = ElixirInterpreter()
      assert_code_equal(interpreter.interpret(expr), expected_code)
  
imports: from itertools import product
  import pytest
  from m2cgen import ast
  from m2cgen.interpreters import ElixirInterpreter
  from tests.utils import assert_code_equal
label_desc: Use image node_id 4 for calling a global function with example usage: test_dependable_condition() without return types