Skip to content
Snippets Groups Projects
Select Git revision
  • 342b216808395cf5c6a6c63bacd335ebceef74c1
  • main default protected
  • oleg-alexandrov-patch-1
  • radtan
  • 2.0
  • Kelvinrr-patch-1
  • acpaquette-patch-1
  • gxp_testing
  • 2.0.2
  • 2.0.1
  • 2.0.0
  • 1.7.0
  • 1.6.0
  • 1.5.2
  • 1.5.1
  • 1.5.0
  • 1.4.1
  • 1.4.0
  • 1.3.1
  • 1.3.0
  • 1.2.0
  • 1.1.1
  • 1.1.0
  • 1.0.0
24 results

UsgsAstroSarSensorModel.cpp

Blame
  • test_msl_drivers.py 2.47 KiB
    import numpy as np
    import unittest
    
    from ale.drivers.msl_drivers import MslMastcamPds3NaifSpiceDriver
    
    from conftest import get_image_label
    from unittest.mock import PropertyMock, patch
    
    class test_mastcam_pds_naif(unittest.TestCase):
        def setUp(self):
            label = get_image_label("1664MR0086340000802438C00_DRCL", "pds3")
            self.driver = MslMastcamPds3NaifSpiceDriver(label)
    
        def test_instrument_id(self):
            assert self.driver.instrument_id == "MSL_MASTCAM_RIGHT"
    
        def test_spacecraft_name(self):
            assert self.driver.spacecraft_name == "MARS SCIENCE LABORATORY"
    
        def test_exposure_duration(self):
            np.testing.assert_almost_equal(self.driver.exposure_duration, 0.0102)
    
        def test_cahvor_camera_dict(self):
            cahvor_camera_dict = self.driver.cahvor_camera_dict
            assert len(cahvor_camera_dict) == 4
            np.testing.assert_allclose(cahvor_camera_dict['C'], [6.831825e-01, 5.243722e-01, -1.955875e+00])
            np.testing.assert_allclose(cahvor_camera_dict['A'], [-3.655151e-01, 5.396012e-01, 7.584387e-01])
            np.testing.assert_allclose(cahvor_camera_dict['H'], [-1.156881e+04, -7.518712e+03, 6.618359e+02])
            np.testing.assert_allclose(cahvor_camera_dict['V'], [5.843885e+03, -8.213856e+03, 9.438374e+03])
    
        def test_sensor_frame_id(self):
            with patch('ale.drivers.msl_drivers.spice.bods2c', return_value=-76562) as bods2c:
                assert self.driver.sensor_frame_id == -76562
                bods2c.assert_called_with("MSL_SITE_62")
        
        def test_focal2pixel_lines(self):
            with patch('ale.drivers.msl_drivers.spice.bods2c', new_callable=PropertyMock, return_value=-76220) as bods2c, \
                 patch('ale.drivers.msl_drivers.spice.gdpool', new_callable=PropertyMock, return_value=[100]) as gdpool:
                np.testing.assert_allclose(self.driver.focal2pixel_lines, [0, 137.96844341513602, 0])
                bods2c.assert_called_with('MSL_MASTCAM_RIGHT')
                gdpool.assert_called_with('INS-76220_FOCAL_LENGTH', 0, 1)
    
        def test_focal2pixel_samples(self):
            with patch('ale.drivers.msl_drivers.spice.bods2c', new_callable=PropertyMock, return_value=-76220) as bods2c, \
                 patch('ale.drivers.msl_drivers.spice.gdpool', new_callable=PropertyMock, return_value=[100]) as gdpool:
                np.testing.assert_allclose(self.driver.focal2pixel_samples, [137.96844341513602, 0, 0])
                bods2c.assert_called_with('MSL_MASTCAM_RIGHT')
                gdpool.assert_called_with('INS-76220_FOCAL_LENGTH', 0, 1)