Added some test cases. They have not been tested yet.