Unverified Commit 9820ba9f authored by Amy Stamile's avatar Amy Stamile Committed by GitHub
Browse files

Updated Unit Test for OSIRIS-REx SamCam (#4378)

* Updated Unit Test for SamCam

* Addressed PR feedback
parent 936293c8
Loading
Loading
Loading
Loading
+39 −17
Original line number Diff line number Diff line
@@ -49,27 +49,49 @@ TEST_F(OsirisRexCube, PolyMath) {


TEST_F(OsirisRexCube, MappingCam) {
  setInstrument("-64361", "PolyCam");
  setInstrument("-64361", "MapCam");

  OsirisRexOcamsCamera *cam = (OsirisRexOcamsCamera *)testCube->camera();;
  OsirisRexOcamsCamera *cam = (OsirisRexOcamsCamera *)testCube->camera();
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->spacecraftNameLong(), "OSIRIS-REx");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->spacecraftNameShort(), "OSIRIS-REx");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->instrumentNameLong(), "Mapping Camera");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->instrumentNameShort(), "MapCam");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->instrumentId(), "PolyCam");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->instrumentId(), "MapCam");
}


TEST_F(OsirisRexCube, SamplingCam) {
  setInstrument("-64362", "PolyCam");
  setInstrument("-64362", "SamCam");

  OsirisRexOcamsCamera *cam = (OsirisRexOcamsCamera *)testCube->camera();

  EXPECT_EQ(cam->instrumentRotation()->Frame(), -27002);

  // Test kernel IDs
  EXPECT_EQ(cam->CkFrameId(), -64000);
  EXPECT_EQ(cam->CkReferenceId(), 1);
  EXPECT_EQ(cam->SpkTargetId(), -64);
  EXPECT_EQ(cam->SpkReferenceId(), 1);

  OsirisRexOcamsCamera *cam = (OsirisRexOcamsCamera *)testCube->camera();;
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->spacecraftNameLong(), "OSIRIS-REx");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->spacecraftNameShort(), "OSIRIS-REx");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->instrumentNameLong(), "Sampling Camera");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->instrumentNameShort(), "SamCam");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->instrumentId(), "PolyCam");
  EXPECT_PRED_FORMAT2(AssertQStringsEqual, cam->instrumentId(), "SamCam");

  const PvlGroup &inst = testCube->label()->findGroup("Instrument", Pvl::Traverse);
  double exposureDuration = ((double) inst["ExposureDuration"])/1000;
  cam->SetImage (0.5, 0.5);
  double et = cam->time().Et();
  pair <iTime, iTime> shuttertimes = cam->ShutterOpenCloseTimes(et, exposureDuration);
  EXPECT_NEAR(shuttertimes.first.Et(), 502476937.73296136, 1e-14);
  EXPECT_NEAR(shuttertimes.second.Et(), 502476937.83296138, 1e-14);

}
  EXPECT_TRUE(cam->SetImage(5, 5));
  EXPECT_NEAR(cam->UniversalLatitude(), 9.26486, 0.0001);
  EXPECT_NEAR(cam->UniversalLongitude(), 276.167, 0.0001);

  EXPECT_TRUE(cam->SetUniversalGround(cam->UniversalLatitude(), cam->UniversalLongitude()));
  EXPECT_NEAR(cam->Line(), 5, 0.01);
  EXPECT_NEAR(cam->Sample(), 5, 0.01);
}