class_docstr: Test the forward parallax function with various inputs.
docstr: Test that exception is raised if satellites exactly at the horizon.
  
  Test the rather unlikely case of a satellite elevation of exactly 0
docstr_tok: ["Test","that","exception","is","raised","if","satellites","exactly","at","the","horizon",".","Test","the","rather","unlikely","case","of","a","satellite","elevation","of","exactly","0"]
code: def test_get_parallax_corrected_lonlats_horizon(self):
      """Test that exception is raised if satellites exactly at the horizon.
  
      Test the rather unlikely case of a satellite elevation of exactly 0
      """
      from satpy.modifiers.parallax import (
          get_parallax_corrected_lonlats,
      )
  
      sat_lat = sat_lon = lon = lat = 0.0
      height = 5000.0
      sat_alt = 30_000_000.0
      with unittest.mock.patch(
          "satpy.modifiers.parallax.get_observer_look"
      ) as smpg:
          smpg.return_value = (0, 0)
          with pytest.raises(NotImplementedError):
              get_parallax_corrected_lonlats(
                  sat_lon, sat_lat, sat_alt, lon, lat, height
              )
  
imports: import datetime
  import logging
  import math
  import os
  import unittest.mock
  import dask.array
  import dask.config
  import numpy
  import pyorbital.tlefile
  import pyresample.kd_tree
  import pytest
  import xarray
  from pyproj import Geod
  from pyresample import create_area_def
  import satpy.resample
  from satpy.tests.utils import xfail_skyfield_unstable_numpy2
  from satpy.writers import get_enhanced_image
label_desc: Use image node_id 6 for calling the TestForwardParallax obj's underlying member method code with example usage: obj.test_get_parallax_corrected_lonlats_horizon() without return types