def test_piecewise_methods(self): for trait in ['HazardRate', 'DefaultDensity', 'SurvivalProbability']: for interpolator in ['Linear', 'LogLinear', 'BackwardFlat']: curve = PiecewiseDefaultCurve( trait, interpolator, reference_date=self.todays_date, helpers=[self.helper], daycounter=Actual365Fixed() ) if interpolator == "LogLinear" and trait in ["HazardRate", "DefaultDensity"]: with self.assertRaisesRegexp(RuntimeError, 'LogInterpolation primitive not implemented'): curve.survival_probability(self.d) else: self.assertEqual(curve.survival_probability(self.d), curve.survival_probability(curve.time_from_reference(self.d))) self.assertEqual(curve.hazard_rate(self.d), curve.hazard_rate(curve.time_from_reference(self.d)))