added unit test for gradient descent