'Test the hyperbolic functions
which are: sinh, cosh, tanh, sech, csch, coth'

def test_hyperbolic_functions(self):

    inputs = ['0', '0.5', '1', '2', '1+j']
    neg_inputs = ['0', '-0.5', '-1', '-2', '-1-j']
    negate = (lambda x: [(- k) for k in x])
    sinh_vals = [0, 0.521, 1.175, 3.627, (0.635 + 1.298j)]
    self.assert_function_values('sinh', inputs, sinh_vals)
    self.assert_function_values('sinh', neg_inputs, negate(sinh_vals))
    cosh_vals = [1, 1.128, 1.543, 3.762, (0.834 + 0.989j)]
    self.assert_function_values('cosh', inputs, cosh_vals)
    self.assert_function_values('cosh', neg_inputs, cosh_vals)
    tanh_vals = [0, 0.462, 0.762, 0.964, (1.084 + 0.272j)]
    self.assert_function_values('tanh', inputs, tanh_vals)
    self.assert_function_values('tanh', neg_inputs, negate(tanh_vals))
    sech_vals = [1, 0.887, 0.648, 0.266, (0.498 - 0.591j)]
    self.assert_function_values('sech', inputs, sech_vals)
    self.assert_function_values('sech', neg_inputs, sech_vals)
    inputs = inputs[1:]
    neg_inputs = neg_inputs[1:]
    csch_vals = [1.919, 0.851, 0.276, (0.304 - 0.622j)]
    self.assert_function_values('csch', inputs, csch_vals)
    self.assert_function_values('csch', neg_inputs, negate(csch_vals))
    coth_vals = [2.164, 1.313, 1.037, (0.868 - 0.218j)]
    self.assert_function_values('coth', inputs, coth_vals)
    self.assert_function_values('coth', neg_inputs, negate(coth_vals))
