#1: Bugfix; Now checking both formal parameter type and argument local type
#2: Added more assertions into test case