Add pos negative checking
Update test cases