code: def test_run_without_schema(self, mock_graph_database):
      connection = Connection(
          conn_type="neo4j",
          login="login",
          password="password",
          host="host",
          schema=None,
      )
      mock_sql = mock.MagicMock(name="sql")
  
      # Use the environment variable mocking to test saving the configuration as a URI and
      # to avoid mocking Airflow models class
      with mock.patch.dict(
          "os.environ", AIRFLOW_CONN_NEO4J_DEFAULT=connection.get_uri()
      ):
          neo4j_hook = Neo4jHook()
          op_result = neo4j_hook.run(mock_sql)
          mock_graph_database.assert_has_calls(
              [
                  mock.call.driver(
                      "bolt://host:7687",
                      auth=("login", "password"),
                      encrypted=False,
                  ),
                  mock.call.driver().session(),
                  mock.call.driver().session().__enter__(),
                  mock.call.driver()
                  .session()
                  .__enter__()
                  .run(mock_sql),
                  mock.call.driver().session().__enter__().run().data(),
                  mock.call.driver()
                  .session()
                  .__exit__(None, None, None),
              ]
          )
          session = (
              mock_graph_database.driver.return_value.session.return_value.__enter__.return_value
          )
          assert op_result == session.run.return_value.data.return_value
  
file_path: airflow/tests/providers/neo4j/hooks/test_neo4j.py
imports: from __future__ import annotations
  from unittest import mock
  import pytest
  from airflow.models import Connection
  from airflow.providers.neo4j.hooks.neo4j import Neo4jHook
label_desc: Use image node_id 3 for calling the TestNeo4jHookConn obj's underlying member method code with example usage: obj.test_run_without_schema(mock_graph_database) without return types